UserRepositoryTest
@Order(1)
@Test
public void create() {
// 회원 "user1" 객체 추가
User user1 = new User();
user1.setUsername("user1");
user1.setPassword("password1");
user1.setEmail("user1@sprata.com");
user1.setRole(UserRole.USER);
// 회원 "user1" 객체의 ID 값이 없다가..
userRepository.save(user1);
// DB 에 저장된 후, USER ID 값이 생김
// 테스트 회원 데이터 삭제
userRepository.delete(user1);
}
UserController
@GetMapping("/user/test/create")
@ResponseBody
public User test() {
// 회원 "user1" 객체 추가
User user1 = new User();
user1.setUsername("user1");
user1.setPassword("password1");
user1.setEmail("user1@sprata.com");
user1.setRole(UserRole.USER);
// 회원 "user1" 객체를 영속화
userRepository.save(user1);
// 회원 "user1" 을 조회
User foundUser1 = userRepository.findByUsername("user1").orElse(null);
// 회원 "user1" 을 또 조회
User foundUser2 = userRepository.findByUsername("user1").orElse(null);
// 회원 "user1" 을 또또 조회
User foundUser3 = userRepository.findByUsername("user1").orElse(null);
userRepository.delete(user1);
@GetMapping("/user/test/update/2")
@ResponseBody
public User updateUser2() {
// 테스트 회원 "user1" 생성
createTestUser1();
// 회원 "user1" 객체 추가
// 회원 "user1" 을 조회
User user1 = userRepository.findByUsername("user1").orElse(null);
// 회원 "user1" 이 존재하면,
if (user1 != null) {
// 회원의 email 변경
user1.setEmail("updateUser1@sparta.com");
// 회원의 role 변경 (USER -> ADMIN)
user1.setRole(UserRole.ADMIN);
}
// user1 을 저장
userRepository.save(user1);
}
@GetMapping("/user/test/update/3")
@ResponseBody
@Transactional
public void updateUse3() {
// 테스트 회원 "user1" 생성
createTestUser1();
// 회원 "user1" 객체 추가
// 회원 "user1" 을 조회
User user1 = userRepository.findByUsername("user1").orElse(null);
// 회원 "user1" 이 존재하면,
if (user1 != null) {
// 회원의 email 변경
user1.setEmail("updateUser1@sparta.com");
// 회원의 role 변경 (USER -> ADMIN)
user1.setRole(UserRole.ADMIN);
}
}