从下面的文章中,我了解Mule不会在insert语句后返回自动生成的主键。有没有找到PrimaryKey的解决办法?我不喜欢本文中提到的mybatis。
感谢任何帮助!
http://ricston.com/blog/rant-mule-jdbc-transport-introduction-mule-module-mybatis/
答案 0 :(得分:2)
尝试使用3.5.0-M4中提供的新数据库模块,或者等待几周后使用Mule ESB 3.5.0。 Here是此新功能的使用示例:
<?xml version="1.0" encoding="UTF-8"?>
<mule xmlns="http://www.mulesoft.org/schema/mule/core"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:db="http://www.mulesoft.org/schema/mule/db"
xsi:schemaLocation="http://www.mulesoft.org/schema/mule/core http://www.mulesoft.org/schema/mule/core/current/mule.xsd
http://www.mulesoft.org/schema/mule/db http://www.mulesoft.org/schema/mule/db/current/mule-db.xsd">
<flow name="insertWithAutoGeneratedKeys">
<inbound-endpoint address="vm://insertWithAutoGeneratedKeys" exchange-pattern="request-response"/>
<db:insert config-ref="dbConfig" autoGeneratedKeys="true" autoGeneratedKeysColumnIndexes="1">
<db:parameterized-query>INSERT INTO PLANET(POSITION, NAME) VALUES (777, 'Mercury')</db:parameterized-query>
</db:insert>
</flow>
答案 1 :(得分:1)
替代方法:在插入之前使用UUID作为主键并在Mule中生成UUID。