-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
7b1efeb
commit c2dafc4
Showing
22 changed files
with
833 additions
and
369 deletions.
There are no files selected for viewing
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.
Oops, something went wrong.
Large diffs are not rendered by default.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,104 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<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"> | ||
<parent> | ||
<artifactId>spring-examples</artifactId> | ||
<groupId>com.zzh</groupId> | ||
<version>1.0-SNAPSHOT</version> | ||
</parent> | ||
<modelVersion>4.0.0</modelVersion> | ||
|
||
<artifactId>spring-hibernate</artifactId> | ||
|
||
|
||
<properties> | ||
<!-- spring版本号 --> | ||
<spring.version>4.2.5.RELEASE</spring.version> | ||
</properties> | ||
<dependencies> | ||
<dependency> | ||
<groupId>org.hibernate</groupId> | ||
<artifactId>hibernate-entitymanager</artifactId> | ||
<version>4.2.21.Final</version> | ||
</dependency> | ||
<!-- spring核心包 Start --> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-core</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-tx</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-jdbc</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-aop</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-orm</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>org.aspectj</groupId> | ||
<artifactId>aspectjweaver</artifactId> | ||
<version>1.8.9</version> | ||
</dependency> | ||
|
||
<dependency> | ||
<groupId>org.springframework</groupId> | ||
<artifactId>spring-context</artifactId> | ||
<version>${spring.version}</version> | ||
</dependency> | ||
<!-- spring核心包 End --> | ||
|
||
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java --> | ||
<dependency> | ||
<groupId>mysql</groupId> | ||
<artifactId>mysql-connector-java</artifactId> | ||
<version>5.1.6</version> | ||
</dependency> | ||
|
||
|
||
<!-- https://mvnrepository.com/artifact/com.mchange/c3p0 --> | ||
<!-- C3P0数据源 --> | ||
<dependency> | ||
<groupId>com.mchange</groupId> | ||
<artifactId>c3p0</artifactId> | ||
<version>0.9.5.2</version> | ||
</dependency> | ||
</dependencies> | ||
|
||
<build> | ||
<!-- Maven工程,编译的工作是由Maven程序来完成的, | ||
而Maven默认只会把src/main/resources文件夹下的文件拷贝到target/classes文件夹下, | ||
hbm.xml都不会被复制到/target/calsses文件夹下,所以Hibernate框架在运行的时候, | ||
就会报找不到*.hbm.xml的错误 | ||
--> | ||
<resources> | ||
<resource> | ||
<directory>src/main/java</directory> | ||
<includes> | ||
<include>**/*.xml</include> | ||
</includes> | ||
<filtering>true</filtering> | ||
</resource> | ||
<resource> | ||
<directory>src/main/resources</directory> | ||
<includes> | ||
<include>**/*.xml</include> | ||
<include>**/*.properties</include> | ||
</includes> | ||
</resource> | ||
</resources></build> | ||
</project> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
<?xml version="1.0" encoding="UTF-8"?> | ||
<module org.jetbrains.idea.maven.project.MavenProjectsManager.isMavenModule="true" type="JAVA_MODULE" version="4"> | ||
<component name="NewModuleRootManager" LANGUAGE_LEVEL="JDK_1_5" inherit-compiler-output="false"> | ||
<output url="file://$MODULE_DIR$/target/classes" /> | ||
<output-test url="file://$MODULE_DIR$/target/test-classes" /> | ||
<content url="file://$MODULE_DIR$"> | ||
<sourceFolder url="file://$MODULE_DIR$/src/main/java" isTestSource="false" /> | ||
<sourceFolder url="file://$MODULE_DIR$/src/main/resources" type="java-resource" /> | ||
<sourceFolder url="file://$MODULE_DIR$/src/test/java" isTestSource="true" /> | ||
<excludeFolder url="file://$MODULE_DIR$/target" /> | ||
</content> | ||
<orderEntry type="inheritedJdk" /> | ||
<orderEntry type="sourceFolder" forTests="false" /> | ||
<orderEntry type="library" name="Maven: org.hibernate:hibernate-entitymanager:4.2.21.Final" level="project" /> | ||
<orderEntry type="library" name="Maven: org.jboss.logging:jboss-logging:3.1.0.GA" level="project" /> | ||
<orderEntry type="library" name="Maven: dom4j:dom4j:1.6.1" level="project" /> | ||
<orderEntry type="library" name="Maven: org.javassist:javassist:3.18.1-GA" level="project" /> | ||
<orderEntry type="library" name="Maven: org.jboss.spec.javax.transaction:jboss-transaction-api_1.1_spec:1.0.1.Final" level="project" /> | ||
<orderEntry type="library" name="Maven: org.hibernate.javax.persistence:hibernate-jpa-2.0-api:1.0.1.Final" level="project" /> | ||
<orderEntry type="library" name="Maven: org.hibernate.common:hibernate-commons-annotations:4.0.2.Final" level="project" /> | ||
<orderEntry type="library" name="Maven: org.hibernate:hibernate-core:4.2.21.Final" level="project" /> | ||
<orderEntry type="library" name="Maven: antlr:antlr:2.7.7" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-core:4.2.5.RELEASE" level="project" /> | ||
<orderEntry type="library" name="Maven: commons-logging:commons-logging:1.2" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-tx:4.2.5.RELEASE" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-beans:4.2.5.RELEASE" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-jdbc:4.2.5.RELEASE" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-aop:4.2.5.RELEASE" level="project" /> | ||
<orderEntry type="library" name="Maven: aopalliance:aopalliance:1.0" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-orm:4.2.5.RELEASE" level="project" /> | ||
<orderEntry type="library" name="Maven: org.aspectj:aspectjweaver:1.8.9" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-context:4.2.5.RELEASE" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-expression:4.2.5.RELEASE" level="project" /> | ||
<orderEntry type="library" name="Maven: mysql:mysql-connector-java:5.1.6" level="project" /> | ||
<orderEntry type="library" name="Maven: com.mchange:c3p0:0.9.5.2" level="project" /> | ||
<orderEntry type="library" name="Maven: com.mchange:mchange-commons-java:0.2.11" level="project" /> | ||
<orderEntry type="library" name="Maven: junit:junit:4.12" level="project" /> | ||
<orderEntry type="library" name="Maven: org.hamcrest:hamcrest-core:1.3" level="project" /> | ||
<orderEntry type="library" name="Maven: org.springframework:spring-test:4.2.5.RELEASE" level="project" /> | ||
</component> | ||
</module> |
24 changes: 24 additions & 0 deletions
24
spring-hibernate-simple/src/main/java/com/spring/hibernate/entities/Employee.hbm.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
<?xml version="1.0" encoding="utf-8"?> | ||
<!DOCTYPE hibernate-mapping PUBLIC | ||
"-//Hibernate/Hibernate Mapping DTD 3.0//EN" | ||
"http://www.hibernate.org/dtd/hibernate-mapping-3.0.dtd"> | ||
<hibernate-mapping package="com.spring.hibernate.entities"> | ||
<class name="Employee" table="employee"> | ||
<!-- id元素用于指定主键属性 --> | ||
<id name="id" column="id" type="java.lang.Integer"> | ||
<!-- 该元素用于指定主键生成策略 --> | ||
<generator class="increment"/> | ||
</id> | ||
|
||
<!-- 对其他属性还有配置 --> | ||
<property name="name" type="java.lang.String"> | ||
<column name="name" not-null="false"></column> | ||
</property> | ||
<property name="email" type="java.lang.String"> | ||
<column name="email" not-null="false"/> | ||
</property> | ||
<property name="hiredate" type="java.util.Date"> | ||
<column name="hiredate" not-null="false"/> | ||
</property> | ||
</class> | ||
</hibernate-mapping> |
40 changes: 40 additions & 0 deletions
40
spring-hibernate-simple/src/main/java/com/spring/hibernate/entities/Employee.java
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
package com.spring.hibernate.entities; | ||
|
||
/** | ||
* Created by Administrator on 2017/11/29. | ||
*/ | ||
public class Employee implements java.io.Serializable { | ||
/**该domain对象按照规范序列化,目的是可以唯一的标识该对象,同时在网络和文件传输 | ||
* | ||
*/ | ||
private static final long serialVersionUID = 1L; | ||
private Integer id; | ||
private String name; | ||
private String email; | ||
private java.util.Date hiredate; | ||
|
||
public Integer getId() { | ||
return id; | ||
} | ||
public void setId(Integer id) { | ||
this.id = id; | ||
} | ||
public String getName() { | ||
return name; | ||
} | ||
public void setName(String name) { | ||
this.name = name; | ||
} | ||
public String getEmail() { | ||
return email; | ||
} | ||
public void setEmail(String email) { | ||
this.email = email; | ||
} | ||
public java.util.Date getHiredate() { | ||
return hiredate; | ||
} | ||
public void setHiredate(java.util.Date hiredate) { | ||
this.hiredate = hiredate; | ||
} | ||
} |
73 changes: 73 additions & 0 deletions
73
spring-hibernate-simple/src/main/resources/applicationContext.xml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,73 @@ | ||
<?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" | ||
xmlns:aop="http://www.springframework.org/schema/aop" | ||
xsi:schemaLocation="http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-4.0.xsd | ||
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd | ||
http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-4.0.xsd | ||
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.0.xsd"> | ||
|
||
<!-- 配置自动扫描的包 --> | ||
<context:component-scan base-package="com.spring.hibernate"></context:component-scan> | ||
|
||
<!-- 配置数据源 --> | ||
<!-- 导入资源文件 --> | ||
<context:property-placeholder location="classpath:db.properties"/> | ||
|
||
<bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource"> | ||
<property name="user" value="${jdbc.user}"></property> | ||
<property name="password" value="${jdbc.password}"></property> | ||
<property name="driverClass" value="${jdbc.driverClass}"></property> | ||
<property name="jdbcUrl" value="${jdbc.jdbcUrl}"></property> | ||
|
||
<property name="initialPoolSize" value="${jdbc.initPoolSize}"></property> | ||
<property name="maxPoolSize" value="${jdbc.maxPoolSize}"></property> | ||
</bean> | ||
|
||
<!-- 配置 Hibernate 的 SessionFactory 实例: 通过 Spring 提供的 LocalSessionFactoryBean 进行配置 --> | ||
<bean id="sessionFactory" class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"> | ||
<!-- 配置数据源属性 --> | ||
<property name="dataSource" ref="dataSource"></property> | ||
<!-- 配置 hibernate 配置文件的位置及名称 --> | ||
<!-- | ||
<property name="configLocation" value="classpath:hibernate.cfg.xml"></property> | ||
--> | ||
<!-- 使用 hibernateProperties 属相来配置 Hibernate 原生的属性 --> | ||
<property name="hibernateProperties"> | ||
<props> | ||
<prop key="hibernate.dialect">org.hibernate.dialect.MySQL5InnoDBDialect</prop> | ||
<prop key="hibernate.show_sql">true</prop> | ||
<prop key="hibernate.format_sql">true</prop> | ||
<prop key="hibernate.hbm2ddl.auto">update</prop> | ||
</props> | ||
</property> | ||
<!-- 配置 hibernate 映射文件的位置及名称, 可以使用通配符 --> | ||
<property name="mappingLocations" | ||
value="classpath:com/spring/hibernate/entities/*.hbm.xml"></property> | ||
</bean> | ||
|
||
<!-- 配置 Spring 的声明式事务 --> | ||
<!-- 1. 配置事务管理器 --> | ||
<bean id="transactionManager" class="org.springframework.orm.hibernate4.HibernateTransactionManager"> | ||
<property name="sessionFactory" ref="sessionFactory"></property> | ||
</bean> | ||
|
||
<!-- 2. 配置事务传播属性, 需要事务管理器 --> | ||
<tx:advice id="txAdvice" transaction-manager="transactionManager"> | ||
<tx:attributes> | ||
<tx:method name="get*" read-only="true"/> | ||
<tx:method name="purchase" propagation="REQUIRES_NEW"/> | ||
<tx:method name="*"/> | ||
</tx:attributes> | ||
</tx:advice> | ||
|
||
<!-- 3. 配置事务切点, 并把切点和事务属性关联起来 --> | ||
<aop:config> | ||
<aop:pointcut expression="execution(* spring.hibernate.service.*.*(..))" | ||
id="txPointcut"/> | ||
<aop:advisor advice-ref="txAdvice" pointcut-ref="txPointcut"/> | ||
</aop:config> | ||
|
||
</beans> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,9 @@ | ||
jdbc.user=root | ||
jdbc.password=ABC_abc1 | ||
jdbc.driverClass=com.mysql.jdbc.Driver | ||
jdbc.jdbcUrl=jdbc:mysql://localhost:3306/world | ||
jdbc.initPoolSize=5 | ||
jdbc.maxPoolSize=10 | ||
|
||
jdbc.jdbcUrl2=jdbc:mysql://localhost:3306/test | ||
|
Oops, something went wrong.