骡子 - 插入后获得主键

时间:2014-04-23 18:11:42

标签: jdbc primary-key mule auto-generate

从下面的文章中,我了解Mule不会在insert语句后返回自动生成的主键。有没有找到PrimaryKey的解决办法?我不喜欢本文中提到的mybatis。

感谢任何帮助!

http://ricston.com/blog/rant-mule-jdbc-transport-introduction-mule-module-mybatis/

2 个答案:

答案 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。