hibernate框架
不讲理的胖子
生命那是一场恢弘的等待,唯一的结局只是在那霏霏中睡去。就算全世界都否定你,你要相信你自己,当你放下面子赚钱的时候,说明你已经懂事了。当你用钱赚回面子的时候,说明你已经成功了。当你用面子可以赚钱的时候,说明你已经是人物了。
展开
-
Hibernate中get和load方法的区别
这次我们来谈一下Hibernate3.2 Session加载数据时get和load方法的区别(Hibernate 3以后的版本就用get()方法取代find()这个方法了),其实这个在网上有很多的论述,可大多语焉不详或经不起实践的推敲,让很多初学者学的满腹疑窦,现在我给大家讲解一下:1. 对于Hibernate get方法,Hibernate会确认一下该id对应的数据是否存在,首先在sessi原创 2013-01-17 09:10:45 · 526 阅读 · 0 评论 -
Hibernate4实战 之第六部分:基本实现原理
整体流程 1:通过configuration来读cfg.xml文件 2:得到SessionFactory 工厂 3:通过SessionFactory 工厂来创建Session实例 4:通过Session打开事务 5:通过session的api操作数据库 6:事务提交 7:关闭连接 说明:以下分方法描述的实现流程并不是Hibernate的完整实现流程,也不是H原创 2013-05-11 01:35:16 · 645 阅读 · 0 评论 -
Hibernate4实战 之第七部分:最佳实践
设计细颗粒度的持久类并且使用来实现映射。 例如使用一个Address持久类来封装 street, suburb, state, postcode. 这将有利于代码重用和简化代码重构(refactoring)的工作。对持久类声明标识符属性( identifier properties)。 Hibernate中标识符属性是可选的,不过有很多原因来说明你应该使用标识符属性。我们建议标识符原创 2013-05-11 01:36:42 · 593 阅读 · 0 评论 -
Hibernate4实战 之 第二部分:Hibernate的基本配置
可编程的配置方式-1 如果在配置cfg.xml的时候,不想在里面配置hbm.xml怎么办呢?可在程序里使用可编程的配置方式,也就是使用程序来指定在cfg.xml里面的配置信息,不推荐这种方式。如下:Configuration cfg = new Configuration() .addResource("Item.hbm.xml") .addResour原创 2013-05-11 01:32:00 · 859 阅读 · 0 评论 -
Hibernate4实战 之 第四部分:关系映射
数据表之间的关系分为三类:一对一、一对多、多对多 一对一数据表(部门表 和 部门主管表) 一对多数据表(部门表 和 部门下的人员表) 多对多数据表(部门表 和 人员表) 根据相互寻找的关系又分:单向和双向 对象一对一 (双向) java代码:查看复制到剪贴板打印public class A { privat原创 2013-05-11 01:33:53 · 846 阅读 · 0 评论 -
Hibernate4实战 之 第一部分 Hibernate入门
Hibernate是什么 Hibernate是一个轻量级的ORMapping框架 ORMapping原理(Object Relational Mapping) ORMapping基本对应规则: 1:类跟表相对应 2:类的属性跟表的字段相对应 3:类的实例与表中具体的一条记录相对应 4:一个类可以对应多个表,一个表也可以对应对个类 5:原创 2013-05-11 01:31:18 · 632 阅读 · 0 评论 -
web.xml配置的详细说明
1 定义头和根元素部署描述符文件就像所有XML文件一样,必须以一个XML头开始。这个头声明可以使用的XML版本并给出文件的字符编码。DOCYTPE声明必须立即出现在此头之后。这个声明告诉服务器适用的servlet规范的版本(如2.2或2.3)并指定管理此文件其余部分内容的语法的DTD(Document Type Definition,文档类型定义)。所有部署描述符文件的顶层(根)元原创 2013-05-14 09:45:20 · 762 阅读 · 0 评论 -
spring配置SessionFactory ,transactionManager以及其他特性
<beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:tx="http://www.spri原创 2013-05-14 11:37:48 · 1147 阅读 · 0 评论 -
ssh框架连不同的数据库配置
在配置文件applicationContext.xml设置如下: <beansxmlns="http://www.springframework.org/schema/beans"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://www.springframework原创 2013-04-24 09:36:10 · 1878 阅读 · 0 评论 -
用Hibernate进行对象的持久化
这里主要考虑的一种数据的解决方案是:通过DAO(Data Accss Object)和ORM(Object Relational Mapping)实现数据的持久化操作。在这种数据持久化实现方案中,通过DAO来实现对Java对象与数据库中数据之间的相互转换,同时他还包括了数据库的连接管理、事务管理以及对象的缓冲管理等功能。这种数据持久化解决方案的实现方法的示意图图下:业务层--->DAO--原创 2013-01-17 09:11:48 · 1010 阅读 · 0 评论 -
Hibernate4实战 之第五部分:Hibernate的事务和并发
Hibernate本身没有事务的实现 Hibernate 直接使用 JDBC 连接和 JTA 资源,不添加任何附加锁定行为。也就是说你在Hibernate里面使用的事务要么是JDBC的事务,要么是JTA的事务。Hibernate不锁定内存中的对象 你的应用程序会按照你的数据库事务的隔离级别规定的那样运作,真正对事务的实现和支持也依赖于数据库。 对于并发处理,Hibern原创 2013-05-11 01:34:30 · 728 阅读 · 0 评论 -
Hibernate4实战 之 第三部分:Hibernate的基本开发
1:瞬时(Transient) - 由new操作符创建,且尚未与Hibernate Session 关联的对象被认定为瞬时的。瞬时对象不会被持久化到数据库中,也不会被赋予持久化标识(identifier)。 如果瞬时对象在程序中没有被引用,它会被垃圾回收器销毁。 使用Hibernate Session可以将其变为持久状态,Hibernate会自动执行必要的SQL语句。 2:持久(Pe原创 2013-05-11 01:33:03 · 763 阅读 · 0 评论 -
用户权限管理
实现业务系统中的用户权限管理--设计篇 B/S系统中的权限比C/S中的更显的重要,C/S系统因为具有特殊的客户端,所以访问用户的权限检测可以通过客户端实现或通过客户端+服务器检测实现,而B/S中,浏览器是每一台计算机都已具备的,如果不建立一个完整的权限检测,那么一个“非法用户”很可能就能通过浏览器轻易访问到B/S系统中的所有功能。因此B/S业务系统都需要有一个或多个权限系统来实现访问权限原创 2013-05-06 15:28:42 · 884 阅读 · 0 评论 -
Java开源项目Hibernate包作用详解
Hibernate一共包括了23个jar包,令人眼花缭乱。本文将详细讲解Hibernate每个jar包的作用,便于你在应用中根据自己的需要进行取舍。 下载Hibernate,例如2.0.3稳定版本,解压缩,可以看到一个hibernate2.jar和lib目录下有22个jar包: hibernate2.jar: Hibernate的库,没有什么可说的,必须使用的jar包原创 2013-04-24 09:37:13 · 748 阅读 · 0 评论 -
spring HibernateTemplate调用存储过程
具体调用方式如下所示:[java] view plaincopy//调用存储过程 删除流程相关记录 String procdure = "{Call sp_deleteInstByRootID(?)}"; CallableStatement cs = this.getHibernateTemplate().getSes原创 2013-04-24 09:37:42 · 1601 阅读 · 0 评论 -
spring管理hibernate事务报异常--Transaction not successfully started解决方法
通过spring管理配置了事务管理,但是在执行过程中还是出现了异常:Transaction not successfully started以下三段代码均报了该异常。[java] view plaincopy1. public void updateProcInstObj(TaProcInst taProcInstObj_from2) throws Exc原创 2013-04-24 09:37:58 · 1539 阅读 · 0 评论 -
ORA-02289: 序列不存在 在hibernate中正确配置
要将以前做的几个页面和现在的项目整合在一起,但是测试的时候发现突然没法跑了。以前都是可以正常运行的。结果发现是因为原来我在数据库中新建的表因为数据库重新还原而导致丢失。一次我从建了表及其对应的序列、触发器,但是在保存数据的时候报错:ORA-02289: 序列不存在。因此将其中orm映射的关系进行了调整,原来的主键生成策略:id name="relayStationId" type="lon原创 2013-04-24 09:38:13 · 3486 阅读 · 0 评论 -
hibernate复合主键查询主键不能为空的解决方案
实体类:[java] view plaincopypublic class SubStationLog implements java.io.Serializable { private Long substationid; private String markDate; private String mark;原创 2013-04-24 09:38:23 · 1113 阅读 · 0 评论 -
六种方式实现hibernate查询,及IDE推荐
我觉得有必要写一个hibernate的总结性随笔,从点到面,讲讲hibernate查询的6种方法。分别是HQL查询,对象化查询Criteria方法,动态查询DetachedCriteria,例子查询,sql查询,命名查询。 如果单纯的使用hibernate查询数据库只需要懂其中的一项就可以完成想要实现的一般功能,但是从一个点,让我们掌握6中方法,则提供了更多选择。每原创 2013-04-24 09:38:39 · 879 阅读 · 0 评论 -
Spring MVC的例子使用
Java代码 /** * @Component,@Service,@Controller,@Repository注解的类 * * @Service(逻辑层使用)rt.jar @Repository(Dao层使用) * * @Controller(View使用也就是action中的类) spring.jar夹包下 * * @Autowired自动装配 *原创 2013-04-24 09:39:32 · 859 阅读 · 0 评论 -
Struts+hibernate通用接口BaseDAO
001 public abstractclass BaseDAO {002 protectedSession getSession() {003 returnMySessionFactory.getSession();004 }005 006 protectedvoid closeSession() {007 MySessionFactory.closeSession()原创 2013-04-29 13:27:07 · 736 阅读 · 0 评论 -
通用的DAO查询,常见方法集合,没有使用Spring
001 import java.io.*;002 import java.sql.SQLException;003 import java.util.ArrayList;004 import java.util.List;005 006 import org.hibernate.Hibernate;007 import org.hibernate.HibernateException原创 2013-04-29 13:26:33 · 718 阅读 · 0 评论 -
hibernate 调用存储过程
Java代码 CREATE TABLE `proctab` (`id` int ( 11 ) NOT NULL auto_increment,`Name` varchar ( 20 ),`age` int ( 11 ),PRIMARY KEY (`id`))简单的存储过程 Java代码 create PROCEDURE原创 2013-01-17 09:10:08 · 1641 阅读 · 5 评论