hibernate4

Hibernate4 拦截器(Interceptor) 实现实体类增删改的日志记录

∥☆過路亽.° 提交于 2020-04-13 11:08:34
【今日推荐】:为什么一到面试就懵逼!>>> 开发应用程序的过程中,经常会对一些比较重要的数据修改都需要写日志。在实际工作的工程中,这些数据都是存在表中的, 一个常见的做法是用触发器,在增删改的时候,用触发器将数据写入到另一张表中去,但个人不推荐这么做,原因如下: 1. 如果有多个表,得写很多触发器。 2. 触发器与数据库特性关联太紧,不同的数据库,虽然思路一样,但语法却不太一样。 对数据库表操作的日志记录,完全可以利用Hibernate的Interceptor特性来实现,也就是拦截器。下面用一个具体的例子来说明如何使用Hibernate的Interceptor。 创建一个表,用来记录日志的表 程序代码 Create TABLE `auditlog` ( `AUDIT_LOG_ID` BIGINT(20) UNSIGNED NOT NULL AUTO_INCREMENT, `ACTION` VARCHAR(100) NOT NULL, `DETAIL` text NOT NULL, `CreateD_DATE` DATE NOT NULL, `ENTITY_ID` BIGINT(20) UNSIGNED NOT NULL, `ENTITY_NAME` VARCHAR(255) NOT NULL, PRIMARY KEY (`AUDIT_LOG_ID`) ) ENGINE=InnoDB

hibernate4-hbm.xml基本使用-Maven Demo

限于喜欢 提交于 2020-03-01 15:13:57
目录结构如图, 1.用MyEclipse建立一个Maven-Java项目,然后给出pom配置, <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>com.xuebaosoft.hibernate4</groupId> <artifactId>hibernate4-maven-conf</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>jar</packaging> <name>hibernate4-maven-conf</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <

hibernate4多字段主键配置方案

怎甘沉沦 提交于 2020-03-01 14:34:50
1.pom.xml文件参考 http://my.oschina.net/u/555061/blog/506049 2.这里使用注解方法(其实注解也就注解了2个字段为主键),给出hibernate.cfg.xml配置跟 http://my.oschina.net/u/555061/blog/506049 相同,只是映射类改为 <mapping class="EntityTest.Tour_Morph"/> 3.给出Tour_Morph.java, package EntityTest; import java.io.Serializable; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.IdClass; import javax.persistence.Table; @Entity @IdClass(Tour_MorphID.class) @Table(name = "Tour_Morph") public class Tour_Morph { @Id @Column(name = "Tour_id") private Integer Tour_id; @Id @Column(name =

hibernate4使用注解

蓝咒 提交于 2020-03-01 13:43:13
借用官方的demo稍加改编进行分析, 1.pom.xml配置参考 http://my.oschina.net/u/555061/blog/506049 2.hibernate.cfg.xml配置实体关系表, <?xml version='1.0' encoding='utf-8'?> <!DOCTYPE hibernate-configuration PUBLIC "-//Hibernate/Hibernate Configuration DTD 3.0//EN" "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration> <session-factory> <!-- Database connection settings --> <property name="connection.driver_class">com.mysql.jdbc.Driver</property> <property name="connection.url">jdbc:mysql://192.168.191.1:3306/mysql</property> <property name="connection.username">root</property> <property

Spring3和hibernate4整合的一点小问题

白昼怎懂夜的黑 提交于 2019-12-02 16:30:52
其实这个问题在第一次使用hibernate4的时候就发现了,当时没怎么管,因为后来换用了mybatis。 现在又重新一个项目,用hibernate4来做,就出现了这个问题,鼓捣了很久,保存数据一直提示我的User类不是一个Entity,还好上次无意间发现了解决办法,不然我又得放弃hibernate了。 废话不多说了,切入正题: 大家都知道,hibernate和spring整合的方式有两种, 一种是写hibernate.cfg.xml,然后在spring配置文件中配置sessionFactory的时候引入这个配置文件就可以了 第二种是直接将数据库的连接写在spring配置文件中,建一个dataSource的bean 我用的是第一种,然后通过如下代码引入的*.hbm.xml文件: <bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> <!-- hibernate配置文件 --> <property name="configLocations"> <value>classpath:/com/singlesing/cfg/hibernate.cfg.xml</value> </property> <!-- mapping配置文件 --> <property

hibernate4与spring3的整合,不兼容

不问归期 提交于 2019-12-01 23:50:34
双休整合下 整合struts2+spring3.2.1+hibernate4.2.1 结果遇到问题如下问题: java.lang.NoSuchMethodError: org.hibernate.SessionFactory.openSession()Lorg/hibernate/classic/Session; at org.springframework.orm.hibernate3.SessionFactoryUtils.doGetSession(SessionFactoryUtils.java:323) at org.springframework.orm.hibernate3.SessionFactoryUtils.getSession(SessionFactoryUtils.java:235) at org.springframework.orm.hibernate3.HibernateTemplate.getSession(HibernateTemplate.java:457) at org.springframework.orm.hibernate3.HibernateTemplate.doExecute(HibernateTemplate.java:392) at org.springframework.orm.hibernate3

整合hibernate4到spring4mvc框架

二次信任 提交于 2019-12-01 14:20:05
1.总体设计思路 写一个HibernateDao的公共接口HibernateCommonDao,实现基本的增删改查HibernateCommonDaoImpl,所有的具体业务类*DaoImpl都继承自 HibernateCommonDaoImpl并且implements它自己的*Dao接口,这样一来基本的增删改查都用公共的,只针对具体业务实现自己的接口方法,业务类Service调用query对象方法的时候需要进行强制类型转换 2.springmvc管理hibernate的配置问题 2.1pom.xml配置仍然是 http://my.oschina.net/u/555061/blog/506049 ,只不过增加Spring4Framework框架 2.2SpringHibernate4.xml--解决sessionFactory注册为SpringBean <?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:p="http://www.springframework.org/schema/p" xmlns:context=

sping3+hibernate4框架模板

我的梦境 提交于 2019-12-01 01:06:07
本框架以商品购物平台项目为例,用到spring3mvc和hibernate4,主要搭建步骤如下: 1、spring3MVC模板 2、集成hiebernate4模板 3、Spring集成测试模板 包含的技术: spring框架; springMVC技术; velocity框架; 多视图解析器; Log4j日志框架; spring集成测试; 【配置web.xml】 【spring3MVC+Velocity模板】 (1)放入sping3所需的库、commons-logging-1.0.4.jar、jstl.jar, 加入velocity框架需要的库(velocity-1.7.jar、commons-collections-3.2.1.jar、commons-lang-2.4.jar) (2)配置web.xml,启动spring和mvc <?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http

spring3+hibernate4 sessionFactory 注入(最新修改)

扶醉桌前 提交于 2019-11-30 19:52:12
<?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 http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd">

J2EE中整合Spring4和hibernate4

不羁的心 提交于 2019-11-30 18:07:04
J2EE中整合Spring4和hibernate4,在这我只给出初略的步骤了, 注:先单独搭建好Spring4和hibernate4之后再进行俩者的整合。 整体是这样,如下图(Spring.User.xml是专门为user模块准备的Spring配置文件,在SpringApplicationContext.xml中需要引入Spring.User.xml文件): Spring.User.xml中的文件内容: SpringApplicationContext.xml中的配置如下图(我用的是Spring4,hibernate4; import语句是引入Spring.User.xml文件): 从Spring中得到对象: 从Spring中得到SessionFactory: 来源: oschina 链接: https://my.oschina.net/u/2518341/blog/664884