问题描述
我有一个类(称为A类),其中包含一个子类(称为B类)作为属性。
所以
public class Request {
private User user;
private ZonedDateTime requestTime;
//getters,setters
}
public class User {
private Integer userID;
//getters,setters
我想做的是插入请求,或在代码中(假设myUser和loggerMapper已经创建):
Request myRequest = new Request();
myRequest.setuser(myUser);
ZonedDateTime z = ZonedDateTime.now();
myRequest.setrequestTime(z);
loggerMapper.logRequest(myRequest);
我有接口的地方:
public interface loggerMapper {
Boolean logRequest(Request myRequest);
}
像这样的xml映射器:
<insert id="logRequest" parameterType="map">
insert into Request(userID,requestTime)
values (#{userID},#{requestTime})
</insert>
myBatis absolutley讨厌ZonedDateTime,它只对
java.lang.IllegalStateException: Type handler was null on parameter mapping for property 'requestTime'.
1楼
我通过使用Joda Time和自定义类型处理程序来回答此问题。
在这里看看: :