java连带操作(两张表关联,一张表插入一条新数据,另外一张表也跟着插入一条新数据)_Andy_pany_新浪博客...

以角色权限模块中增加功能为例子:

 

a) 概念:

 连带操作:首先先在Role表中插入一条数据,接着拿到rid,往Role-Acl表中插入一条数据

b)数据库设计:

 

Role表:


 

Role-Acl表:

 

c) 代码实现:

RoleMap:


@Insert("insert into sys_role(rolename,creator,createtime,remark) VALUES(#{rolename},1,NOW(),#{remark})")
@Options(useGeneratedKeys = true, keyProperty = "rid",keyColumn="rid")
int addRole(SysRole sysRole);

RoleAclMap:


@Insert("INSERT into sys_role_acl(rid,aid) VALUES(#{rid},#{aid})")
int addRoleAcl(SysRoleAcl sysRoleAcl);

RoleService:


public Map addRole(SysRole sysRole, String[] aids) {
   int addRole = m_RoleMap.addRole(sysRole);
   Integer rid = sysRole.getRid();
   // SysRoleAcl
   SysRoleAcl sysRoleAcl = new SysRoleAcl();
   sysRoleAcl.setAid(Arrays.toString(aids));
   sysRoleAcl.setRid(rid);
   m_RoleAclMap.addRoleAcl(sysRoleAcl);
   // 调用IRoleAclMap方法
   Map tResultMap = new HashMap();
   tResultMap.put("status", "fail");
    if (addRole <= 0) {
        tResultMap.put("Msg", "添加失败");
        return tResultMap;
   }

    tResultMap.put("status", "success");
    return tResultMap;
}
  • 2
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值