hibernate
newStrongBoy
这个作者很懒,什么都没留下…
展开
-
Hibernate学习之---SQL查询
SQL查询是通过SQLQuery接口来表示的。SQLQuery接口是Query接口的子接口,因此完全可以调用Query接口的方法。执行SQL查询的步骤是:获取Hibernate Session对象。编写SQL语句。以SQL语句作为参数,调用Session的createSQLQuery()方法创建查询对象。调用SQLQuery对象的addScalar()或addEntity()方法将选出的结果原创 2017-08-07 21:39:20 · 819 阅读 · 0 评论 -
org.apache.jasper.JasperException: The absolute uri: http://java.sun.com/jsp
在使用maven管理项目时,jstl需用同时引用两个jar包。<dependency> <groupId>jstl</groupId> <artifactId>jstl</artifactId> <version>1.2</version></dependency>原创 2018-03-21 20:30:49 · 310 阅读 · 0 评论 -
org.hibernate.UnknownEntityTypeException: Unable to locate persister: com.taotao.pojo.TbItem
首先这是我的项目路径,java 是 Sources Root , resources 是 Resources Root ,放了所需要的配置文件,其中 Hibernate 的配置,显示的是绿色,说明没有问题在 eclipse 中,这样是行得通的,运行也没问题。但是在 IDEA 中会报这样一个错误Caused by: org.hibernate.boot.MappingNotFoundExceptio...转载 2018-03-19 01:23:42 · 1571 阅读 · 0 评论 -
使用maven tomcat7插件启动项目时出现错误java.lang.LinkageError
HTTP Status 500 - java.lang.LinkageError: loader constraint violation: when resolving interface method "javax.servlet.jsp.JspApplicationContext.getExpressionFactory()Ljavax/el/ExpressionFactory;" the原创 2018-02-02 18:07:20 · 1341 阅读 · 1 评论 -
org.hibernate.HibernateException: HHH000142: Javassist Enhancement failed: crm.domain.BaseDict
原因:Struts2的jar包与Hibernate的jar包重复。 解决方法: 删除javassist.jar原创 2018-01-26 10:07:06 · 699 阅读 · 0 评论 -
Hibernate学习之---条件查询
条件查询是更具面向对象特色的数据查询方式,条件查询通过如下三个类完成:Criteria:代表一次查询。Criterion:代表一个查询条件。Restrictions:产生查询条件的工具类。执行条件查询的步骤:获取Hibernate的Session对象。以Session对象创建Criteria对象。使用Restrictions的静态方法创建Criterion查询条件。向Criteria原创 2017-08-07 13:44:56 · 480 阅读 · 0 评论 -
Hibernate学习之---使用HQL查询
1.HQL查询HQL是一种面向对象的查询。SQL的操作对象是数据表、列等数据库对象,而HQL的操作对象是类、实例、属性等。 HQL是完全面向对象的查询语句,因此可以支持继承、多态等特性。 HQL查询依赖于Query类,每个Query实例对应一个查询对象。使用步骤如下:获取Hibernate Session对象。编写HQL语句。以HQL语句作为参数,调用Session的createQuery原创 2017-08-07 12:14:33 · 529 阅读 · 0 评论 -
Hibernate学习之---Hibernate的批量处理
1.批量插入 private void addUsers() throws Exception{ Session session = HibernateUtil.currentSession(); Transaction tx = session.beginTransaction(); for(int i = 0;i < 10000;i++){原创 2017-08-06 14:26:06 · 299 阅读 · 0 评论 -
Hibernate学习之---继承映射
1.整个类层次对应一个表的映射策略整个类层次对应一个表的映射策略是Hibernate继承映射默认的映射策略,在这种映射策略下,多种类都存储在一个数据表中,这个数据表包含很多列,这些数据列是整个类层次中所有实体的全部属性的总和。 整个类层次中的所有实体都存放在一个数据表中,那么该如何分表一条记录到底属于哪个实体呢?为该表额外增加一列,使用该列来区分每行记录到底是哪个类的实例—这个列被称为辨别者列。原创 2017-08-06 14:08:32 · 288 阅读 · 0 评论 -
Hibernate学习之---Hibernate的关联映射
1.单向N-1关联单向的N-1关联只需从N的一端可以访问1的一端。 为了让两个持久化类支持这种关联映射,程序应该在N的一端的持久化类中增加一个属性,该属性引用1的一端的关联实体。 对于N-1关联,不管是单向还是双向,都需要在N的一端使用@ManyToOne修饰代表关联实体的属性。(1.)无连接表的N-1关联 对于无连接表的N-1关联而言,程序只要在N的一端增加一列外键,让外键值记录该原创 2017-08-06 11:41:27 · 302 阅读 · 0 评论 -
Hibernate学习之---传统的映射文件
Person.hbm.xml <!-- hibernate-mapping 是映射文件的根元素 --> <hibernate-mapping package="com.hyq.app"> <class name="Person" table="person"> <composite-id name="name" class="Name">原创 2017-08-05 21:35:23 · 302 阅读 · 0 评论 -
Hibernate学习之---映射组件属性
组件属性的意思是,持久化类的属性是一个复合类型的对象,在持久化过程中,它仅仅被当作值类型,而并非引用另一个持久化实体。 @Entiry @Table(name="person") public class Person{ ... private Name name; } @Embeddable public c原创 2017-08-05 21:24:40 · 387 阅读 · 0 评论 -
Hibernate学习之---深入Hibernate映射
1.映射属性在默认情况下,被@Entity修饰的持久化类的所有属性都会被映射到底层数据表。 Hibernate为属性映射提供了如下特殊的注解:@Formula:该注解的value属性可指定一个sql表达式,指定该属性的值将根据表达式来计算。持久化类对应的表中没有和计算属性对应的数据列,因为该属性值是动态计算出来的,无须保存到数据库。@Generated:设置该属性映射的数据列的值是否原创 2017-08-05 12:04:04 · 408 阅读 · 0 评论 -
Hibernate学习之---深入Hibernate配置文件
Hibernate是一个面向Java环境的对象/关系数据库映射工具,用于把面向对象模型表示的对象映射到基于SQL的关系模型的数据结构中。 Hibernate不仅仅管理Java类到数据库的映射(包括Java数据类型到SQL数据类型的映射),还提供数据查询获取数据的方法,可以大幅度减少开发时人工使用SQL和JDBC处理数据的时间。 在ORM框架中有一个非常重要的媒介:PO(持久化对象)。持久化对象的原创 2017-08-04 21:02:39 · 349 阅读 · 0 评论 -
Hibernate学习之---事件机制
Hibernate的事件框架由两个部分组成拦截器机制:对于特定动作拦截,回调应用中的特定动作。事件系统:重写Hibernate的事件监听器。1.拦截器通过Interceptor接口,可以从Session中回调应用程序的特定方法,这种回调机制可让应用程序在持久化对象被保存、更新、删除或加载之前,检查并修改其属性。使用拦截器的步骤:定义实现Interceptor接口的拦截器类。通过Sessio原创 2017-08-08 00:39:34 · 432 阅读 · 0 评论 -
Hibernate学习之---二级缓存和查询缓存
Hibernate包括两个级别的缓存:默认总是启用的Session级别的一级缓存。可选的SessionFactory级别的二级缓存。一旦在应用中开启了二级缓存,当Session需要抓取数据时,Session将会先查找一级缓存,再查找二级缓存,只有当一级缓存和二级缓存中都没有需要抓取的数据时,才会在查找底层数据库。1.开启二级缓存 hibernate.cfg.xml <proper原创 2017-08-08 00:14:18 · 344 阅读 · 0 评论 -
Hibernate学习之---事务控制
事务是一步或几步基本操作组成的逻辑执行单元,这些基本操作作为一个整体执行单元,它们要么全部执行,要么全部取消执行,绝不能仅仅执行部分。 事务具备4个特性:原子性、一致性、隔离性和持续性。1.Session与事务Hibernate的事务(Transaction对象)通过Session的beginTransaction()方法显示打开,Hibernate自身并不提供事务控制行为。 从编程角度来看,H原创 2017-08-07 23:38:20 · 385 阅读 · 0 评论 -
Hibernate学习之---数据过滤
数据过滤并不是一种常规的数据查询方法,而是一种整体的筛选方法。 如果一旦启用了数据过滤器,则不管数据查询还是数据加载,该过滤器将自动作用于所有数据,只有满足过滤条件的记录才会被选出来。过滤器使用分为三步:定义过滤器。使用Hibernate提供的@FilterDef注解定义过滤器。如果需要定义多个过滤器。还需要使用@FilterDefs注解来组合多个@FilterDef。使用过滤器。使用@Fil原创 2017-08-07 21:56:39 · 1103 阅读 · 0 评论 -
org.hibernate.HibernateException: Could not obtain transaction-synchronized Session for current thre
<filter> <filter-name>OpenSessionInViewFilter</filter-name> <filter-class>org.springframework.orm.hibernate4.support.OpenSessionInViewFilter</filter-cl...原创 2018-04-06 00:31:44 · 316 阅读 · 0 评论