在测试JPA的过程中,对象用'Table'命名,关键字,结果会怎样?死翘翘,hibernate 3.3.1
ERROR [JDBCExceptionReporter] You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'Table (title) values (null)' at line 1
真是不敢想象啊。hibernate都这把年纪了,还没解决这种低级问题@_@
从代码看了半天, Dialect似乎有Quote支持,还有openquote和closequote,但是好像只有query的时候会用到。
OK, 我们改名为Demo,没有报错,但是更诡异的状况发生了:
mo = em.merge(mo);
这个mo如果以前主键是自增的,并且已经赋值,原来是deattached状态,现在会变成attached状态,但是,id也会自动变成最新值。。。。。。。
换成Foo后一切正常。。。。。。
那么关键字怎么办呢?官方文档中答案:
5.4. SQL quoted identifiers
使用`,就是波浪号~那个键
<class name="LineItem" table="`Line Item`">
<id name="id" column="`Item Id`"/><generator class="assigned"/></id>
<property name="itemNumber" column="`Item #`"/>
...
</class>
那么那些单词是关键词呢?不清楚,怀疑一切吧~~
分享到:
相关推荐
在使用Hibernate进行数据库操作时,可能会遇到MySQL数据库中文排序不正确的问题。这通常是由于字符集设置、数据库...通过以上步骤,可以有效地解决MySQL数据库在Hibernate中的中文排序问题,确保数据的正确展示和检索。
2. **HIBERNATE - Relational Persistence for Idiomatic Java.pdf**:这本书可能详细介绍了Hibernate如何实现Java中的关系数据持久化,可能会包含最佳实践和示例代码。 3. **Hibernate 中文API文档.chm**:这是...
3. 实体类和映射文件:在Hibernate中,每个Java实体类都对应着数据库中的一个表,通过XML映射文件(hbm.xml)或注解方式来定义字段与表字段的对应关系。实体类通常需要继承Hibernate的Serializable接口,并使用@...
任何框架都有自身的能力范围,就拿Hibernate和Mybatis这两个ORM框架来说。 Hibernate封装了很多有用的API给开发者,降低了操作数据库的难度和复杂度,同时也减少了模板代码的数量,但Hibernate留给开发者可操作的...
它必须重新实现equals()和hashCode()方法, 始终和组合关键字在数据库中的概念保持一致 注意:在Hibernate3中,第二个要求并非是Hibernate强制必须的。但最好这样做。 你不能使用一个IdentifierGenerator产生组合...
1. 实体(Entity):在Hibernate中,实体对应数据库中的表,通过@Entity注解声明。 2. 映射(Mapping):实体和数据库表之间的关系通过XML或注解进行定义,包括字段映射、关联映射等。 3. 会话(Session):它是持久...
在这个例子中,Service层可能包含一个`queryByKeywordAndPage`方法,该方法接受关键字和分页参数,通过JDBC执行SQL查询以获取匹配数据,并返回结果集。 JDBC(Java Database Connectivity)是Java与数据库交互的...
2. **实体类(Entity)**: 在Hibernate中,一个Java类可以被标记为实体类,代表数据库中的一个表。通过使用`@Entity`注解,我们可以将类与数据库表关联起来。 3. **配置文件(Hibernate.cfg.xml)**: 这个XML文件...
"自动生成 Hibernate 映射文件和实体类" 自动生成 Hibernate 映射文件和实体类是使用 MyEclipse 工具来实现的,这可以大大提高开发效率,减少开发时间。下面将详细介绍如何使用 MyEclipse 自动生成 Hibernate 映射...
然而,在使用Hibernate时,开发者可能会遇到一些性能问题,其中N+1问题和缓存问题尤为突出。 N+1问题是指当应用程序使用Hibernate进行数据库查询时,可能会导致执行多条SQL语句,从而导致性能下降。具体来说,在...
- 详细解释Hibernate中的实例状态管理机制,如瞬态、持久化、分离等状态。 - **2.3 JMX整合** - 描述如何使用Java Management Extensions (JMX)来监控和管理Hibernate实例。 - **2.4 对JCA的支持** - 介绍...
该书会详细讲解如何在实际开发环境中设置和使用Hibernate,如整合Spring框架、处理关联映射、优化查询性能等。 《Hibernate的两本英文书籍》可能指的是更深入的原版文档或者专业著作,这些书籍通常会包含最新的技术...
【标题】与【描述】提及的是“Hibernate面试题专栏”,主要涵盖了全面的Hibernate面试题、笔试题以及相关问题,这表明我们将要讨论的是Java领域中著名的对象关系映射框架——Hibernate的相关知识。Hibernate是一个...
为了解决这一问题,两个工具——hibernate-extensions和Middlegen-Hibernate应运而生,它们可以自动生成这些代码,提高了开发效率。 **hibernate-extensions** 是Hibernate框架的一个扩展,它提供了一些额外的功能...
4. **Session与Transaction**:在Hibernate中,Session是与数据库交互的主要接口,而Transaction则负责管理事务。手册会解释Session的生命周期、查询操作、事务的提交与回滚,以及如何处理并发问题。 5. **HQL与...
Eclipse中Hibernate简单配置和使用 Eclipse中配置和使用Hibernate框架是Java开发中常见的数据库持久化解决方案。...但需要注意的是,Hibernate的配置和使用需要遵循一定的步骤和规范,以避免出现问题。
这些文档对于学习和掌握Hibernate至关重要,无论你是初学者还是经验丰富的开发者,都能从中找到对应的信息来解决特定问题。通过深入学习和实践,可以提高开发效率,减少与数据库交互时的错误,并使代码更加整洁和...
hibernate概述,hibernate入门Demo,hibernate配置文件详解(全局配置,实体类映射配置),配置实体规则,核心API详解(Configuration,sessionFactory,session,Transaction),hibernate中的对象状态以及刷新能缓存机制 ...
开发者指南针对实际开发过程中的常见问题和最佳实践提供了指导,涵盖了如事务处理、性能优化、二阶缓存使用、多数据源管理等内容。此外,还讲解了如何集成Spring框架,实现声明式事务管理。 五、入门指南 入门指南...
6. 事务管理:讲解Hibernate中的事务概念、事务的隔离级别、传播行为等。 7. 高级特性:涵盖缓存策略、延迟加载、性能优化、二级缓存的配置与使用等。 8. 集成与扩展:如何将Hibernate与其他Java EE技术进行整合,...