新人求助,hibernate entityname的Unknown entity问题

匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。匿名用户不能发表回复!|
每天回帖即可获得10分可用分!小技巧:
你还可以输入10000个字符
(Ctrl+Enter)
请遵守CSDN,不得违反国家法律法规。
转载文章请注明出自“CSDN(www.csdn.net)”。如是商业用途请联系原作者。2014年7月 Java大版内专家分月排行榜第二
2015年1月 Java大版内专家分月排行榜第三2014年8月 Java大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。查看:2771|回复:19
log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
log4j:WARN Please initialize the log4j system properly.
Exception in thread &main& org.springframework.beans.factory.xml.XmlBeanDefinitionStoreException: Line 53 in XML document from class path resource [applicationContext.xml] nested exception is org.xml.sax.SAXParseException: cvc-complex-type.2.3: Element 'beans' cannot have character [children], because the type's content type is element-only.
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:404)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:342)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.loadBeanDefinitions(XmlBeanDefinitionReader.java:310)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:143)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:178)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:149)
at org.springframework.beans.factory.support.AbstractBeanDefinitionReader.loadBeanDefinitions(AbstractBeanDefinitionReader.java:212)
at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:113)
at org.springframework.context.support.AbstractXmlApplicationContext.loadBeanDefinitions(AbstractXmlApplicationContext.java:80)
at org.springframework.context.support.AbstractRefreshableApplicationContext.refreshBeanFactory(AbstractRefreshableApplicationContext.java:123)
at org.springframework.context.support.AbstractApplicationContext.obtainFreshBeanFactory(AbstractApplicationContext.java:422)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:352)
at org.springframework.context.support.ClassPathXmlApplicationContext.&init&(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.&init&(ClassPathXmlApplicationContext.java:83)
at com.wq.domain.Test.main(Test.java:12)
Caused by: org.xml.sax.SAXParseException: cvc-complex-type.2.3: Element 'beans' cannot have character [children], because the type's content type is element-only.
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.createSAXParseException(Unknown Source)
at com.sun.org.apache.xerces.internal.util.ErrorHandlerWrapper.error(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLErrorReporter.reportError(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator$XSIErrorReporter.reportError(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.reportSchemaError(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.elementLocallyValidComplexType(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.elementLocallyValidType(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.processElementContent(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.handleEndElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.xs.XMLSchemaValidator.endElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLNSDocumentScannerImpl.scanEndElement(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl$FragmentContentDispatcher.dispatch(Unknown Source)
at com.sun.org.apache.xerces.internal.impl.XMLDocumentFragmentScannerImpl.scanDocument(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XML11Configuration.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.XMLParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.parsers.DOMParser.parse(Unknown Source)
at com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderImpl.parse(Unknown Source)
at org.springframework.beans.factory.xml.DefaultDocumentLoader.loadDocument(DefaultDocumentLoader.java:75)
at org.springframework.beans.factory.xml.XmlBeanDefinitionReader.doLoadBeanDefinitions(XmlBeanDefinitionReader.java:396)
... 14 more
本帖最后由 yuke198907 于
13:00 编辑
配置文件贴出,哪里getBean() 也贴出 我帮你瞧瞧
天天好心情~~~
引用:原帖由 wu89757abc 于
20:42 发表
log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
log4j:WARN Please initialize the log4j system properly.
Exception in thread &mai ... log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
log4j:WARN Please initialize the log4j system properly.
Exception in thread &main& org.hibernate.exception.GenericJDBCException: Cannot open connection
& & & & at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:126)
& & & & at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:114)
& & & & at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
& & & & at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:52)
& & & & at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:449)
& & & & at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:167)
& & & & at org.hibernate.jdbc.JDBCContext.connection(JDBCContext.java:142)
& & & & at org.hibernate.transaction.JDBCTransaction.begin(JDBCTransaction.java:85)
& & & & at org.hibernate.impl.SessionImpl.beginTransaction(SessionImpl.java:1353)
& & & & at com.wq.domain.Test.main(Test.java:17)
Caused by: mons.dbcp.SQLNestedException: Cannot create PoolableConnectionFactory (Unknown database 'myshh')
& & & & at mons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1225)
& & & & at mons.dbcp.BasicDataSource.getConnection(BasicDataSource.java:880)
& & & & at org.springframework.orm.hibernate3.LocalDataSourceConnectionProvider.getConnection(LocalDataSourceConnectionProvider.java:82)
& & & & at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:446)
& & & & ... 5 more
Caused by: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown database 'myshh'
& & & & at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)
& & & & at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)
& & & & at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:812)
& & & & at com.mysql.jdbc.MysqlIO.secureAuth411(MysqlIO.java:3269)
& & & & at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1182)
& & & & at com.mysql.jdbc.Connection.createNewIO(Connection.java:2670)
& & & & at com.mysql.jdbc.Connection.&init&(Connection.java:1531)
& & & & at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
& & & & at mons.dbcp.DriverConnectionFactory.createConnection(DriverConnectionFactory.java:38)
& & & & at mons.dbcp.PoolableConnectionFactory.makeObject(PoolableConnectionFactory.java:294)
& & & & at mons.dbcp.BasicDataSource.validateConnectionFactory(BasicDataSource.java:1247)
& & & & at mons.dbcp.BasicDataSource.createDataSource(BasicDataSource.java:1221)
& & & & ... 8 more
引用:原帖由 yuke198907 于
21:48 发表
applicationContent.xml配置错了吧……异常信息说的很清楚了…… 又改了一下,报别的错了
引用:原帖由 java_along 于
22:31 发表
配置文件贴出,哪里getBean() 也贴出 我帮你瞧瞧 package com.wq.
import org.hibernate.S
import org.hibernate.SessionF
import org.hibernate.T
import org.springframework.context.ApplicationC
import org.springframework.context.support.ClassPathXmlApplicationC
import com.wq.domain.E
public class Test {
& & & & public static void main(String[] args) {
& & & & ApplicationContext ac=new ClassPathXmlApplicationContext(&applicationContext.xml&);
& & & & SessionFactory sf=(SessionFactory) ac.getBean(&sessionFactory&);
& & & & Session s=sf.openSession();
& & & & Employee employee=new Employee(&aa&,&bb&,new java.util.Date(),2f);
& & & & Transaction tx=s.beginTransaction();
& & & & s.save(employee);
& & & & tx.commit();
助理工程师
引用:原帖由 wu89757abc 于
09:45 发表
又改了一下,报别的错了 会不会是hibernate 的配置出错了???
引用:原帖由 peiquan 于
10:59 发表
会不会是hibernate 的配置出错了??? &?xml version=&1.0& encoding=&utf-8&?&
&beans xmlns=&http://www.springframework.org/schema/beans&
& & & & & & & & xmlns:xsi=&http://www.w3.org/2001/XMLSchema-instance&
& & & & & & & & xmlns:context=&http://www.springframework.org/schema/context&
& & & & & & & & xmlns:tx=&http://www.springframework.org/schema/tx&
& & & & & & & & xsi:schemaLocation=&http://www.springframework.org/schema/beans
& & & & & & & & & & & & & & & &
& & & & & & & & & & & & & & & &
&!-- 启用注解扫描 --&
&context:annotation-config/&
&!-- 配置和一个testService对象 --&
&bean id=&testServcie& class=&com.wq.domain.TestService&&
&property name=&name& value=&test&/&
&!-- 配置数据源 --&
&bean id=&dataSource& class=&mons.dbcp.BasicDataSource& destroy-method=&close&&
& && &&&&property name=&driverClassName& value=&com.mysql.jdbc.Driver&/&
& && &&&&property name=&url& value=&jdbc:mysql://127.0.0.1:3306/myshh&/&
& && &&&&property name=&username& value=&root&/&
& && &&&&property name=&password& value=&wq&/&
& & & && && &&!-- 连接池启动时的初始值 --&
& & & & & & & & &property name=&initialSize& value=&30&/&
& & & &&&& & & & &!-- 连接池的最大值 --&
& & & &&&& & & & &property name=&maxActive& value=&500&/&
& & & & & & & & &!-- 最大空闲值.当经过一个高峰时间后,连接池可以慢慢将已经用不到的连接慢慢释放一部分,一直减少到maxIdle为止 --&
& & & & & & & & &property name=&maxIdle& value=&2&/&
& & & & & & & & &!--&&最小空闲值.当空闲的连接数少于阀值时,连接池就会预申请去一些连接,以免洪峰来时来不及申请 --&
& & & & & & & & &property name=&minIdle& value=&1&/&
&!-- 配置会话工厂() --&
&bean id=&sessionFactory&&&class=&org.springframework.orm.hibernate3.LocalSessionFactoryBean&&
& &&&&!-- 设置数据源 --&
& &&&&property name=&dataSource& ref=&dataSource&/&
& &&&&!-- 接管了hibernate对象映射文件 --&
& &&&&property name=&mappingResources&&
& & & && &&&&list&
& & & && && & &value&com/wq/domain/Employee.hbm.xml&/value&
& & & && &&&&/list&
& &&&&/property&
& &&&&property name=&hibernateProperties&&
& & & && &&&&value&
& & & && && && && & & & hibernate.dialect=org.hibernate.dialect.OracleDialect
& & & && && && && & & & hibernate.hbm2ddl.auto=update
& & & & & & & & & & & & & & & & hibernate.show_sql=false
& & & & & & & & & & & & & & & && && &
& & & &&&&/value&
& & &/property&
是自己建了个测试类,想在mysql5.5中,通过实体类和实体类的配置文件,自动映射生成表,并添加数据
引用:原帖由 wu89757abc 于
11:24 发表
是自己建了个测试类,想在mysql5.5中,通过实体类和实体类的配置文件,自动映射生成表,并添加数据 log4j:WARN No appenders could be found for logger (org.springframework.context.support.ClassPathXmlApplicationContext).
log4j:WARN Please initialize the log4j system properly.
Exception in thread &main& org.hibernate.exception.SQLGrammarException: could not get next sequence value
& & & & at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:90)
& & & & at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:66)
& & & & at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:119)
& & & & at org.hibernate.event.def.AbstractSaveEventListener.saveWithGeneratedId(AbstractSaveEventListener.java:122)
& & & & at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.saveWithGeneratedOrRequestedId(DefaultSaveOrUpdateEventListener.java:210)
& & & & at org.hibernate.event.def.DefaultSaveEventListener.saveWithGeneratedOrRequestedId(DefaultSaveEventListener.java:56)
& & & & at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.entityIsTransient(DefaultSaveOrUpdateEventListener.java:195)
& & & & at org.hibernate.event.def.DefaultSaveEventListener.performSaveOrUpdate(DefaultSaveEventListener.java:50)
& & & & at org.hibernate.event.def.DefaultSaveOrUpdateEventListener.onSaveOrUpdate(DefaultSaveOrUpdateEventListener.java:93)
& & & & at org.hibernate.impl.SessionImpl.fireSave(SessionImpl.java:562)
& & & & at org.hibernate.impl.SessionImpl.save(SessionImpl.java:550)
& & & & at org.hibernate.impl.SessionImpl.save(SessionImpl.java:546)
& & & & at com.wq.domain.Test.main(Test.java:18)
Caused by: com.mysql.jdbc.exceptions.MySQLSyntaxErrorException: Unknown table 'hibernate_sequence' in field list
& & & & at com.mysql.jdbc.SQLError.createSQLException(SQLError.java:936)
& & & & at com.mysql.jdbc.MysqlIO.checkErrorPacket(MysqlIO.java:2870)
& & & & at com.mysql.jdbc.MysqlIO.sendCommand(MysqlIO.java:1573)
& & & & at com.mysql.jdbc.MysqlIO.sqlQueryDirect(MysqlIO.java:1665)
& & & & at com.mysql.jdbc.Connection.execSQL(Connection.java:3176)
& & & & at com.mysql.jdbc.PreparedStatement.executeInternal(PreparedStatement.java:1153)
& & & & at com.mysql.jdbc.PreparedStatement.executeQuery(PreparedStatement.java:1266)
& & & & at mons.dbcp.DelegatingPreparedStatement.executeQuery(DelegatingPreparedStatement.java:93)
& & & & at org.hibernate.id.SequenceGenerator.generate(SequenceGenerator.java:98)
& & & & ... 10 more
应该是hibernate文件.hbm中主键自增长时没有得到sequence的错误
引用:原帖由 yfy_1988 于
14:23 发表
应该是hibernate文件.hbm中主键自增长时没有得到sequence的错误 mysql,好像不行。没有sequence
引用:原帖由 yuke198907 于
09:23 发表
mysql的好像可以自增长吧 嗯,我弄成&generator class=&increment&/& 了,但是还是需要自己先建表,才能添加数据,不能通过实体类和映射配置文件,自动建表。。
引用:原帖由 yuke198907 于
11:54 发表
可以自动建表呀,在hibernate.cfg.xml中配置update就可以了。
update:表示自动根据model对象来更新表结构,启动hibernate时会自动检查数据库,如果缺少表,则自动建表;如果表里缺少列,则自动添加列。
还有其他的参数:
create ... &!-- 配置会话工厂() --&
&bean id=&sessionFactory&&&class=&org.springframework.orm.hibernate3.LocalSessionFactoryBean&&
& &&&&!-- 设置数据源 --&
& &&&&property name=&dataSource& ref=&dataSource&/&
& &&&&!-- 接管了hibernate对象映射文件 --&
& &&&&property name=&mappingResources&&
& & & && &&&&list&
& & & && && & &value&com/wq/domain/Employee.hbm.xml&/value&
& & & && &&&&/list&
& &&&&/property&
& &&&&property name=&hibernateProperties&&
& & & && &&&&value&
& & & && && && && & & & hibernate.dialect=org.hibernate.dialect.OracleDialect
& & & && && && && & & & hibernate.hbm2ddl.auto=update
& & & & & & & & & & & & & & & & hibernate.show_sql=false
& & & & & & & & & & & & & & & && && &
& & & &&&&/value&
& & &/property&
我有配。。。但是还是不行。会报错。。弄不出来
引用:原帖由 yuke198907 于
19:56 发表
整合到spring里了啊…… 嗯,会报错,搞不定,最后放弃了,自己建表了。
那个hibernate的的方言设置&&你设置的是oracle的&&应该还有其他的吧
& & &property name=&hibernateProperties&&
& && && && &&value&
& && && && && && && && &hibernate.dialect=org.hibernate.dialect.OracleDialect
& && && && && && && && &hibernate.hbm2ddl.auto=update
& && && && && && && && && && &&&hibernate.show_sql=false
& && && && && && && && && && && && &&&
& && && &&/value&
引用:原帖由 yuke198907 于
07:35 发表
这个得和数据库有关吧…… 是啊&&但是你要其他数据库&&这里你设置的是oracle
引用:原帖由 walqwanba 于
13:15 发表
是啊&&但是你要其他数据库&&这里你设置的是oracle 别人是用sqlserver,可行。。我用mysql不行。
。。改成 increment 不行?&&mysql 没有 sequence 增长&&但是 可以autoincrement 自增长 sequence是oracle的&&或者 你也可以改为native 自动匹配本地访问的是什么数据库 他就会&&自动 选择 sequence还是 increment
天天好心情~~~
引用:原帖由 yuke198907 于
11:54 发表
可以自动建表呀,在hibernate.cfg.xml中配置update就可以了。
update:表示自动根据model对象来更新表结构,启动hibernate时会自动检查数据库,如果缺少表,则自动建表;如果表里缺少列,则自动添加列。
还有其他的参数:
create ... 谢谢知道哪错了,是数据库的方言写错了。。有一句用了oracle的方言,我改成hibernate.dialect=org.hibernate.dialect.MySQLDialect这样,就可以了
引用:原帖由 java_along 于
09:48 发表
。。改成 increment 不行?&&mysql 没有 sequence 增长&&但是 可以autoincrement 自增长 sequence是oracle的&&或者 你也可以改为native 自动匹配本地访问的是什么数据库 他就会&&自动 选择 sequence还是 increment ... ,是数据库的方言写错了。。有一句用了oracle的方言,我改成mysql就可以了
解决了就好~

我要回帖

更多关于 hibernateentity 树 的文章

 

随机推荐