未知mappedBy位于:com.omnypay.dao.bo.CloudSvrUser.UserPwdList中,引用的属性未知:java.util.List.user
嗨,我的用户更新配置文件将foregin密钥作为用户 这是我的CloudSvrUserProfile课程 这是我的bean配置文件未知mappedBy位于:com.omnypay.dao.bo.CloudSvrUser.UserPwdList中,引用的属性未知:java.util.List.user,java,spring,hibernate,Java,Spring,Hibernate,嗨,我的用户更新配置文件将foregin密钥作为用户 这是我的CloudSvrUserProfile课程 这是我的bean配置文件 请帮助您将其映射为@OneToOne,但随后您将其声明为列表 如果它是OneToOne,则意味着只有一个CloudSvrPasswordsStory将与CloudSvrUser关联,因此不应该有列表,而只是: @OneToOne(mappedBy="user",fetch=FetchType.LAZY,cascade=CascadeType.ALL) privat
请帮助您将其映射为@OneToOne,但随后您将其声明为列表 如果它是OneToOne,则意味着只有一个CloudSvrPasswordsStory将与CloudSvrUser关联,因此不应该有列表,而只是:
@OneToOne(mappedBy="user",fetch=FetchType.LAZY,cascade=CascadeType.ALL)
private CloudSvrPasswordsHistory UserPwdList;
否则,如果您需要为每个CloudSvrUser创建多个CloudSvrPasswordsStory,请保留该列表并使用OneToMany。我相信问题在于您指定了
@OneToOne(mappedBy="user",fetch=FetchType.LAZY,cascade=CascadeType.ALL)
private List<CloudSvrPasswordsHistory> UserPwdList;
但我必须用一对一的方式,一个云,一个云,一个云,一个云,一个云,一个云,一个云,一个云,一个云,一个云,一个云,一个云,一个云?如果是,则将其更改为:@OneToOnemappedBy=user,fetch=FetchType.LAZY,cascade=CascadeType.ALL private CloudSvrPasswordsHistory UserPwdList;当我更新CloudSvrPasswordsStory的值时,它会为每个请求插入1个以上的数据,但我只需要为一次插入获取更新的数据
<context:annotation-config/>
<context:property-placeholder location="file:${propfilepath}/omnypay.properties"/>
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource" >
<property name="driverClassName" value="${jdbc.driverClassName}"/>
<property name="url" value="${jdbc.url}"/>
<property name="username" value="${jdbc.username}"/>
<property name="password" value="${jdbc.password}"/>
</bean>
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="annotatedClasses">
<list>
<value>com.omnypay.dao.bo.CloudSvrSecQuesMaster</value>
<value>com.omnypay.dao.bo.CloudSvrUser</value>
<value>com.omnypay.dao.bo.CloudSvrUsersProfile</value>
<value>com.omnypay.dao.bo.CloudSvrUsersSecQuestion</value>
<value>com.omnypay.dao.bo.CloudSvrTxn</value>
<value>com.omnypay.dao.bo.CloudSvrCardInfo</value>
<value>com.omnypay.dao.bo.CloudSvrBankInfo</value>
<value>com.omnypay.dao.bo.CloudSvrAccount</value>
<value>com.omnypay.dao.bo.CloudSvrPasswordsHistory</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">${jdbc.dialect}</prop>
<prop key="hibernate.show_sql">true</prop>
<prop key="hibernate.hbm2ddl.auto">update</prop>
</props>
</property>
</bean>
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory" />
<property name="dataSource" ref="dataSource" />
</bean>
<!-- DAO classes -->
<bean id="secQuestionDao" class="com.omnypay.dao.impl.SecurityQuestionDaoImpl">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<bean id="userDao" class="com.omnypay.dao.impl.UserDaoImpl">
</bean>
</beans>
Caused by: org.hibernate.AnnotationException: Unknown mappedBy in: com.omnypay.dao.bo.CloudSvrUser.UserPwdList, referenced property unknown: java.util.List.user
at org.hibernate.cfg.OneToOneSecondPass.doSecondPass(OneToOneSecondPass.java:129)
at org.hibernate.cfg.Configuration.secondPassCompile(Configuration.java:1130)
at org.hibernate.cfg.AnnotationConfiguration.secondPassCompile(AnnotationConfiguration.java:324)
at org.hibernate.cfg.Configuration.buildMappings(Configuration.java:1115)
at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:717)
at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1477)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1417)
... 42 more
@OneToOne(mappedBy="user",fetch=FetchType.LAZY,cascade=CascadeType.ALL)
private CloudSvrPasswordsHistory UserPwdList;
@OneToOne(mappedBy="user",fetch=FetchType.LAZY,cascade=CascadeType.ALL)
private List<CloudSvrPasswordsHistory> UserPwdList;
@OneToMany