天天看點

搭建ssh架構

1.導包

2.配置web.xml

<?xml version="1.0" encoding="UTF-8"?>

<web-app id="WebApp_ID" version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

<display-name>zkstudy</display-name>

<servlet>

<servlet-name>action</servlet-name>

<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>

<init-param>

<param-name>config</param-name>

<param-value>/WEB-INF/strutsconfig/struts-config.xml</param-value>

</init-param>

<init-param>

<param-name>debug</param-name>

<param-value>2</param-value>

</init-param>

<init-param>

<param-name>detail</param-name>

<param-value>3</param-value>

</init-param>

<load-on-startup>2</load-on-startup>

</servlet>

<servlet-mapping>

<servlet-name>action</servlet-name>

<url-pattern>*.do</url-pattern>

</servlet-mapping>

<filter>

<filter-name>encoding</filter-name>

<filter-class>action.EncodingFilter</filter-class>

</filter>

<filter-mapping>

<filter-name>encoding</filter-name>

<url-pattern>/*</url-pattern>

</filter-mapping>

</web-app>

3.配置struts-config.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts-config PUBLIC "-//Apache Software Foundation//DTD Struts Configuration 1.2//EN" "http://struts.apache.org/dtds/struts-config_1_2.dtd">

<struts-config>

<data-sources />

<form-beans >

<form-bean name="LoginForm" type="form.LoginForm" />

</form-beans>

<global-exceptions />

<global-forwards />

<action-mappings >

<action

path="/login"

name="LoginForm"

scope="request"

type="org.springframework.web.struts.DelegatingActionProxy"

input="/login.jsp"

validate="true" >

<forward name="success" path="/success.jsp" />

</action>

</action-mappings>

<message-resources parameter="MessageResources" />

</struts-config>

4.配置hibernate.cfg.xml

<?xml version='1.0' encoding='UTF-8'?>

<!DOCTYPE hibernate-configuration PUBLIC

"-//Hibernate/Hibernate Configuration DTD 3.0//EN"

"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<!-- Generated by Eclipse Hibernate Tools. -->

<hibernate-configuration>

<session-factory>

<!-- proxool連接配接池 -->

<property name="hibernate.proxool.xml">ProxoolConf.xml</property>

<property name="hibernate.proxool.pool_alias">mysql</property>

<property name="hibernate.connection.provider_class">

org.hibernate.connection.ProxoolConnectionProvider

</property>

<property name="dialect">

org.hibernate.dialect.MySQLDialect

</property>

<property name="show_sql">true</property>

<mapping resource="entity/Users.hbm.xml" />

</session-factory>

</hibernate-configuration>

hibernate使用了連接配接池,故還有個配置檔案:ProxoolConf.xml

 <?xml version="1.0" encoding="utf-8"?>

<something-else-entirely>

<proxool>

<alias>mysql</alias>

<!--proxool隻能管理由自己産生的連接配接-->

<driver-url>jdbc:mysql://localhost:3306/test</driver-url>

<driver-class>com.mysql.jdbc.Driver</driver-class>

<driver-properties>

<property name="user" value="root"/>

<property name="password" value="zk123456"/>

</driver-properties>

<!-- proxool自動偵察各個連接配接狀态的時間間隔(毫秒),偵察到空閑的連接配接就馬上回收,逾時的銷毀-->

<house-keeping-sleep-time>90000</house-keeping-sleep-time>

<!-- 指因未有空閑連接配接可以配置設定而在隊列中等候的最大請求數,超過這個請求數的使用者連接配接就不會被接受-->

<maximum-new-connections>20</maximum-new-connections>

<!-- 最少保持的空閑連接配接數-->

<prototype-count>5</prototype-count>

<!-- 允許最大連接配接數,超過了這個連接配接,再有請求時,就排在隊列中等候,最大的等待請求數由maximum-new-connections決定-->

<maximum-connection-count>100</maximum-connection-count>

<!-- 最小連接配接數-->

<minimum-connection-count>10</minimum-connection-count>

</proxool>

</something-else-entirely>

5.配置spring的配置檔案:applicationContext.xml

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" " http://www.springframework.org/dtd/spring-beans.dtd">

<beans>

<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">

<property name="configLocation">

<value>classpath:hibernate.cfg.xml</value>

</property>

</bean>

<!-- dao -->

<bean id="loginDao" class="dao.LoginDao">

<property name="sessionFactory" ref="sessionFactory"/>

</bean>

<!-- biz -->

<bean id="loginBiz" class="biz.LoginBiz">

<property name="loginDao" ref="loginDao" />

</bean>

<!-- action -->

<bean name="/login" class="action.LoginAction">

<property name="loginBiz" ref="loginBiz" />

</bean>

</beans>

6.spring和struts整合

6.1 在struts.config.xml檔案裡 添加插件

 <plug-in

    className="org.springframework.web.struts.ContextLoaderPlugIn">

   <set-property property="contextConfigLocation" value="classpath:applicationContext.xml" />

  </plug-in>

6.2 在web.xml裡添加監聽器

<listener>

   <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>

  </listener>

  <context-param>

   <param-name>contextConfigLocation</param-name>

   <param-value>classpath:applicationContext.xml</param-value>

  </context-param>

繼續閱讀