日期:2014-05-16  浏览次数:20506 次

hibernate 中 对数据库中datetime类型的处理
hibernate 中 对数据库中datetime类型的处理
hibernate中对 数据库中datetime类型的处理(假设该字段为 birthdate)
??????????? 1.如果想插入数据库中的格式为 yyyy-mm-dd hh:mm:ss形式的话
??????????? 在.hbm.xml文件中将 birthdate定义为
??????????????? <property
???????????????? name="birthdate"
???????????????? column="birthdate"
???????????????? type="calendar"
???????????????? not-null="false"(默认值,可以改为true)
???????????????? length="7"集装箱运费
??????????????? />
??????????? 在对应的类文件(假设为User.java)中做如下定义
??????????????? private java.util.Calendar birthdate;
??????????? 在做数据库操作时(如果存放的为系统当前时间)
?????????????? User user = new User();//假设为映射对象
?????????????? user.setBirthdate(Calendar.getInstance());//存储系统当前时间
???????????????????? 注:如果是页面上输入的字符串,可先将字符串转化为java.util.Date类型,然后再转化为Calendar类型即可
???????????????????????????? SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd hh:mm:ss");
???????????????????????????? java.util.Date birthdate = df.parse(birthyear+'-'+birthmonth+'-'+birthday+' '+birthhour+'-'+birthminute+'-'+birthsecond);//用户页面中输入的日期时间字符串

      也可以 import java.util.date;
????????? ?
??? Calendar cal=Calendar.getInstance();
??????????????? cal.clear();//注:在使用set方法之前,必须先clear一下,否则很多信息会继承自系统当前时间
??????????????? cal.setTime(birthdate);

????????? ?
??? ps.setBirthdate(cal);

--------------------------------------------

??????????? 2.如果想在数据库中插入格式为日期格式 例如 yyyy-MM-dd
??????????? 在.hbm文件中将birthdate定义为
??????????????? <property
???????????????? name="birthdate"男生发型
???????????????? column="birthdate"
???????????????? type="date"
???????????????? not-null="false"(可省略)
???????????????? length="7"(可省略)
??????????????? />
??????????? 在对应的类文件中做如下定义
??????????????? private java.util.Date birthdate;
??????????? 在做数据库操作时(如果存放的为系统当前时间)
?????????????? User user = new User();//假设为映射对象
???????????????????????????? java.util.Date birthdate = new SimpleDateFormat("yyyy-MM-dd").parse(new java.util.Date());//不做此种转化也可以
???????????????     ps.setBirthdate(date);//存储系统当前日期
???????????????????? 注:如果是页面上输入的字符串,可先将字符串转化为java.util.Date类型即可
???????????????????????????? SimpleDateFormat df=new SimpleDateFormat("yyyy-MM-dd");
???????????????????????????? java.util.Date birthdate = df.parse("birthyear+'-'+birthmonth+'-'+birthday");//用户页面中输入的日期时间字符串
?   ?   ps.setBirthdate(birthdate);
Link: http://www.blogjava.net/javagrass/archive/2011/06/16/352399.html