2 u011844490 u011844490 于 2016.03.02 14:01 提问

MyBatis插入时做主键生成有什么优点?

与直接设置主键相比,myBatis有哪些优点?为什么?································

4个回答

devmiao
devmiao   Ds   Rxr 2016.03.02 14:02

便于代码的维护,便于数据库的移植

hopefully123
hopefully123   2016.03.02 14:18

我用mybatis最大的一点感受就是灵活

wangkang80
wangkang80   2016.03.02 14:57

主键的生成策略有很多种,根据不同的情况使用,各有优势.

mybatis的使用,请参考 : http://git.oschina.net/wangkang/llsfw

cenghonho
cenghonho   2016.03.03 13:33

主键的生成规则不在于是不是在MyBatis插入时设置主键生成,而在于你的业务是否需要,比如说你需要设置业务主键,那么就不要使用mybatis自动生成,而你需要一个物理主键,那么你可以采用自动生成。

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!
其他相关推荐
mybatis获取插入数据时自动生成的主键id
mapper文件: void insert(Map params); mybatis的xml如下: insert into tbl_sales_shop_claim(shopID, empID, status, expireTime, actionEmpID, actionEmpName, actionTime, createTime) values(#{shop
跟easy-cloud一起写mybatis分布式主键生成组件
mybatis分布式主键生成策略使用教程项目说明​ 原因:数据库在分表分库时使用id自增会导致主键冲突​ 目的:生成可用于分表分库生成唯一的主键​ 环境:mybatis、springboot、jdk1.8极其以上版本等等、数据数据类需要放在dao或者repository或者 mapper包或者子包下,主键生成策略属于审计功能的子功能,因此需要与审计功能的支持 源码地址:https://github...
mybatis插入时返回自增主键
mybatis 插入时返回主键id,需要在xml里增加配置,useGeneratedKeys="true" keyProperty="id",例如 这样实体就主键字段就会有自增的值
mybatis插入主键返回
1. mybatis映射文件添加配置    useGeneratedKeys="true" keyProperty="id" insert into tp_message_text id, message, create_time,
mybatis插入操作时获取主键
<br /> 插入操作    对于自增主键的表,插入可以不配置插入的主键列。否则是必须的。 获取主键     插入语句之前配置:主要是针对Sequence主键而言,插入前必须指定一个主键值给要插入的记录。Oracle、DB2亦如此,方法是在插入语句标签<insert....>之前配置上:   <insert id="AltName.insert" parameterType="AltName">      <selectKey resultType="long" keyProperty="id">     
Mybatis 插入获取主键的方式
mybatis 作为一个主流的 ORM 框架,深受广大开发者的喜爱。有人的地方就有江湖,有代码的地方自然有坑,下面来说说获取 mybatis 的插入后返回的主键。 我们可以想一下自动增长的主键特性,在数据库里面肯定有某个地方管理 ID 的自增长,那个机制每次都会记录最近一次新增的主键,或者是取最大值,然后在下一次进行递增处理,因此我们有获取插入的主键要么在新增之前,要么在新增之后,按照习惯我...
Mybatis——<selectKey>生成主键/获取插入数据主键
对于不支持自动生成类型的数据库或可能不支持自动生成主键 JDBC 驱动来说,MyBatis 有另外一种方法来生成主键 获取插入数据的主键值 这里有一个简单(甚至很傻)的示例,它可以生成一个随机 ID(你最好不要这么做,但这里展示了 MyBatis 处理问题的灵活性及其所关心的广度):(从另一个角度来看,这种写法获取到了本条插入数据的主键ID)<insert id="insertAuthor">
oracle 在插入数据库时自动生成主键
在插入数据时,希望主键时根据当前表的主键,自动生成:seq_【表明】.nextval。 实例:aaa.seq_bbb.nextval。aaa为schema,bbb为表名
【MyBatis框架点滴】——mybatis插入不显示,但是主键自增了?
mybatis插入了一条数据,查看数据库时并没有显示刚刚插入的数据,但是调试时发现已经成功插入了一条记录(insert返回值为1),而且主键也自增了(前提是表已经设置了主键自增)。  这是为什么呢? 解决这个问题还有一个方法,就是修改mysql表的存储引擎,出现上面的问题,说明表的存储引擎一定是支持事务的如InnoDB,因此可以把存储引擎设置为事务不安全的类型如MyIASM。
Mybatis插入时返回自增主键(selectKey和useGeneratedKeys)
select seq_users.nextval from dual select nextval for seq_users from sysibm.sysdummy1" insert into users values (#{id}, #{name}) 通过selectKey在插入操作前或者操作后获取key值,做为字段插入或返回字段。(此段代码获取的序列值