`
hua04104
  • 浏览: 244949 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Ibatis自动生成主键

阅读更多
Batis的sqlMap配置文件的selectKey元素有个type属性,可以指定pre或者post表示前生成(pre) 还是后生成(post)。
1.Oracle
(1)往oralce里建一个sequence:
  
                     create sequence seq_id_petition
                      minvalue 1
                      start with 1
                      increment by 1
         
   
  

  (2)ibatis配置文件:

  
   <insert id="insertPetitionLetter" parameterMap="PetitionLetterParam">
  	  <selectKey resultClass="int" keyProperty="id" type="pre">      
           <![CDATA[SELECT SEQ_ID_PETITION.NEXTVAL AS ID FROM DUAL]]>      
      </selectKey> 
    <![CDATA[  
  	insert into t_petitionletter(id, identifier, reporter, letterInformation, 
  	                             supervision, processFlow) values
  	                             (?,?,?,?,?,?)
   ]]>  
  </insert>
   


2.MySql
(1)ibatis配置文件:
  
   <insert id="insertPetitionLetter" parameterMap="PetitionLetterParam">
  	  <selectKey resultClass="int" keyProperty="id" type="pre">      
           <![CDATA[SELECT LAST_INSERT_ID() AS ID ]]>   
           <!-- 该方法LAST_INSERT_ID()与数据库连接绑定 -->        
      </selectKey> 
    <![CDATA[  
  	insert into t_petitionletter(id, identifier, reporter, letterInformation, 
  	                             supervision, processFlow) values
  	                             (?,?,?,?,?,?)
   ]]>  
  </insert>
   

    
分享到:
评论

相关推荐

    ibatis框架实现的增删改查

    实现ibatis框架对student表的增删改查(包括模糊查询和用序列自动生成主键)

    iBatis SQL Maps开发指南.pdf

    自动生成的主键 存储过程 parameterClass parameterMap Inline Parameter简介 resultClass resultMap cacheModel xmlResultName Parameter Map 和 Inline Parameter 元素 Inline Parameter Map 基本类型输入参数 Map...

    Ibatis框架的核心知识点

    1 简单的sqlmap 2 SQl语句 3 自动生成的主键 4 存储过程 5 parameterMap与inline parameter 6 二元条件元素和一元条件元素 7 隐式的Result Map

    iBATIS 帮助文档

    自动生成的主键.............................................................................................................20 存储过程.....................................................................

    JAVA代码生成工具

    unique="是否唯一性约束" nullable="是否可以为空" pk="是否主键,在表没有主键的情况下,可以指定一个代理主键" updatable="是否可以更新" insertable="是否插入" enumString="枚举值,以分号分隔,示例值:M(1,...

    好用的代码生成源码

    示例如下: UserInfoBaseDao : 自动生成的代码, 不能手工修改,用于重复生成 UserInfoDao extends UserInfoBaseDao : 存放手工的代码,不能重复生成 页面的重复生成还没有啥好办法。 语法参考: ...

    springmybatis

    mybatis实战教程mybatis in action之九mybatis 代码生成工具的使用 mybatis SqlSessionDaoSupport的使用附代码下载 转自:http://www.yihaomen.com/article/java/302.htm (读者注:其实这个应该叫做很基础的入门...

    Spring中文帮助文档

    11.5.2. 使用SimpleJdbcInsert来获取自动生成的主键 11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall...

    Spring API

    11.5.2. 使用SimpleJdbcInsert来获取自动生成的主键 11.5.3. 指定SimpleJdbcInsert所使用的字段 11.5.4. 使用SqlParameterSource提供参数值 11.5.5. 使用SimpleJdbcCall调用存储过程 11.5.6. 声明SimpleJdbcCall...

    AppFramework_V1.0

    iBatis2.0 &lt;br&gt;(毫秒) AppFramework &lt;br&gt;(毫秒) 后者前者性能对比 &lt;br&gt;(倍) 根据主键获取实体 &lt;br&gt;(20次单条select) 6.1 5.3 &lt;br&gt;QueryFilter: 5.75 1.15 &lt;br&gt;...

    AppFramework数据库访问组件_代码生成插件_V1.1.rar

    720 1.59 &lt;br&gt;1.53 &lt;br&gt; &lt;br&gt; 表II –50并发4循环(数据库和测试机分开) &lt;br&gt;对比项目 iBatis2.0 &lt;br&gt;(毫秒) AppFramework &lt;br&gt;(毫秒) 后者前者性能对比 &lt;br&gt;(倍) ...

    AppFramework_V1.0_New

    720 1.59 &lt;br&gt;1.53 &lt;br&gt; &lt;br&gt; 表II –50并发4循环(数据库和测试机分开) &lt;br&gt;对比项目 iBatis2.0 &lt;br&gt;(毫秒) AppFramework &lt;br&gt;(毫秒) 后者前者性能对比 &lt;br&gt;(倍) ...

    阿里巴巴编码规范 基础技能认证 考题分析(考题+答案).docx

    B .iBATIS自带的queryForList(String statementName,int start,int size)分页接口有性能隐患,不允许使用。 C .定义明确的sql查询语句,通过传入参数start和size来实现分页逻辑。 D .可使用存储过程写分页逻辑...

Global site tag (gtag.js) - Google Analytics