jpa一对多

Posted lei0913

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jpa一对多相关的知识,希望对你有一定的参考价值。

package com.itheima;

import com.itheima.dao.RoleDao;
import com.itheima.dao.UserDao;
import com.itheima.domain.Role;
import com.itheima.domain.User;
import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.test.annotation.Rollback;
import org.springframework.test.context.ContextConfiguration;
import org.springframework.test.context.junit4.SpringJUnit4ClassRunner;
import org.springframework.transaction.annotation.Transactional;

@RunWith(SpringJUnit4ClassRunner.class)
@ContextConfiguration(locations = "classpath:beans.xml")
public class AppTest
@Autowired
private UserDao userDao;
@Autowired
private RoleDao roleDao;
@Test
@Transactional
@Rollback(false)
public void testSave() //一对多
//创建数据
User user = new User("小明", "123", 28);
//创建角色
Role role = new Role("父亲", "赚钱养娃");


//数据产生关系
user.getRoles().add(role);
role.getUsers().add(user);

 

//保存了
userDao.save(user);
roleDao.save(role);



@Test
@Transactional
@Rollback(false)
public void testSave1()
//创建数据
User user = new User("小明", "123", 28);
//创建角色
Role role = new Role("父亲", "赚钱养娃");


//数据产生关系
user.getRoles().add(role);
role.getUsers().add(user);


roleDao.save(role);

@Test
@Transactional
@Rollback(false)
public void testRemove()
Role role = roleDao.findById(1).get();

roleDao.delete(role);


以上是关于jpa一对多的主要内容,如果未能解决你的问题,请参考以下文章

JPA 2 一对多 - JPA 如何推断列信息?

Jpa配置一对多关系

JPA - 使用 EclipseLink 保持单向一对多关系失败

jpa休眠一对多双向[重复]

JPA一对多单向

Jpa 中怎么玩一对多?