一对一保存失败

问题描述

登陆用户信息:users.hbm.xml<?xml version="1.0" encoding="utf-8"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><!-- Mapping file autogenerated by MyEclipse Persistence Tools--><hibernate-mapping> <class name="com.po.Users" table="users"> <id name="id" type="java.lang.Integer"> <column name="id" /> <generator class="increment"/> </id> <one-to-one name="userinfos" cascade="all"></one-to-one> <property name="username" type="java.lang.String"> <column name="username" length="20" /> </property> <property name="password" type="java.lang.String"> <column name="password" length="20" /> </property> <property name="sort" type="java.lang.String"> <column name="sort" length="10" /> </property> </class></hibernate-mapping>用户详细信息:userinfos.hbm.xml<?xml version="1.0" encoding="utf-8"?><!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"><!-- Mapping file autogenerated by MyEclipse Persistence Tools--><hibernate-mapping> <class name="com.po.Userinfos" table="userinfos"> <id name="id" type="java.lang.Integer"> <column name="id" /> <generator class="foreign"> <param name="property">users</param> </generator> </id> <one-to-one name="users" class="com.po.Users" constrained="true"/> <property name="sex" type="java.lang.String"> <column name="sex" length="2" /> </property> <property name="registertime" type="java.util.Date"> <column name="registertime" length="19" not-null="true" /> </property> <property name="homeaddress" type="java.lang.String"> <column name="homeaddress" length="30" /> </property> <property name="post" type="java.lang.String"> <column name="post" length="10" /> </property> <property name="phone" type="java.lang.String"> <column name="phone" length="20" /> </property> <property name="cardno" type="java.lang.String"> <column name="cardno" length="30" /> </property> <property name="email" type="java.lang.String"> <column name="email" length="20" /> </property> <property name="birth" type="java.lang.String"> <column name="birth" length="20" /> </property> </class></hibernate-mapping>他们是一对一的关系测试类:public class Test {/** * @param args */public static void main(String[] args) {// TODO Auto-generated method stub Users u=new Users(); Userinfos userinfos=new Userinfos(); ApplicationContext ctx = new ClassPathXmlApplicationContext("applicationContext.xml"); u.setUsername("hisen"); u.setPassword("123456"); u.setSort("用户"); userinfos.setCardno("333"); userinfos.setUsers(u); u.setUserinfos(userinfos); IUserDao userDao=(IUserDao)ctx.getBean("userDao"); userDao.saveUser(u); }保存的时候出现错误:Exception in thread "main" org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'sessionFactory' defined in class path resource [applicationContext.xml]: Invocation of init method failed; nested exception is org.hibernate.MappingException: could not instantiate id generatorat org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1336)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:471)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)at java.security.AccessController.doPrivileged(Native Method)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:220)at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:423)at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:381)at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:83)at com.Test.main(Test.java:19)Caused by: org.hibernate.MappingException: could not instantiate id generatorat org.hibernate.id.IdentifierGeneratorFactory.create(IdentifierGeneratorFactory.java:98)at org.hibernate.mapping.SimpleValue.createIdentifierGenerator(SimpleValue.java:152)at org.hibernate.impl.SessionFactoryImpl.<init>(SessionFactoryImpl.java:192)at org.hibernate.cfg.Configuration.buildSessionFactory(Configuration.java:1294)at org.springframework.orm.hibernate3.LocalSessionFactoryBean.newSessionFactory(LocalSessionFactoryBean.java:814)at org.springframework.orm.hibernate3.LocalSessionFactoryBean.buildSessionFactory(LocalSessionFactoryBean.java:732)at org.springframework.orm.hibernate3.AbstractSessionFactoryBean.afterPropertiesSet(AbstractSessionFactoryBean.java:211)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1367)at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1333)... 15 moreCaused by: org.hibernate.MappingException: param named "property" is required for foreign id generation strategyat org.hibernate.id.ForeignGenerator.configure(ForeignGenerator.java:82)at org.hibernate.id.IdentifierGeneratorFactory.create(IdentifierGeneratorFactory.java:94)... 23 more不知道哪里配置错了

解决方案

sessionFactory估计你的spring接管hibernate的地方配置不对吧

时间: 2025-01-21 04:59:31

一对一保存失败的相关文章

