调用代码private SqlSessionTemplate sqlSessionTemplate; public void setSqlSessionTemplate(SqlSessionTemplate sqlSessionTemplate) {
this.sqlSessionTemplate = sqlSessionTemplate;
}
@Override
public User save(User u) {
try {
sqlSessionTemplate.insert("save",u);
} catch (DataAccessException e) {
e.printStackTrace();
}
return u;
}XML代码 <insert id="save" parameterType="userDo" keyProperty="id" useGeneratedKeys="true">
insert into
t_user(username,userpass,email,sex,province,city,area,birthday)
values(#{username,jdbcType=VARCHAR,jdbcType=VARCHAR},#{userpass,jdbcType=VARCHAR},#{email,jdbcType=VARCHAR},#{sex,jdbcType=VARCHAR},#{province,jdbcType=VARCHAR},#{city,jdbcType=VARCHAR},#{area,jdbcType=VARCHAR},#{birthday,jdbcType=DATE})
</insert>
报错内容是:
java.lang.ClassCastException: java.lang.Integer cannot be cast to com.vbon.mybatis.pojo.User
这个问题很纠结啊,首先是我没有做过转换,就报错了。
求大神解答
this.sqlSessionTemplate = sqlSessionTemplate;
}
@Override
public User save(User u) {
try {
sqlSessionTemplate.insert("save",u);
} catch (DataAccessException e) {
e.printStackTrace();
}
return u;
}XML代码 <insert id="save" parameterType="userDo" keyProperty="id" useGeneratedKeys="true">
insert into
t_user(username,userpass,email,sex,province,city,area,birthday)
values(#{username,jdbcType=VARCHAR,jdbcType=VARCHAR},#{userpass,jdbcType=VARCHAR},#{email,jdbcType=VARCHAR},#{sex,jdbcType=VARCHAR},#{province,jdbcType=VARCHAR},#{city,jdbcType=VARCHAR},#{area,jdbcType=VARCHAR},#{birthday,jdbcType=DATE})
</insert>
报错内容是:
java.lang.ClassCastException: java.lang.Integer cannot be cast to com.vbon.mybatis.pojo.User
这个问题很纠结啊,首先是我没有做过转换,就报错了。
求大神解答
解决方案 »
- 【300分】Ehcache,flush到磁盘后,怎么再读到这些object呢?
- struts.convention.result.path
- IntelliJ IDEA 11 的 Enter License server address 怎么填?
- grails的域类中如何实现国际化???
- structs用validatio.xml验证,验证不通过时,不知道跳到哪个画面上去了,报告该页无法显示
- 在jsp中页面跳转时如何使session失效
- 图片怎么老是不能显示??
- 班竹,各位大虾,请帮个忙吧!小弟急死了!
- javabean中连接数据库和jsp中直接连接有区别么?具体请看:
- struts2无法输出异常
- struts2 页面中applet不显示
- 求指点!页面图片的处理,如:缩放,水印,
private String username;
private String userpass;
private String email;
private String sex;
private String province;
private String city;
private String area;
private Date birthday;
在MyBatis的配置文件里做过alias没有?
这个Integer就是你当前插入的记录数 一般的话都会是1 只要你没有插入失败
如果你声明<selectKey resultType="int" keyProperty="id" >
select LAST_INSERT_ID()
</selectKey> mybatis会给你自动填充插入后的ID到你的当前对象里
所以你程序大可以把返回值设置成Integer,然后再打印看看你的user对象,必然有Id属性了