1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package org.apache.ibatis.type;
17
18 import java.sql.CallableStatement;
19 import java.sql.PreparedStatement;
20 import java.sql.ResultSet;
21 import java.sql.SQLException;
22 import java.sql.Time;
23 import java.util.Date;
24
25
26
27
28 public class TimeOnlyTypeHandler extends BaseTypeHandler<Date> {
29
30 @Override
31 public void setNonNullParameter(PreparedStatement ps, int i, Date parameter, JdbcType jdbcType) throws SQLException {
32 ps.setTime(i, new Time(parameter.getTime()));
33 }
34
35 @Override
36 public Date getNullableResult(ResultSet rs, String columnName) throws SQLException {
37 Time sqlTime = rs.getTime(columnName);
38 if (sqlTime != null) {
39 return new Date(sqlTime.getTime());
40 }
41 return null;
42 }
43
44 @Override
45 public Date getNullableResult(ResultSet rs, int columnIndex) throws SQLException {
46 Time sqlTime = rs.getTime(columnIndex);
47 if (sqlTime != null) {
48 return new Date(sqlTime.getTime());
49 }
50 return null;
51 }
52
53 @Override
54 public Date getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {
55 Time sqlTime = cs.getTime(columnIndex);
56 if (sqlTime != null) {
57 return new Date(sqlTime.getTime());
58 }
59 return null;
60 }
61 }