나는 오류일대 다 관계 최대 절전 모드 문제
있어 내가 프로젝트에 일대을 추가 봄 intergrate 수 최대 절전 모드 project.But에 봉착내 SQL 스크립트 :
create table users(
username varchar(50) not null primary key,
password varchar(50) not null,
enabled boolean not null
);
create table authorities (
username varchar(50) not null,
authority varchar(50) not null,
constraint fk_authorities_users foreign key(username)references users(username));
UserVO 클래스 맵 테이블 사용자
@Entity
@Table(name="users",schema="public")
public class UserVO implements UserDetails,Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
private String username;
private String password;
private boolean enabled;
private Set<AuthorityVO>authorityList = new HashSet<AuthorityVO>();
@Id
@Column(name="username",length=50,nullable=false)
@Override
public String getUsername() {
// TODO Auto-generated method stub
return username;
}
public void setUsername(String username) {
this.username = username;
}
@Column(name="password",length=50,nullable=false)
@Override
public String getPassword() {
// TODO Auto-generated method stub
return password;
}
public void setPassword(String password) {
this.password = password;
}
@Column(name="enabled",nullable=false)
@Override
public boolean isEnabled() {
// TODO Auto-generated method stub
return enabled;
}
public void setEnabled(boolean enabled) {
this.enabled = enabled;
}
@OneToMany(fetch = FetchType.LAZY,cascade = CascadeType.ALL,mappedBy="user")
public Set<AuthorityVO> getAuthorityList() {
return authorityList;
}
public void setAuthorityList(Set<AuthorityVO> authorityList) {
this.authorityList = authorityList;
}
@Transient
@Override
public Collection<GrantedAuthority> getAuthorities() {
// TODO Auto-generated method stub
return null;
}
@Transient
@Override
public boolean isAccountNonExpired() {
// TODO Auto-generated method stub
return false;
}
@Transient
@Override
public boolean isAccountNonLocked() {
// TODO Auto-generated method stub
return false;
}
@Transient
@Override
public boolean isCredentialsNonExpired() {
// TODO Auto-generated method stub
return false;
}
}
AuthorityVO 클래스 맵 테이블 당국
@Entity
@Table(name="authorities",schema="public")
public class AuthorityVO {
private UserVO user;
private String authority;
@ManyToOne(fetch=FetchType.LAZY)
@JoinColumn(name="username",nullable=false)
@ForeignKey(name="fk_authorities_users")
public UserVO getUser() {
return user;
}
public void setUser(UserVO user) {
this.user = user;
}
@Column(name="authority",length = 50,nullable=false)
public String getAuthority() {
return authority;
}
public void setAuthority(String authority) {
this.authority = authority;
}
,
처음에는 내가 UserVO에 @OneToMany를 추가하지 않았다 AuthorityVO은, 모든
org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'mySessionFactory' defined in ServletContext resource [/WEB-INF/dispatcher-servlet.xml]: Invocation of init method failed; nested exception is org.hibernate.AnnotationException: No identifier specified for entity: com.vaannila.vo.AuthorityVO
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1420)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:519)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:288)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:190)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:563)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:895)
나는 오류가 표와 AuthorityVO 사실이 아니다지도를 의미 알고 난 오류가있어 내 프로젝트에 그 일을 추가 됐었습니다 웹 및 전자 책이 많이 있지만 문제를 해결할 수있는 곳을 찾을 수 없습니다. 도와 주실 수 있습니까?
고마워 .lweller.It works fine.I 지금은 최대 절전 모드의 엔티티지도가 @ Id가 있어야한다는 것을 알고 있습니다. 도움을 청합니다. – cddthd