zoukankan      html  css  js  c++  java
  • mybatis 获取自增主键Id值案例

    1、Mapper配置文件:

    <?xml version="1.0" encoding="UTF-8"?>
    <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
    <mapper namespace="com.hyc.www.dao.MenuMapper">
    
    
        <resultMap type="com.hyc.www.pojo.Menu" id="menu">
            <id property="menuId" column="menuId" />
            <result property="menuName" column="menuName" />
            <result property="sortNumber" column="sortNumber" />
        </resultMap>
        
        
        <insert id="insert" parameterType="menu" useGeneratedKeys="true" keyProperty="menuId">
        insert into 
        Menus
        (
        menuName,
        sortNumber
        )
        values
        (
        #{menuName},
        #{sortNumber}
        )
        </insert>
        
        <insert id="insertMenuAction" parameterType="menuAction">
        insert into 
        MenuAction
        (
        menuId,
        actionId
        )
        values
        (
        #{menuId},
        #{actionId}
        )
        </insert>
        
    </mapper> 

    2、controller

    @Autowired
        private MenuService menuService;
        
        @RequestMapping(value = "/add", method = RequestMethod.POST, produces = "text/html;charset=UTF-8")
        @ResponseBody
        @ApiOperation(value = "add menu", notes = "添加菜单")
        @ApiResponse(response= String.class, code = 200, message = "接口返回对象参数")
        public String add(@RequestBody Menu menu) {
            
            try {
                
                if(menu==null) {
                    return "fail";
                }
                menuService.insert(menu);
                for (Integer aId : menu.getActionIds()) {
                    MenuAction rAction = new MenuAction();
                    rAction.setActionId(aId);
                    rAction.setMenuId(menu.getMenuId());
                    
                    menuService.insertMenuAction(rAction);
                }
                return "success";
            } catch (Exception e) {
                e.printStackTrace();
                return "fail";
            }
        }

    当调用menuService.insert(menu)方法后,menuId值已经赋值给了menu对象,直接使用menu.getMenuId()获取自增主键Id值。

  • 相关阅读:
    try catch 和\或 finally 的用法
    postgresql与oracle对比
    今天遇到个let: not found
    NTLM相关
    【搜藏】net use命令拓展
    【shell进阶】字符串操作
    【网摘】网上邻居用户密码
    测试导航
    关系代数合并数据 left join
    真正的程序员
  • 原文地址:https://www.cnblogs.com/zoro-zero/p/12511009.html
Copyright © 2011-2022 走看看