我是Mybatis的新手,正在尝试使用spring支持来实现Mybatis。
我必须将一条记录插入到一个表中,但是Ibatis像hibernate一样有序列生成器吗?
如果不需要手动完成,就像sequence.nextVal一样?我不喜欢这样。
如果您有任何建议,我们将不胜感激。
谢谢
发布于 2012-08-22 10:28:57
如果您自己声明了映射器,则必须这样做:
<insert id="insert" parameterType="com.your.app.Product">
<selectKey keyProperty="id" order="AFTER" resultType="java.lang.Integer">
SELECT LAST_INSERT_ID()
</selectKey>
INSERT INTO product (name, value)
VALUES (#{name,jdbcType=VARCHAR}, #{value,jdbcType=DOUBLE})
</insert>但是,如果您使用的是表生成器,则可以通过在MyBatis标记内使用generatedKey标记来完成此操作,它将根据您的需要生成映射器。
示例:
<table tableName="product" alias="product">
<generatedKey column="id" sqlStatement="MySql" identity="true" />
</table>https://stackoverflow.com/questions/11252694
复制相似问题