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.time.Month;
23
24
25
26
27
28
29 public class MonthTypeHandler extends BaseTypeHandler<Month> {
30
31 @Override
32 public void setNonNullParameter(PreparedStatement ps, int i, Month month, JdbcType type) throws SQLException {
33 ps.setInt(i, month.getValue());
34 }
35
36 @Override
37 public Month getNullableResult(ResultSet rs, String columnName) throws SQLException {
38 int month = rs.getInt(columnName);
39 return month == 0 && rs.wasNull() ? null : Month.of(month);
40 }
41
42 @Override
43 public Month getNullableResult(ResultSet rs, int columnIndex) throws SQLException {
44 int month = rs.getInt(columnIndex);
45 return month == 0 && rs.wasNull() ? null : Month.of(month);
46 }
47
48 @Override
49 public Month getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {
50 int month = cs.getInt(columnIndex);
51 return month == 0 && cs.wasNull() ? null : Month.of(month);
52 }
53
54 }