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)
32 throws SQLException {
33 ps.setTime(i, new Time(parameter.getTime()));
34 }
35
36 @Override
37 public Date getNullableResult(ResultSet rs, String columnName)
38 throws SQLException {
39 Time sqlTime = rs.getTime(columnName);
40 if (sqlTime != null) {
41 return new Date(sqlTime.getTime());
42 }
43 return null;
44 }
45
46 @Override
47 public Date getNullableResult(ResultSet rs, int columnIndex)
48 throws SQLException {
49 Time sqlTime = rs.getTime(columnIndex);
50 if (sqlTime != null) {
51 return new Date(sqlTime.getTime());
52 }
53 return null;
54 }
55
56 @Override
57 public Date getNullableResult(CallableStatement cs, int columnIndex)
58 throws SQLException {
59 Time sqlTime = cs.getTime(columnIndex);
60 if (sqlTime != null) {
61 return new Date(sqlTime.getTime());
62 }
63 return null;
64 }
65 }