1.建立web項目
2.在web.xml 配置 struts2,和 spring ,
<!-- 配置Struts2 -->
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher(struts的過濾器)
</filter-class>
</filter>
<filter-mapping>(加載struts2)
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!-- 配置Spring -->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener(spring監聽器)
</listener-class>
</listener>
<!-- 查找spring配置文件 -->
<context-param>(程序從此處開始加載.xml 文件,并執行)
<param-name>contextConfigLocation</param-name>
<param-value>classpath*:*.xml</param-value>
</context-param>
3.在src根目錄下創建struts.xml文件
<include file="struts-default.xml"/>固定格式,用到此包
4.在src根目錄 創建hibernate.cfg.xml文件
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"
<hibernate-configuration>
<session-factory>
<!-- 基本配置 -->
<property name="dialect">
org.hibernate.dialect.Oracle9Dialect
</property>
<property name="show_sql">false</property>
<property name="format_sql">true</property>
<property name="bytecode.use_reflection_optimizer">true</property>
<property name="max_fetch_depth">2</property>
<property name="default_batch_fetch_size">8</property>
<property name="jdbc.batch_size">20</property>
</session-factory>
</hibernate-configuration>
系統給的文件 只需要拷貝,都是一些數據庫庫的基本配置
5.在src根目錄 拷貝struts.properties文件
struts.objectFactory = spring 該項是告訴系統 用spring來 控制hibernate和Action
struts.action.extension=action 告訴系統訪問時以什么結尾??梢愿臑? do 例如:login.do ,此處為:login.action
6.在src根目錄下 創建applicationContext.xml
配置數據源
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource">
<property name="driverClassName" value ="oracle.jdbc.driver.OracleDriver"/>
<property name="url" value ="jdbc:oracle:thin:@192.168.0.95:1521:ZXDB2"/>
<property name="username" value ="test"/>
<property name="password" value ="test"/>
</bean>
創建sessionFactory 工廠
<bean id="sessionFactory" class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<property name="dataSource">
<ref local="dataSource"/>
</property>
<property name="configLocation">
<value type="org.springframework.core.io.Resource">classpath:hibernate.cfg.xml</value>
</property>
</bean>
考來用
7.創建 實體類
就是寫一個bean 含有get/set 方法
8.在實體類所在的目錄下,寫一個 類名.hbm.xml文件,在配置文件中添加屬性
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"
<hibernate-mapping>
<class name="com.zx.test.model.User" table="LB_USER">
<id name="id" type="java.lang.Long">主鍵的類型為Long
<column name="ID"/>
<generator class="sequence">
<param name="sequence">SEQ_LB_USER</param>指定主鍵生成方式,必須在pl/sql創建主鍵生成方式
</generator>
</id>
<property name="name" type="java.lang.String">
<column name="name" length="20"/>
</property>
<property name="age" type="java.lang.Integer">
<column name="age" length="2"/>
</property>
<property name="password" type="java.lang.String">
<column name="password" length="20"/>
</property>
所有屬性的name 必須與 bean中的set后的名稱一樣
</class>
</hibernate-mapping>
9.創建一個 Dao 實現操作方法
10 創建 service 調用 Dao中的方法
11.創建 Action 將service的得到的user 加到Action中
12.在applicationContext.xml 中配置
將userDao注入到sessionFactory中
將userService 注入到UserDao中
將userAction 注入到 userService中
13.在struts.xml中 配置Action
<package name="user" extends="struts-default(固定與include對應)" namespace="/use(訪問時路徑)r">
<action name="userAdd(訪問時路徑)" class="userAction" method="userAdd">
<result name="success">/userShow.jsp</result>
</action>
</package>
此處配置了訪問時的路徑:/user/userAdd
14.將8中的配置文件 加入到 4 中
<mapping resource="com/zx/test/model/User.hbm.xml" />
引用配置文件
15.寫jsp頁面 表單提交到 Action
9.10.11:是 Action 調用 Service ,Service調用 Dao 也是分層的體現
Web.xml 是web工程的配置文件
ApplicationContext 是 spring的配置文件
Hibernate.hbm.xml 是hibernate的配置文件
建表是 注意創建主鍵時 name 為 表明