Java 正在尝试使用Servlet设置字符串的最新格式
我从我的Jsp从一个输入中得到一个字符串Java 正在尝试使用Servlet设置字符串的最新格式,java,jsp,servlets,Java,Jsp,Servlets,我从我的Jsp从一个输入中得到一个字符串 <form method=POST action="ResultServlet"> Enter date <input type="datetime" name="StartEvent" > <input type="datetime" name="StopEvent" > <input ty
<form method=POST action="ResultServlet">
Enter date
<input type="datetime" name="StartEvent" >
<input type="datetime" name="StopEvent" >
<input type="submit" name="PostThis" value="Show" class="f-halfbutton">
当我打印字符串时,我得到了正确的格式,如2015-05-19 15:19:12
我想保持相同的格式,只需将其更改为date而不是string。
但在格式化之后,字符串或日期现在应该是这样的
2015年1月19日星期一15:19:12 CET
我试图在这里阅读解决方案,但似乎没有什么对我有效
我一直在阅读oracle的simpledateformatter,想知道用什么字母来获取数字,但似乎不起作用
有人对此有好的解决方案吗?在数据库中插入格式时,格式是不相关的。您只需要从字符串中获取正确的日期,然后将其插入数据库。从数据库中检索值时,您可以按自己喜欢的方式对其进行格式化 您可以使用以下内容:
String date = "your_date_formatted";
Date dt= new SimpleDateFormat("date_format").parse(date);
java.sql.Date sqlDate = new java.sql.Date(dt.getTime());
Connection con = ...;
PreparedStatement p = con.prepareStatement("insert into table(date_field) values(?))");
p.setDate(1, dt);
我尝试过不同的格式,即使是“yyyy-mm-dd hh:mm:ss”格式,但仍然是相同的输出Mon Jan 19 15:19:12 CET 2015格式并没有神奇地附加到日期变量。事实上,它几乎只包含自新纪元开始以来的毫秒数。如果要格式化,则需要另一个SimpleDataFormat实例来格式化日期。但是,如果您想将其插入数据库中,那么就只需要Date变量了。
String date = "your_date_formatted";
Date dt= new SimpleDateFormat("date_format").parse(date);
java.sql.Date sqlDate = new java.sql.Date(dt.getTime());
Connection con = ...;
PreparedStatement p = con.prepareStatement("insert into table(date_field) values(?))");
p.setDate(1, dt);