后台日期类型插入数据库 有以下几种发法:
1 调用数据库 日期字符串转日期函数 str_to_date("日期","yyyy-MM-dd HH:mm:ss")
2. INSERT INTO person (NAME,sex,DATE) VALUES ('${name}','${sex}',#{date ,javaType=java.util.Date,jdbcType=TIMESTAMP})
3 自定义类型转换器:(2,3方法里插值符号必须为 # 号)
泛型类型为Java-->jdbc set方法把Java-->jdbc get方法 jdbc -->java 数据库到Java 可以bean 日期属性加 @dateformat()注解 public class Myconvert extends BaseTypeHandler<Date> { public void setNonNullParameter(PreparedStatement preparedStatement, int i, Date date, JdbcType jdbcType) throws SQLException {
String d=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss").format(date);
preparedStatement.setString(i,d );
} public Date getNullableResult(ResultSet resultSet, String s) throws SQLException {
return resultSet.getDate(s);
} public Date getNullableResult(ResultSet resultSet, int i) throws SQLException {
String d=resultSet.getString(i);
try {
return (new SimpleDateFormat("yyyy-MM-dd HH:mm:ss")).parse(d);
} catch (ParseException e) {
e.printStackTrace();
}
return null;
} public Date getNullableResult(CallableStatement callableStatement, int i) throws SQLException {
return null;
}
} 自定义完 配置文件里注册
<typeHandlers>
<typeHandler handler="com.mybatis.convert.Myconvert" javaType="java.util.Date" jdbcType="TIMESTAMP"/>
</typeHandlers>
注册完使用
INSERT INTO person (NAME,sex,DATE) VALUES ('${name}','${sex}',#{date,typeHandler=com.mybatis.convert.Myconvert})