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】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |