自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(35)
  • 收藏
  • 关注

原创 如何使java中double类型不以科学计数法表示

import java.text.DecimalFormat double a = 2.3659874; //小数格式化,引号中的0.000表示保留小数点后三位(第四位四舍五入) DecimalFormat df = new DecimalFormat("0.000"); String num = df.format(a); System.out.println(num); ...

2012-11-02 16:48:48 195

原创 poi-excel总结

一、 POI简介 Apache POI是Apache软件基金会的开放源码函式库,POI提供API给Java程序对Microsoft Office格式档案读和写的功能。二、 HSSF概况 HSSF 是Horrible SpreadSheet Format的缩写,通过HSSF,你可以用纯Java代码来读取、写入、修改Excel文件。H...

2012-09-20 10:14:29 119

原创 获取Java项目根目录

获取Java项目根目录(转载)

2012-09-13 14:35:53 139

原创 java中queue的使用

Queue接口与List、Set同一级别,都是继承了Collection接口。LinkedList实现了Queue接口。Queue接口窄化了对LinkedList的方法的访问权限(即在方法中的参数类型如果是Queue时,就完全只能访问Queue接口所定义的方法了,而不能直接访问 LinkedList的非Queue的方法),以使得只有恰当的方法才可以使用。BlockingQueue 继承了Queue...

2012-08-27 10:00:01 81

原创 Hashtable和HashMap有什么区别

1.Hashtable和HashMap有什么区别? a.Hashtable是继承自陈旧的Dictionary类的,HashMap继承自AbstractMap类同时是Java 1.2引进的Map接口的一个实现。 b.也许最重要的不同是Hashtable的方法是同步的,而HashMap的方法不是。这就意味着,虽然你可以不用采取任何特殊的行为就可以在一个 多线程的应用程序...

2012-08-27 09:51:55 62

原创 JAVA的23种设计模式

工厂模式, 工厂方法模式,单例模式, 外观(Facade)模式, 观察者(Observer)模式,桥接(Bridge)模式都是比较常用的,不同的项目有不同的设计方向,可以参考的设计模式也不尽相同,没有定数,只是上面这几个模式用的比较多一些。其他的模式我找了一下,都列出来了。======================Java常用的设计模式创建型模式 ...

2012-08-27 09:51:21 66

原创 Isolation Level(Spring事务5种隔离等级):

Isolation Level(Spring事务隔离等级): 在Spring中定义了5中不同的事务隔离级别。1. ISOLATION_DEFAULT(一般情况下使用这种配置既可)这是一个PlatfromTransactionManager默认的隔离级别,使用数据库默认的事务隔离级别。2. ISOLATION_READ_UNCOMMITTED这是事...

2012-08-27 09:50:11 354

原创 JAVA反射机制

反射其实就是程序能够自检查自身信息。就像程序会照镜子反光看自己。在程序中可以检查某个类中的方法属性等信息,并且能够动态调用。这样可以写出很灵活的程序。比如要把一个对象中的数据copy到另外一个对象中,规则是属性名相同就copy,就可以用反射来做,不需要指定每个属性的名字,只要动态从类中取得信息,再判断属性名是否相同即可。当然应用还有很多。反射可以结合Java的字节码...

2012-08-24 10:55:13 68

原创 ArrayList、Vector、LinkedList的区别及其优缺点?

ArrayList,LinkedList,Vestor这三个类都实现了java.util.List接口,但它们有各自不同的特性,主要如下: 一、同步性 ArrayList,LinkedList是不同步的,而Vestor是同步的。所以如果不要求线程安全的话,可以使用ArrayList或LinkedList,可以节省为同步而耗费的开销。但在多线程的情况下,有时候就不得不使用Vector...

2012-08-24 10:53:53 95

原创 java 接口 实现和继承关系

