- 浏览: 125012 次
- 来自: 上海
最新评论
文章列表
一、java虚拟机的生命周期:
Java虚拟机的生命周期 一个运行中的Java虚拟机有着一个清晰的任务:执行Java程序。程序开始执行时他才运行,程序结束时他就停止。你在同一台机器上运行三个程序,就会有三个运行中的Java虚拟机。 Java虚拟机总是开始于一个main()方法,这个方法必须是公有、返回void、直接受一个字符串数组。在程序执行时,你必须给Java虚拟机指明这个包换main()方法的类名。 Main()方法是程序的起点,他被执行的线程初始化为程序的初始线程。程序中其他的线程都由他来启动。Java中的线程分为两种:守护线程 (daemon)和普通线程(non-daemo ...
保证一个类仅有一个实例,并提供一个访问它的全局访问点。
要想控制一个类只被创建一个实例,那么首要的问题就是把创建实例的权限收回来,让类自己来负责创建自己类的实例,然后由这个类来提供外部可以访问这个类实例的方法,这就是单例模式的实现方法。
单例模式的结构和实现
单例模式的结构图
Singleton:负责创建Singleton类自己的唯一实例,并提供一个getInstance的方法,来外部来访问这个类的唯一实例。
私有化构造方法
提供静态的获取实例的方法
定义存储实例的属性,因为要在静态方法中使用,因此要加上static修饰
实现控制实例的创建
...
一,首先hibernate中对象的状态有三种:瞬态、游离态和持久态,三种状态转化的方法都是通过session来调用,瞬态到持久态的方法有save()、saveOrUpdate()、get()、load();持久态到瞬态的方法有delete();游离态到持久态的方法有update()、saveOrUpdate()、lock();持久态到游离态的方法有:session.close()、session.evict()、session.clear()。
二,Hibernate的状态
hibernate的各种保存方式的区(save,persist,update,saveOrUpdte,mer ...
浅谈Arrays.asList()方法的使用
首先,该方法是将数组转化为list。有以下几点需要注意:
(1)该方法不适用于基本数据类型(byte,short,int,long,float,double,boolean)
(2)该方法将数组与列表链接起来,当更新其 ...
作者:乌拉拉链接:https://www.zhihu.com/question/21104468/answer/58579295来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。1、开发对比开发速度
Hibernate的真正掌握要比Mybatis来得难些。Mybatis框架相对 ...
一、Spring基础知识及IOC_选择题
1. 下面关于spring描述错误的是:(C)
A Spring支持可插入的事务管理器,使事务划分更轻松,同时无需处理底层的问题。
B Spring事务管理的通用抽象层还包括JTA策略和一个JDBC DataSource。
C ...
一、Log4j配置
第一步:加入log4j-1.2.8.jar到lib下。
第二步:在CLASSPATH下建立log4j.properties。
第三步:相应的修改其中属性,修改之前就必须知道这些都是干什么的,在第二部分讲解。
第四步:在要输出日志的类中加入相关语句:
定义属性:protected final Log log = LogFactory.getLog(getClass());
在相应的方法中:
if (log.isDebugEnabled()){
log.debug(“System …..”);
}
eclipse 设置代码格式化样式
- 博客分类:
- java开发工具
打开Eclipse 。找到window---->perferences
找到。java---->code style-->formatter
然后找到 右上角edit点击进入。
在braces中,修改所有的nextline 。最后下面打个勾
Oracle trunc()函数的用法
1.TRUNC(for dates)
TRUNC函数为指定元素而截去的日期值。
其具体的语法格式如下:
TRUNC(date[,fmt])
其中:
date 一个日期值
fmt 日期格式,该日期将由指定的元素格式所截 ...
var starttime = $('#txtStorageTimeStart').val();
var endtime = $('#txtStorageTimeEnd').val();
var start = new Date(starttime.replace("-", "/").replace("-", "/"));
var end = new Date(endtime.replace("-", "/&qu ...
这篇文章主要介绍了jquery获取复选框被选中的值的方法,需要的朋友可以参考下
复制代码 代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <hea ...
ActiveMQ持久化
- 博客分类:
- java-up
一.MQ基本操作
MQ中有几个很重要的组件:队列管理器(QueueManager)、队列(Queue)和通道(Channel)。其基本的操作方法如下:
创建队列管理器crtmqm -q QMgrName-q是指创建缺省的队列管理器
删除队列管理器dltmqm QmgrName
启动队列管理器strmqm QmgrName如果是启动默认的队列管理器,可以不带其名字
停止队列管理器endmqm QmgrName 受控停止
endmqm -i QmgrName 立即停止
endmqm -p QmgrName 强制停止
显示队列管理器ds ...
java_集合体系之Map体系总结(二)
- 博客分类:
- java-up
3.3、 LinkedHashMap
3.31 LinkedHashMap特点:
Map接口的哈希表和链接列表实现,具有可预知的迭代顺序。此链接列表定义了迭代顺序(即存储的顺序与输出的顺序相同),该迭代顺序通常就是将键插入到映射中的顺序(插入顺序)。此实现不是同步的
注意:
①当key为String或基本数据类型包装类,键相同自动替换旧值为新值 (因为他们已重写了hashCode与equals方法) ②当key为自定义对象,需让其重写hashCode与equals方法才能保证key的唯一性
3.32 LinkedHashMap使用示例
public class Link ...
Mybatis增强型注解简化SQL语句
- 博客分类:
- java框架
1. 背景
MyBatis提供了简单的Java注解,使得我们可以不配置XML格式的Mapper文件,也能方便的编写简单的数据库操作代码:
public interface UserMapper {
@Select("SELECT * FROM users WHERE id = #{userId}")
User getUser(@Param("userId") String userId);
}
1
2
3
4
但是注解对动态SQL的支持一直差强人意,即使MyBatis提供了InsertProvider等*Provider注 ...
曾经在做开发的过程中,编写了如下一段代码:
map.put("dbradius","C:/temp/dbradiusx_script.xml");
map.put("radius","C:/temp/radius_script.xml");
/*
* 保证脚本可用
*/
public boolean isUsable(){
Iterator<String> iterator = map.keySet().iterator();
while(iterator. ...