在写ibatis时,操作的表名应该要与数据库中的表名一致,否则在不同环境下会导致异常。
今天在操作mysql 里的user用户名的表时,因为在ibatis中USER写成大写,在win7 tomcat7下运行正常,但我将项目放在ubuntu tomcat7下运行就出现异常了。说找不到表名。所以大家要注意了。
正确的代码如下:
<insert id="insert" parameterClass="map">
<!-- 这里user表名要与数据库一致,否则ubuntu下会出现异常 -->INSERT INTO user(username,company,RoleId,password) VALUES('$username$','$company$','$RoleId$','$password$')
<!--插入后返回值,判断是否插入成功-->
<selectKey resultClass="int" keyProperty="id" >
<![CDATA[
SELECT LAST_INSERT_ID() AS id
]]>
</selectKey>
</insert>