1.目录结构

Spring+Hibernate+struts2+easyUI实现分页显示操作

2配置文件

spring:

<?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: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.xsd
    http://www.springframework.org/schema/tx
    http://www.springframework.org/schema/tx/spring-tx.xsd
    http://www.springframework.org/schema/aop
    http://www.springframework.org/schema/aop/spring-aop.xsd">
    <bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
        <property name="dataSource" ref="dataSource" />
        <property name="hibernateProperties">
            <props>
                <!-- mysql -->
                <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>
        <property name="mappingDirectoryLocations">
            <list>
                <value>classpath:com/demo/entity/</value>
            </list>
        </property>
    </bean>
    
    <!-- 加载外部配置变量 only mysql need -->
    <bean id="propertyConfigurer" class="org.springframework.beans.factory.config.PropertyPlaceholderConfigurer">
        <property name="location">
            <value>classpath:jdbc.properties</value>
        </property>
        <property name="fileEncoding" value="utf-8" />
    </bean>
    <!-- 配置数据源,c3p0方式 -->
    <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource">
        <!-- mysql -->
        <!-- 数据库连接相关信息 -->
        <property name="jdbcUrl" value="${jdbc.url}"/>
        <property name="driverClass" value="${jdbc.driverClass}"/>
        <property name="user" value="${jdbc.username}"/>
        <property name="password" value="${jdbc.password}"/>
    </bean>
    <!-- spring DI注入 -->
    <bean id="personDao" class="com.demo.dao.PersonDaoImpl">
        <property name="sessionFactory" ref="sessionFactory"></property>
    </bean>
    
    <bean id="personService" class="com.demo.service.PersonServiceImpl">
        <property name="personDao" ref="personDao"></property>
    </bean>
    <!-- struts2中action是多例的 -->
    <bean id="personAction" class="com.demo.action.PersionAction" scope="prototype">
        <property name="personService" ref="personService"></property>
    </bean>
    
    <!-- spring框架,AOP配置事务管理 -->
    <bean id="txMgr" class="org.springframework.orm.hibernate3.HibernateTransactionManager">
        <property name="sessionFactory" ref="sessionFactory" />
    </bean>
    
    <!-- spring框架,AOP配置 -->
    <tx:advice id="txAdvice" transaction-manager="txMgr">
        <!-- 声明事务规则 主库 -->
        <tx:attributes>
            <!-- 配置需要进行事务管理的方法,和事务传播行为 -->
            <tx:method name="save*" propagation="REQUIRED"/>
            <tx:method name="update*" propagation="REQUIRED"/>
            <tx:method name="delete*" propagation="REQUIRED"/>
            <tx:method name="*"/>
        </tx:attributes>
    </tx:advice>
    <!-- spring框架,切入点配置 -->
    <aop:config>
        <aop:pointcut id="s28" expression="execution(* com.demo.service..*.*(..))" />
        <aop:advisor advice-ref="txAdvice" pointcut-ref="s28" />
    </aop:config>

</beans>

struts.xml配置文件

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />
    <constant name="struts.i18n.encoding" value="UTF-8" />
    <package name="default" namespace="/" extends="struts-default,json-default">
        <action name="personList" class="com.demo.action.PersonAction" method="personList">
            <result type="json" name="jsonArray">
                <param name="root">jsonObj</param>
            </result>
        </action>
        <action name="addPerson" class="com.demo.action.PersonAction" method="addPerson">
            <result type="json" name="jsonArray">
                <param name="root">jsonArray</param>
            </result>
        </action>
        <action name="goadd" class="com.demo.action.PersonAction" method="goadd">
            <result name="success">/addPerson.jsp</result>
        </action>
        <action name="deletePerson" class="com.demo.action.PersonAction" method="deletePerson">
            <result type="json" name="success">
                <param name="root">jsonArray</param>
            </result>
        </action>
    </package>
</struts>

JSP页面:

Spring+Hibernate+struts2+easyUI实现分页显示操作

action方法:

Spring+Hibernate+struts2+easyUI实现分页显示操作

Spring+Hibernate+struts2+easyUI实现分页显示操作

daoImpl方法:查询总条数+查询list集合方法

Spring+Hibernate+struts2+easyUI实现分页显示操作

Spring+Hibernate+struts2+easyUI实现分页显示操作



相关文章:

  • 2022-12-23
  • 2022-12-23
  • 2022-01-27
  • 2022-12-23
  • 2022-12-23
  • 2021-11-08
  • 2021-07-15
  • 2021-06-01
猜你喜欢
  • 2022-12-23
  • 2021-10-05
  • 2022-12-23
  • 2021-08-26
  • 2022-02-28
  • 2021-12-15
  • 2021-06-20
相关资源
相似解决方案