MyBatis mapper.xml 时间格式化年月日时分秒怎么写
时间: 2024-01-14 21:02:13 浏览: 233
在 MyBatis 的 mapper.xml 文件中,可以使用 Java 中的 SimpleDateFormat 类来进行时间格式化,具体格式化方式如下:
1. 将 Date 类型转换为字符串类型:
```xml
<resultMap id="exampleResultMap" type="Example">
<result property="createTime" column="create_time" jdbcType="TIMESTAMP" javaType="java.util.Date" />
<result property="createTimeStr" column="create_time" jdbcType="TIMESTAMP" javaType="java.lang.String" select="dateToString" />
</resultMap>
<select id="selectByExample" resultMap="exampleResultMap">
SELECT * FROM example WHERE create_time > #{createTime,jdbcType=TIMESTAMP}
</select>
<sql id="dateToString">
<![CDATA[
SELECT DATE_FORMAT(#{createTime}, '%Y-%m-%d %H:%i:%s') AS createTimeStr
]]>
</sql>
```
2. 将字符串类型转换为 Date 类型:
```xml
<insert id="insert" parameterType="Example">
INSERT INTO example (name, create_time) VALUES (#{name}, #{createTime,jdbcType=TIMESTAMP})
</insert>
<parameterMap id="exampleParameterMap" type="Example">
<parameter property="createTime" jdbcType="TIMESTAMP" javaType="java.lang.String" mode="IN" />
</parameterMap>
<sql id="stringToDate">
<![CDATA[
SELECT STR_TO_DATE(#{createTime}, '%Y-%m-%d %H:%i:%s') AS createTime
]]>
</sql>
```
在上述代码中,我们使用了两个 SQL 片段来实现时间格式化的转换。第一个 SQL 片段 `dateToString` 将 `java.util.Date` 类型的时间转换为字符串类型,第二个 SQL 片段 `stringToDate` 将字符串类型的时间转换为 `java.util.Date` 类型。这样就可以在 MyBatis 中方便地进行时间格式化的转换了。
阅读全文