Mbr1 소스에서 Mbr1 관련해서 엔티티가 이미 만들어져 더 생성할 수 없다는 에러가 나왔었습니다.
@Entity
@Table(name = "MBR") // 테이블 id 원하는데로 지정가능,
@SequenceGenerator(
name = "MBR_SEQ_GENERATOR",
sequenceName = "MBR_SEQ",
initialValue=1, allocationSize=1 )
@ToString
public class Mbr1 {
@Id
@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "MBR_SEQ_GENERATOR")
private Long id;
private String username;
public Mbr1(){}
public Mbr1( String username) {
this.username = username;
}
public Mbr1(Long id, String username) {
this.id = id;
this.username = username;
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public Long getId() {
return id;
}
public void setId(Long id) {
this.id = id;
}
}
원인은
@SequenceGenerator(
name = "MBR_SEQ_GENERATOR",
sequenceName = "MBR_SEQ",
initialValue=1, allocationSize=1 )
여기에서 allocationSize 값을 변경했을 때 일어낫습니다.
기존에 만들어진 시퀀스Size가 변경되어 적용되는게 아니라,
같은이름의 시퀀스를 만들어 버리다보니 에러가 뜨는것 같습니다.
ddl을 update상태로 해놔도 이런 상태이니, ddl만드는걸 jpa로 하는걸 운영에서 안쓰는 이유가 있나 봅니다.
변경시도를 하지 않고 원래대로 하거나, 시퀀스를 새로 만들도록 하니 해결 되었습니다.
'IT기술 > spring' 카테고리의 다른 글
[JPA] 1+N 문제, 현상 정리 (0) | 2024.04.01 |
---|---|
[Spring] JPA 에러must be manually assigned before calling 'persist()' 에러 해결하기 (0) | 2024.03.27 |
[Spring] 테스트에서 Unable to find a @SpringBootConfiguration, you need to use @ContextConfiguration or @SpringBootTest(classes=...) with your test 문제 해결 (0) | 2024.03.06 |
[Spring] SpEL, Value로 어노테이션에 값 전달하기 (0) | 2024.02.27 |
[Spring] 어노테이션 정리 (1) | 2024.02.27 |