微信公众号多图文素材编辑完成保存失败该怎么解决?

本文以图文结合的形式告诉大家怎么解决公众号多图文素材编辑完成保存失败的问题 1.其实这个是大家对多图文的理解偏差造成的,所谓的多图文,不是"多图"文,而是"多"图文,也就是说并不是一个文章里有多张图就是多图文,而是至少两篇文章组成一组文章才能被称为多图文.每个文章里面有几张图并不是重点,重点是"多图文"至少是两篇文章组成一个文章组才能被成为"多"图文.所以如果大家想发一篇文章里有多个图片,那么应该选择单图文,只有在需要发布多篇

C# ASP.NET查找数据生成Excel时提示保存,但保存失败,重新下载后保存成功但是打开时提示文件已经损坏!Excel2010,请指教,谢谢!

问题描述 C#ASP.NET查找数据生成Excel时提示保存,但保存失败,重新下载后保存成功但是打开时提示文件已经损坏!Excel2010,请指教,谢谢!我的下载方法代码如下:publicvoidDownLoad(stringExcelName,stringFileName){try{if(!String.IsNullOrEmpty(ExcelName)||!String.IsNullOrEmpty(FileName)){Response.Charset="GB2312";Respon

:( 用多线程向Access中成批导入数据时,开始执行一段时间没问题,再后就保存失败了。

问题描述 用多线程向Access中成批导入数据时,开始执行一段时间没问题,再后就保存失败了.向Access中添加数据的语句没有错误,用SQL2K试过没有问题.得到在向获取Access添加数据时的错误为"未明确的错误".估计可能是添加数据时,Access成受不了了,所以才报错.但想想应该是有什么办法可以解决的.向Access添加数据的部分如下://保存数据到AccesspublicstringInfoSave(stringstrDBFile,string[]Info){try{strin

有道云笔记显示保存失败怎么办?

  出现此问题一般是由于笔记内容有特殊格式导致笔记无法保存. 您可以把此篇笔记复制到新的笔记中(建议选择纯文本黏贴),删除此篇笔记再同步一下试试.

cookie的值保存失败-cookie保存不了,代码如下

问题描述 cookie保存不了,代码如下 if (Response.Cookies["User"].Value == null) { Label1.Text = (Session["User"] as Users).UserName + "欢迎你!"; HttpCookie h = new HttpCookie("User"); h.Values.Add("DateTime", DateTime.Now.T

保存失败!~ 大家帮我看看啊

问题描述 <hibernate-mapping>     <class name="org.vo.Type" table="type">         <id name="typeid" type="java.lang.Integer">             <column name="typeid">             <generator

Magento 数据保存失败什么原因

部分字段内容太多以致超出该字段在数据表中的限制 尝试修改该字段在数据表中的限制或者修改字段类型.以下是一些类型字段的长度限制: TEXT – 64K MEDIUMTEXT – 16M LONGTEXT – 4G   post 数据的大小超出服务器限制 尝试通过修改 .htaccess 或者服务器设置,增加 php 的 post_max_size 值.   post 数据的数量超出服务器限制 尝试通过修改 .htaccess 或者服务器设置,增加 php 的 max_input_vars 值.  

以普通用户启动的Vim如何保存需要root权限的文件

在Linux上工作的朋友很可能遇到过这样一种情况,当你用Vim编辑完一个文件时,运行:wq保存退出,突然蹦出一个错误: E45: 'readonly' option is set (add ! to override) 这表明文件是只读的,按照提示,加上!强制保存::w!,结果又一个错误出现: "readonly-file-name" E212: Can't open file for writing 文件明明存在,为何提示无法打开?这错误又代表什么呢?查看文档:help E212:

ASP.NET 状态的传递和保存

1,HTTP协议是无状态的.服务器不会记住上次给浏览器的处理结果,如果需要上次处理结果(上次状态)就需要浏览器把处理结果值(上次状态)再次给服务器. 2,URL传值:通过URL参数或者通过Form表单进行页面件的传值 (不能做到很自由的存取和读取,而且不安全) 3,Cookie :①Cookie可以用来进行更加自由的数据的存取和读取.  ②Cookie是和站点相关的,自己域名写的只有自己的域名才可以读取.  ③客户端向服务器发送请求的时候 处理发送Form表单信息以外还会把和站点有关的所有的Co