springboot下搭建springdata出现的懒加载异常

org.hibernate.LazyInitializationException: could not initialize proxy [com.springdata.pojo.Roles#1] - no Session

没开事物因为springdata底层是hibernate如果你是多表关联映射时

是必须要开启事物进行增删改查的不开就会报错

注意重点:在关系映射里面开启级联也是必须要开始事物操作不让报错

-------------------》》》》》@Transactional在测试类上加一个这个注解即可

实例------------------------

@RunWith(SpringRunner.class)

@SpringBootTest

@Transactional//用级联必须开事物不开报错  不开事物查询报lazy异常

public class DemoApplicationTests {

    @Autowired

    private RoleRepoJPA roleJpa;

    @Autowired

    private UserRepoJPA userJpa;

    @Test

    public void testSaveUsers(){

        //创建一个用户

        User user = new User();

        user.setName("张三");

        //创建一个角色

        Role role = new Role();

        role.setRname("DBA");

        //关联

        //role.getUsers().add(user);

        user.setRoles(role);

        //保存

        this.roleJpa.save(role);

        this.userJpa.save(user);

    }

    @Test

    public void contextLoads() {

        Optional<User> User = this.userJpa.findById(1);

        System.out.println(User.get().getName());

        Role R = User.get().getRoles();

        System.out.println(R);

    }

}

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容