字符串的java util日期值
这是EJB中用于添加预订的一种方法,我试图将字符串Arr的值设置为a,因为Arr是一个字符串,它在Servlet中获取表单值,我想对字符串Dept的值d执行相同的操作。我使用的是字符串的java util日期值,java,date,java.util.date,Java,Date,Java.util.date,这是EJB中用于添加预订的一种方法,我试图将字符串Arr的值设置为a,因为Arr是一个字符串,它在Servlet中获取表单值,我想对字符串Dept的值d执行相同的操作。我使用的是java.util.Date,它适用于java.sql.Date,但不适用于java.util.Date public void addBooking(String Arr, String Dept, String username, String roomnum){ BookingTableClass boo
java.util.Date
,它适用于java.sql.Date
,但不适用于java.util.Date
public void addBooking(String Arr, String Dept, String username, String roomnum){
BookingTableClass booking = new BookingTableClass();
Date a= Date.valueOf(Arr);//the problem is in these four lines
booking.setarrivalDate(a);
Date d= Date.valueOf(Dept);
booking.setdeptDate(d);
booking.setCustomerUsername(username);
Long rmnum = Long.valueOf(roomnum);
booking.setRoomNumber(rmnum);}
您可以将java.util.Date转换为java.sql.Date对象,如下所示:
java.util.Date now = new java.util.Date();
java.sql.Date date = new java.sql.Date(now.getTime());
也就是说,您以毫秒为单位获取java.util.Date等效值,然后使用此值初始化java.sql.Date对象。可能您没有为日期类型使用正确的格式,您必须指定正在使用的格式,为此,请使用SimpleDataFormat类
SimpleDateFormat textFormat = new SimpleDateFormat("yyyy-MM-dd");
String paramDateAsString = "2007-12-25";
Date myDate = null;
myDate = textFormat.parse(paramDateAsString);
希望能有帮助。致以最诚挚的问候。您已经向我们展示了问题所在,但没有说明问题所在。你能解释一下吗?SimpleDataFormat格式化程序=新的SimpleDataFormat(“dd/mm/yyyy”);日期a=空;尝试{a=formatter.parse(Arr);}catch(ParseException e1){//TODO自动生成的catch块e1.printStackTrace();}booking.setarrivalDate(a);日期d=空;请尝试{d=formatter.parse(Dept);}catch(ParseException e1){//TODO自动生成的catch块e1.printStackTrace();}