一。抽象类 有时候,我们可能想要构造一个很抽象的父类对象,它可能仅仅代表一个分类或抽象概念,它的实例没有任何意义,因此不希望它能被实例化。例如:有一个父类“ 水果(Fruit)”,它有几个子类“苹果(Apple)”、“橘子(Orange)”、“香蕉(Banana)”等。水果在这里仅仅只是作为一个分类, 显然水果的实例没有什么意义(就好像一个人如果告诉你他买了一些水果但是却不告诉你是苹果还是...

2012-08-24 00:50:14 99

原创 设计模式---代理模式

[code="java"]/** * @author Rollen-Holt 设计模式之 代理模式 */ interface NetWork{ public abstract void browser();} /** * Real 类代表用户上网的实际动作,比如查看网页 * */class Real implements NetWork{ ...

2012-08-24 00:09:38 56

原创 多线程sleep,yield,wait区别

[color=red][b]sleep()[/b][/color] 1) sleep ()函数有一个参数,通过参数可使线程在指定的时间内进入停滞状态,当指定的时间过后,线程则自动进入可执行状态。 2) 当调用sleep ()函数后,线程不会释放它的“锁标志”。 [code="java"]class TestThreadMethod extends Thread{ ...

2012-08-24 00:04:17 74

原创 Thread的setDaemon(true)方法的作用

定义:守护线程--也称“服务线程”,在没有用户线程可服务时会自动离开。优先级:守护线程的优先级比较低,用于为系统中的其它对象和线程提供服务。 设置:通过setDaemon(true)来设置线程为“守护线程”;将一个用户线程设置为守护线程的方式是在 线程对象创建 之前 用线程对象的setDaemon方法。 example: 垃圾回收线程就是一个经典的守护线程,当我们的程序中不再有任何...

2012-08-23 23:34:42 196

原创 java多线程总结

在java中要想实现多线程,有两种手段,一种是继续Thread类,另外一种是实现Runable接口。 对于直接继承Thread的类来说,代码大致框架是:[code="java"]class 类名 extends Thread{方法1;方法2;…public void run(){// other code…}属性1;...

2012-08-23 23:13:08 57

原创 InterruptedException的解读

最近写了些多线程的程序,用Thread.sleep()的时候有时会碰到InterruptedException。查了一些资料,下面是我自己的一些理解。阻塞方法一些多线程相关的方法是阻塞方法,比如Thread.sleep(), Thread.wait(), Thread.join()。这些方法的执行通常需要比较长的时间来完成,当代码执行到阻塞方法时,一般要等待该方法返回后...

2012-08-23 22:06:22 240

原创 JAVA 中的IO流

JAVA 中的IO流 [b]一、流的概念[/b] 流(stream)的概念源于UNIX中管道(pipe)的概念。在UNIX中,管道是一条不间断的字节流,用来实现程序或进程间的通信,或读写外围设备、外部文件等。 一个流,必有源端和目的端,它们可以是计算机内存的某些区域,也可以是磁盘文件,甚至可以是Internet上的某个URL。 流的...

2012-08-23 21:40:12 50

原创 Java创建线程的两个方法

Java提供了线程类Thread来创建多线程的程序。其实,创建线程与创建普通的类的对象的操作是一样的,而线程就是Thread类或其子类的实例对象。每个Thread对象描述了一个单独的线程。要产生一个线程,有两种方法: ◆需要从Java.lang.Thread类派生一个新的线程类,重载它的run()方法; ◆实现Runnalbe接口,重载Runnalbe接口中的run()方法。为...

2012-08-14 16:53:50 78

原创 java web部署 启动线程 (监听socket等)

很简单…… 多写一个Servlet,在init函数中启动对应的线程。 把这个Servlet加到web.xml中,例如 EchoServiceStartUpServlet EchoService.EchoServiceStartUpServlet 3 注意load-on-startup。 ...

2012-08-01 10:01:50 143

原创 struts2的@Result annotation 如何添加params

在原来的webwork式的xml配置文件里可以给下的节点添加一些额外的参数。 ...那换成@Result annotation之后要怎么做呢。看@Result的源代码发现有个params的String数组@Retention(RetentionPolicy.RUNTIME)public @interface Result { String name() defa...

2012-07-19 14:17:12 104

原创 Java 创建文件、文件夹以及临时文件

[code="java"]package Test; import java.io.File; import java.io.IOException; public class CreateFileTest { /** * 创建单个文件 * @param destFileName 文件名 * @return 创建成功返回true,否则...

2012-07-17 16:09:40 241

原创 HTTP Cookie

[size=large][b]分类[/b][/size] Cookie总是保存在客户端中,按在客户端中的存储位置,可分为内存Cookie和硬盘Cookie。 内存Cookie由浏览器维护,保存在内存中,浏览器关闭后就消失了,其存在时间是短暂的。硬盘Cookie保存在硬盘里,有一个过期时间,除非用户手工清理或到了过期时间,硬盘Cookie不会被删除,其存在时间是长期的。所以,按存在时...

2012-07-11 11:30:55 58

原创 @ExceptionMapping

用来配置action出现异常时的跳转路径。该注解同样可以使用params属性配置要传入的参数。该注解可以配置在Action级别和Method级别,配置在Action级别对所有的Method都适用;配置在Method级别只对当前的Method使用。示例代码如下: 在Action上配置ExceptionMapping Annotation:[code="java"]@Exception...

2012-07-10 10:04:06 144

原创 @InterceptorRefs

需要引入org.apache.struts2.convention.annotation.InterceptorRefs,配合@InterceptorRef使用,通过它定义一些拦截器。参考样例如下:[code="java"]UserAction.java [color=red]方式一,定义在方法上面[/color]public class UserAction extends Ba...

2012-07-10 09:56:24 362

原创 @Results

需要引入org.apache.struts2.convention.annotation.Results,结合@Result使用,定义一些映射路径。定义某方法的局部映射路径,参考样例如下:[code="java"]@Namespace("/security") public class UserAction extends BaseAction { @Action(value...

2012-07-10 09:51:17 178

原创 @Action

为方法起一个别名,参考样例如下:[code="java"]@Namespace("/security")public class UserAction extends BaseAction {@Action("otherName")public String input() throws Exception { ...... }[/code]原来的调用方...

2012-07-10 09:49:11 105

原创 @Namespace

需要引入org.apache.struts2.convention.annotation.Namespace,定义该action的命名空间,也就是访问路径。

2012-07-10 09:48:25 141

原创 hibernate FetchType

JPA定义实体之间的关系有如下几种: @OneToOne @ManyToOne @OneToMany @ManyToMany 在定义它们的时候可以通过fetch属性指定加载方式,有两个值: FetchType.LAZY:延迟加载 FetchType.EAGER:急加载 急加载就好理解了,在加载一个实体的时候,其中定义是急加载的的属性(property)和字段(fie...

2012-07-05 16:29:07 76

原创 Spring @Transactional 事务7种传播方式

Spring事务的传播行为 在service类前加上@Transactional,声明这个service所有方法需要事务管理。每一个业务方法开始时都会打开一个事务。 Spring默认情况下会对运行期例外(RunTimeException)进行事务回滚。这个例外是unchecked 如果遇到checked意外就不回滚。 如何改变默认规则: 1 让checked...

2012-07-05 16:28:52 1084

原创 关于hiberante FetchMode

以Person, Address 为例, 其关系为一对多,数据库中有3条person, 每个分别对应2条address。查询语句如下: Java代码 [code="java"]1.Criteria c = session.createCriteria(Person.class); 2.c.setResultTransformer(Criteria.DISTINCT_...

2012-07-05 16:28:24 84

原创 @Transient

@Transient 需要引入javax.persistence.Transient,表示该属性不会被持久化(即该属性无相应的数据库字段与其对应)。

2012-07-05 16:28:04 72

原创 @ManyToMany

维护端注解 @ManyToMany (cascade = CascadeType.REFRESH) @JoinTable (//关联表 name = "student_teacher" , //关联表名 inverseJoinColumns = @JoinColumn (name = ...

2012-07-04 17:14:19 120

原创 CascadeType

该属性定义类和类之间的级联关系。定义的级联关系将被容器视为对当前类对象及其关联类对象采取相同的操作,而且这种关系是递归调用的。举个例子:Book和BookExtend有级联关系,那么删除Book时将同时删除它所对应的BookExtend对象。而如果BookExtend还和其他的对象之间有级联关系,那么这样的操作会一直递归执行下去。cascade的值只能从CascadeType.PERSIS...

2012-07-04 17:10:17 83

原创 @NotFound

需要引入org.hibernate.annotations.NotFound,当预期的被关联的元素不在数据库(关乎关联列的错误id)时,致使Hibernate无法解决关联性问题时,Hibernate就会抛出异常,使用@ NotFound可以让Hibernate忽略这样的元素而不抛出异常。该注解用于@OneToMany、@OneToOne、@ManyToOne或@ManyToMany等关联,且该注解...

2012-07-04 17:05:56 328

原创 @Column

@Column(name = 可选,列名(默认值为属性名)。unique = 可选,是否在该列上设置唯一约束(默认false)。 nullable = 可选,是否设置该列的值可以为空(默认true)。insertable = 可选,该列是否作为生成的insert语句中的一列(默认true)。 updateable = 可选,该列是否作为生成的update语句中的一列(默认tru...

2012-07-04 17:03:37 92

原创 @Cache

从hibernate2.1开始ehcache已经作为hibernate的默认缓存方案(二级缓存方案 sessionfactory级别), 在项目中有针对性的使用缓存将对性能的提升右很大的帮助。   要使用 Ehcache:需要一下步骤   一,classpath添加相应的jar(ehcache,commons-logging)   二,然后在hibernate.cfg.xm...

2012-07-04 17:00:09 93

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除