JAVA里面如何将字符串日期插入到MYSQL数据库 java中怎样将字符串转换成日期形式存入数据库
java\u600e\u6837\u5c06\u5b57\u7b26\u578b\u7684\u65e5\u671f\u8f6c\u4e3a\u65e5\u671f\u578b\u63d2\u5165\u5230\u6570\u636e\u5e93\u4e2d//yyyy-MM-dd hh:mm:ss
public static Date dateTimeString2Date(String date_str) {
try {
Calendar cal = Calendar.getInstance();
java.sql.Timestamp timestampnow = new java.sql.Timestamp(cal.getTimeInMillis());
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
ParsePosition pos = new ParsePosition(0);
java.util.Date current = formatter.parse(date_str, pos);
timestampnow = new java.sql.Timestamp(current.getTime());
return timestampnow;
}
catch (NullPointerException e) {
return null;
}
}
//\u683c\u5f0f\u4ee5\u4e0a\u9762\u4e0d\u4e00\u6837yyyy-MM-dd
public static Date dateString2Date(String date_str) {
try {
Calendar cal = Calendar.getInstance();
java.sql.Timestamp timestampnow = new java.sql.Timestamp(cal.getTimeInMillis());
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
ParsePosition pos = new ParsePosition(0);
java.util.Date current = formatter.parse(date_str, pos);
return current;
}
catch (NullPointerException e) {
return null;
}
}
\u81f3\u4e8e\u63d2\u5165\u6570\u636e\u5e93\uff0c\u53ef\u4ee5\u7528java.sql.PreparedStatement;
java\u5c06\u5b57\u7b26\u4e32\u8f6c\u6362\u6210\u65e5\u671f\uff0c\u53ef\u4ee5\u4f7f\u7528\u683c\u5f0f\u7c7b\uff0c\u5b9e\u4f8b\u5982\u4e0b\uff1a
public static Date dateTimeString2Date(String date_str) { try { Calendar cal = Calendar.getInstance();//\u65e5\u671f\u7c7b java.sql.Timestamp timestampnow = new java.sql.Timestamp(cal.getTimeInMillis());//\u8f6c\u6362\u6210\u6b63\u5e38\u7684\u65e5\u671f\u683c\u5f0f SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); ParsePosition pos = new ParsePosition(0); java.util.Date current = formatter.parse(date_str, pos); timestampnow = new java.sql.Timestamp(current.getTime()); return timestampnow; } catch (NullPointerException e) { return null; } }
这样改
new SimpleDateFormat("yyyy-MM-dd").parse(user.getBirthday())
就可以转了,
注意:user.getBirthday()的格式必须是"1987-11-22"这种格式的,就是要跟指定的yyyy-MM-dd格式匹配,当然也可以指定yyyyMMdd对应的格式就是19871122了,这些看一些API跟着写几个例子试试就会了
不过转化得到的是java.util.Date,
而pstam.setDate()中需要的是java.sql.Date,可以这样转化
java.util.Date date = new SimpleDateFormat("yyyy-MM-dd").parse(user.getBirthday());
new java.sql.Date(date.getTime())这样就可以转化了,而不是像你程序那样强转
这样是可以的。不知道你说的好像不行,到底是哪不行。
绛旓細闇瑕佸厛鎸囧畾鏃ユ湡鐨勬牸寮 杩欐牱鏀 new SimpleDateFormat("yyyy-MM-dd").parse(user.getBirthday())灏卞彲浠ヨ浆浜锛屾敞鎰忥細user.getBirthday()鐨勬牸寮忓繀椤绘槸"1987-11-22"杩欑鏍煎紡鐨勶紝灏辨槸瑕佽窡鎸囧畾鐨剏yyy-MM-dd鏍煎紡鍖归厤锛屽綋鐒朵篃鍙互鎸囧畾yyyyMMdd瀵瑰簲鐨勬牸寮忓氨鏄19871122浜嗭紝杩欎簺鐪嬩竴浜汚PI璺熺潃鍐欏嚑涓緥瀛愯瘯璇曞氨浼氫簡...
绛旓細java灏嗗瓧绗︿覆杞崲鎴鏃ユ湡锛屽彲浠ヤ娇鐢ㄦ牸寮忕被锛屽疄渚嬪涓嬶細public static Date dateTimeString2Date(String date_str) { try { Calendar cal = Calendar.getInstance();//鏃ユ湡绫 java.sql.Timestamp timestampnow = new java.sql.Timestamp(cal.getTimeInMillis());//杞崲鎴愭甯哥殑鏃ユ湡鏍煎紡 Si...
绛旓細鏃ユ湡鏈変袱绉嶏紝 浣犺杩欑TimeStamp鎴戠敤杩囷紝 瑕佹牴鎹疄闄呴渶瑕侊紝 鏁版嵁搴撶殑TimeStamp绫诲瀷锛 鐢ㄤ簬璁板綍鏈鍚庢洿鏂版暟鎹殑鏃堕棿锛 涔熷氨鏄紝浣犱慨鏀逛竴娆¤褰曪紝 鏃堕棿鍙樹竴娆★紝鑰屽彟涓绉java.sql.Date 鍙槸瀛樻斁鎻掑叆鐨勬椂闂达紝javaee涓 鐪嬩綘鐢ㄤ笉鐢ㄦ鏋朵簡锛 鍩烘湰閮藉彧浼氳嚜鍔ㄨ浆鎹㈡爣鍑嗘牸寮弝yyy-mm-dd鐨勬棩鏈燂紝鍏朵粬鏍煎紡瑕...
绛旓細public static Date valueOf(String s)灏 JDBC 鏃ユ湡杞箟褰㈠紡鐨瀛楃涓杞崲鎴 Date 鍊笺傚弬鏁帮細s - 琛ㄧず "yyyy-mm-dd" 褰㈠紡鐨勬棩鏈熺殑 String 瀵硅薄 杩斿洖锛氳〃绀虹粰瀹氭棩鏈熺殑 java.sql.Date 瀵硅薄
绛旓細鍗犱綅绗 涓嶉渶瑕佸紩鍙 灏辩洿鎺ヤ竴涓棶鍙峰氨琛屼簡 鐒跺悗鐢 ps.setString(1,"2014-3-11 13:50:00")
绛旓細鏂规硶涓锛歱ublic static void main(String[] args) throws Exception{ Date date = new SimpleDateFormat("yyyy-MM-dd").parse("2005-06-09");String now = new SimpleDateFormat("yyyy骞碝M鏈坉d鏃").format(date);System.out.println(now);} 杈撳嚭缁撴灉锛2005骞06鏈09鏃 鏂规硶浜岋細public class ...
绛旓細);str渚夸細渚濈収鎴戜滑璁惧畾鐨勬牸寮忚緭鍑轰簡銆傜敤鐨凙PI鏄疭impleDateFormat锛屽畠鏄睘浜java.text.SimpleDateFormat锛屾墍浠ヨ璁板緱import杩涙潵锛佺敤娉曪細SimpleDateFormat sdf = new SimpleDateFormat( " yyyy-MM-dd HH:mm:ss " );杩欎竴琛屾渶閲嶈锛屽畠纭珛浜嗚浆鎹㈢殑鏍煎紡锛寉yyy鏄畬鏁寸殑鍏厓骞达紝MM鏄湀浠斤紝dd鏄鏃ユ湡銆
绛旓細java.text.SimpleDateFormat;SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");Date date=format.parse("2010-1-2");鍏跺疄锛屾暟鎹簱閲孌ate鐩存帴瀵瑰簲瀛楃涓閮借兘鍐欏叆銆侷NSERT INTO stu(id,date) VALUES(1,#2010-1-2#)
绛旓細SimpleDateFormat绫 鏈変釜parse鏂规硶 public Date parse(String text, ParsePosition pos)瑙f瀽瀛楃涓鐨勬枃鏈紝鐢熸垚 Date銆傛鏂规硶璇曞浘瑙f瀽浠 pos 缁欏畾鐨勭储寮曞寮濮嬬殑鏂囨湰銆傚鏋滆В鏋愭垚鍔燂紝鍒欏皢 pos 鐨勭储寮曟洿鏂颁负鎵鐢ㄦ渶鍚庝竴涓瓧绗﹀悗闈㈢殑绱㈠紩锛堜笉蹇呭鐩村埌瀛楃涓茬粨灏剧殑鎵鏈夊瓧绗﹁繘琛岃В鏋愶級锛屽苟杩斿洖瑙f瀽寰楀埌鐨鏃ユ湡銆傛洿...
绛旓細import java.time.Duration;import java.time.LocalTime;public class Test { private static final LocalTime START = LocalTime.of(0, 0, 0); public static void main(String[] args) throws Exception { LocalTime time = LocalTime.parse("21:53:00"); LocalTime augment = Lo...