mybatis map方式inset返回主键
来源:互联网 发布:js设置cookie作用域 编辑:程序博客网 时间:2024/05/17 21:44
mybatis插入数据返回主键一般都是利用实体类,插入之后mybatis会自动将主键赋值给实体类的id。
可是只为了一个id重新写一个实体类太麻烦了。所以写这篇利用map方式插入返回主键 防止自己忘记。
插入方式跟插入实体类一样
运行环境:spring springmvc mybatis
首先利用map插入时,map里要有你的主键字段。
这里我的主键id是xtxxbm
controller控制器:
Map<String,Object> map=new HashMap<String,Object>(); map.put("xtxxbm",123); map.put("xxbt", getParam(req, "xxbt")); map.put("xxnr", getParam(req, "xxnr")); map.put("jsbm_jsr", getParam(req, "jsbm_jsr")); map.put("rybm_fsr", "123"); map.put("ryxm_fsr", "123456"); map.put("fssj", "123456"); ly0701Service.insertxtxx(map); System.out.println( "i "+i+ " --"+map.get("xtxxbms").toString());
xml:
<insert id="insertxtxx" parameterType="java.util.Map" useGeneratedKeys="true" keyColumn="xtxxbm" keyProperty="xtxxbm"> insert into lyl_xtxx(xxbt,xxnr,rybm_fsr,ryxm_fsr,jsbm_jsr,fssj) values( #{xxbt}, #{xxnr}, #{rybm_fsr}, #{ryxm_fsr}, #{jsbm_jsr}, #{fssj} ) <selectKey resultType="int" order="AFTER" keyProperty="xtxxbm"> SELECT LAST_INSERT_ID() </selectKey> </insert>
serviceImp:
@Override public int insertxtxx(Map map) { // TODO Auto-generated method stub return ly0701Dao.insertxtxx(map); }
运行结果:
可以看出 最后返回的主键是放在map里的 而i只是代表插入是否成功
注意:map里的字段必须和主键字段相同。即使你用别名也不行。
我测试了一下:
xtxxbms不是主键字段,比主键字段多了一个s,虽然xml 写了as xtxxbms.但是map里的xtxxbms仍然是123.不是主键值。(SELECT LAST_INSERT_ID() as xtxxbms 这个会执行出来。但是xtxxbms无法通过map获取到真正的主键值)
map.put(“xtxxbms”,123);
SELECT LAST_INSERT_ID() as xtxxbms
所以即使你用别名 也必须是主键字段xtxxbm
参考网址:http://blog.csdn.net/liuxiao723846/article/details/44085703
阅读全文
0 0
- mybatis map方式inset返回主键
- MyBatis+MySQL map返回插入的主键ID
- mybatis+mysql返回以map形式插入的实体主键
- MyBatis+MySQL map 返回插入的主键ID
- MyBatis中主键增长方式的设定及返回
- Mybatis——返回主键的几种方式
- MyBatis insert 返回主键
- MyBatis返回主键
- mybatis insert返回主键
- mybatis 返回主键
- MyBatis返回主键
- Mybatis insert 返回主键
- mybatis 主键的返回
- Mybatis 返回主键
- mybatis insert 返回主键
- mybatis 返回主键
- mybatis insert 返回主键
- mybatis主键的返回
- Problem B: Ants (弹性碰撞)
- const修饰符
- 华为 提取不重复的整数
- 动态规划解决找零钱问题
- XML和JSON的区别
- mybatis map方式inset返回主键
- android自定义属性
- stm32 iap 跳到app后不进中断问题
- POJ 1236 Network of Schools(强联通缩点)
- jquery 循环获得数字并用逗号进行拼接,同事后台进行循环取出
- 如何正确使用光纤跳线?
- Android animation帧动画
- SFP光模块
- Servlet文件上传