spring data jpa 多对多的关系 测试

实体类的配置参见同类型的博客
下面直接测试
分析一下表关系
在这里插入图片描述
用户表和角色表 和用户关系角色表
需求:
要给用户赋予多个角色
测试

	    @Test
	    @Transactional
	    @Rollback(value = false)
	    public void    saveUserRole() {
	    //用户的角色列表集合
	    	 Set<SysRole>  rolelist=new HashSet<>();
	    	SysRole role1 = roleDao.findOne(4L);
	    	SysUser u1 = new SysUser();
			u1.setUserName("用户1");
			//用户角色列表中添加角色		
			rolelist.add(role1);
			//设置用户和角色的关系
			 u1.setRoles(rolelist);
			 //保存用户
	    	userDao.save(u1);    
	    	 
	    }

这样写就会保存用户的同时给中间表添加一条例记录

	    @Test
	    @Transactional
	    @Rollback(value = false)
	    public void    saveUserRole2() {
	    	Set<SysRole>  rolelist=new HashSet<>();	    	                   
	    	SysUser u1 = new SysUser();
	    	u1.setUserName("用户2");	
	    	//查询所以的角色
	    	List<SysRole> roles = roleDao.findAll();
         for (SysRole sysRole : roles) {
			        rolelist.add(sysRole);
		}
            //给用户设置角色
            u1.setRoles(rolelist);
            //保存用户并且保存用户的所以角色
	    	userDao.save(u1);    	    	
	    }

这样就保存了一个用户同时也在关系表中添加了两条记录

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值