加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Spring4 MVC Hibernate4集成

发布时间:2020-12-14 23:50:29 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 摘要 事物管理 package?com.lei.demo.entity;import?javax.persistence.*;@Entity(name="users")public?class?Users?{????????public?Users(){???????

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

摘要 事物管理

package?com.lei.demo.entity;
import?javax.persistence.*;
@Entity(name="users")
public?class?Users?{
????
????public?Users(){
????????super();
????}
????
????@Id
????@GeneratedValue(strategy=GenerationType.AUTO)
????@Column(name="id")
????private?Integer?id;
????
????@Column(name="user_name",length=32)
????private?String?user_name;
????
????@Column(name="age")
????private?Integer?age;
????
????@Column(name="nice_name",length=32)
????private?String?nice_name;
????
????public?Integer?getId()?{
????????return?id;
????}
????public?void?setId(Integer?id)?{
????????this.id?=?id;
????}
????public?String?getUser_name()?{
????????return?user_name;
????}
????public?void?setUser_name(String?user_name)?{
????????this.user_name?=?user_name;
????}
????public?Integer?getAge()?{
????????return?age;
????}
????public?void?setAge(Integer?age)?{
????????this.age?=?age;
????}
????public?String?getNice_name()?{
????????return?nice_name;
????}
????public?void?setNice_name(String?nice_name)?{
????????this.nice_name?=?nice_name;
????}
}
<?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"?
????xsi:schemaLocation="http://java.sun.com/xml/ns/javaee?
????????http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd"?
????????id="WebApp_ID"?version="3.0">
??<display-name>Archetype?Created?Web?Application</display-name>
??<context-param>
????<param-name>contextConfigLocation</param-name>
????<param-value>classpath:/spring-*.xml</param-value>
??</context-param>
??<listener>
????<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
??</listener>
??<!--?定义DispatcherServlet?-->
??<servlet>
????<servlet-name>lei-dispatcher</servlet-name>
????<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
????<init-param>
??????<!--?默认/WEB-INF/[servlet名字]-servlet.xml加载上下文,?
??????????如果配置了contextConfigLocation参数,
??????????将使用classpath:/lei-dispatcher-servlet.xml加载上下文
??????-->
??????<param-name>contextConfigLocation</param-name>
??????<param-value>classpath:/lei-dispatcher-servlet.xml</param-value>
????</init-param>
????<load-on-startup>1</load-on-startup>
??</servlet>
??<!--?拦截匹配的请求,这里所有请求采用名字为lei-dispatcher的DispatcherServlet处理?-->
??<servlet-mapping>
????<servlet-name>lei-dispatcher</servlet-name>
????<url-pattern>/</url-pattern>
??</servlet-mapping>
</web-app>
<?xml?version="1.0"?encoding="UTF-8"?>
<beans?xmlns="http://www.springframework.org/schema/beans"
????xmlns:context="http://www.springframework.org/schema/context"
????xmlns:mvc="http://www.springframework.org/schema/mvc"
????xmlns:p="http://www.springframework.org/schema/p"
????xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
????xmlns:tx="http://www.springframework.org/schema/tx"
????xsi:schemaLocation="
????????http://www.springframework.org/schema/beans?????
????????http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
????????http://www.springframework.org/schema/context
????????http://www.springframework.org/schema/context/spring-context-3.0.xsd
????????http://www.springframework.org/schema/mvc
????????http://www.springframework.org/schema/mvc/spring-mvc-3.0.xsd
????????http://www.springframework.org/schema/tx
????????http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
????????">
????????
????<!--?启动自动扫描该包下所有的Bean(例如@Controller)?-->
????<context:component-scan?base-package="com.lei.demo"?/>
????
????<!--?定义视图解析器?-->
????<bean?class="org.springframework.web.servlet.view.InternalResourceViewResolver">
????????<property?name="prefix">
????????????<value>/WEB-INF/user/</value>
????????</property>
????????<property?name="suffix">
????????????<value>.jsp</value>
????????</property>
????</bean>
????
</beans>
<?xml?version="1.0"?encoding="UTF-8"?>
<beans?xmlns="http://www.springframework.org/schema/beans"
????xmlns:context="http://www.springframework.org/schema/context"
????xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
????xmlns:tx="http://www.springframework.org/schema/tx"
????xmlns:aop="http://www.springframework.org/schema/aop"
????xsi:schemaLocation="
????????http://www.springframework.org/schema/beans?????
????????http://www.springframework.org/schema/beans/spring-beans-4.0.xsd
????????http://www.springframework.org/schema/context
????????http://www.springframework.org/schema/context/spring-context-4.0.xsd
????????http://www.springframework.org/schema/aop
????????http://www.springframework.org/schema/aop/spring-aop-4.0.xsd
????????http://www.springframework.org/schema/tx
????????http://www.springframework.org/schema/tx/spring-tx-4.0.xsd
????????">
????<!--?Hibernate4?-->
????<!--?加载资源文件??其中包含变量信息,必须在Spring配置文件的最前面加载,即第一个加载-->
????<context:property-placeholder?location="classpath:persistence-mysql.properties"?/>
????
????<bean?id="sessionFactory"?
????????class="org.springframework.orm.hibernate4.LocalSessionFactoryBean">
????????<property?name="dataSource"?ref="dataSource"?/>
????????<property?name="packagesToScan">
????????????<list>
????????????????<!--?可以加多个包?-->
????????????????<value>com.lei.demo.entity</value>
????????????</list>
????????</property>
????????<property?name="hibernateProperties">
????????????<props>
????????????????<prop?key="hibernate.hbm2ddl.auto">${hibernate.hbm2ddl.auto}</prop>
????????????????<prop?key="hibernate.dialect">${hibernate.dialect}</prop>
????????????????<prop?key="hibernate.show_sql">${hibernate.show_sql}</prop>
????????????????<!--??<prop?key="hibernate.current_session_context_class">thread</prop>?-->?
????????????</props>
????????</property>
????</bean>
????
????<!--?数据库映射?-->
????<!--??class="org.apache.tomcat.dbcp.dbcp.BasicDataSource"?-->
????<!--??class="org.springframework.jdbc.datasource.DriverManagerDataSource"?-->
????<bean?id="dataSource"?class="org.springframework.jdbc.datasource.DriverManagerDataSource">
??????<property?name="driverClassName"?value="${jdbc.driverClassName}"?/>
??????<property?name="url"?value="${jdbc.url}"?/>
??????<property?name="username"?value="${jdbc.user}"?/>
??????<property?name="password"?value="${jdbc.pass}"?/>
???</bean>
???
????<!--?配置Hibernate事务管理器?-->
????<bean?id="transactionManager"
????????class="org.springframework.orm.hibernate4.HibernateTransactionManager">
??????<property?name="sessionFactory"?ref="sessionFactory"?/>
???</bean>
???
???<!--?配置事务异常封装?-->
???<bean?id="persistenceExceptionTranslationPostProcessor"?
???????class="org.springframework.dao.annotation.PersistenceExceptionTranslationPostProcessor"?/>
???
???<!--??声明式容器事务管理?,transaction-manager指定事务管理器为transactionManager?-->
????<tx:advice?id="txAdvice"?transaction-manager="transactionManager">
????????<tx:attributes>
????????????<tx:method?name="add*"?propagation="REQUIRED"?/>
????????????<tx:method?name="get*"?propagation="REQUIRED"?/>
????????????<tx:method?name="*"?read-only="true"?/>
????????</tx:attributes>
????</tx:advice>
????
????<aop:config?expose-proxy="true">
????????<!--?只对业务逻辑层实施事务?-->
????????<aop:pointcut?id="txPointcut"?expression="execution(*?com.lei.demo.service..*.*(..))"?/>
????????<!--?Advisor定义,切入点和通知分别为txPointcut、txAdvice?-->
????????<aop:advisor?pointcut-ref="txPointcut"?advice-ref="txAdvice"/>
????</aop:config>
????
</beans>
#?jdbc.X
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://yourServerIP:3306/yourDatabase?createDatabaseIfNotExist=true
jdbc.user=user
jdbc.pass=password
#?hibernate.X
hibernate.connection.driverClass=org.gjt.mm.mysql.Driver
hibernate.connection.url=jdbc:mysql://?yourServerIP:3306/yourDatabase
hibernate.dialect=org.hibernate.dialect.MySQL5Dialect
hibernate.connection.username=user
hibernate.connection.password=password
hibernate.show_sql=true
hibernate.hbm2ddl.auto=create-drop

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读