1、首先是web.xml配置
<?xml version="1.0" encoding="UTF-8"?>
<web-app 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">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<!--过滤所有struts的请求,将struts请求转到struts.xml-->
<filter>
<filter-name>struts2</filter-name>
<filter-class>
org.apache.struts2.dispatcher.FilterDispatcher
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
<!--spring映射监听,struts.xml中的class对应项映射到spring配置文件中,一般为applicationContext.xml,位于web-inf下(位置可自定,如下介绍)-->
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<!--自定义spring配置文件的位置
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
classpath:applicationContext.xml<!--放在src下面-->
/WEB-INF/applicationContext.xml<!--放在web-inf下面(默认在这个位置)-->
</param-value>
</context-param>-->
</web-app>
2、然后是struts.xml,放在src文件下
<?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>
<package name="default" extends="struts-default">
<!--下面queryall为发过来的action请求名,actionMapping为spring中对应的bean的id,methodName为action里对应的方法名-->
<action name="queryall" class="QueryAll" method="queryAll">
<result name="success">/product.jsp</result>
</action>
</package>
</struts>
3、这里是spring的配置,复杂又重要,配的昏天又暗地,O(∩_∩)O哈哈~go on
<?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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans.xsd">
<!-- 创建数据源 (会jdbc的应该都知道下面的东东代表啥吧,不说了)-->
<bean id="dataSource"
class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName">
<value>oracle.jdbc.driver.OracleDriver</value>
</property>
<property name="url">
<!--可以将localhost换为你的ip地址,或者127.0.0.1(代表本机,搞计算机的都知道吧~~~~)-->
<value>jdbc:oracle:thin:@localhost:1521:orcl</value>
</property>
<property name="username">
<value>scott</value>
</property>
<property name="password">
<value>tiger</value>
</property>
</bean>
<!-- 创建session工厂 -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
<!-- 将数据源注入到工厂 -->
<property name="dataSource" ref="dataSource" />
<!-- 实体bean的映射文件 -->
<property name="mappingResources">
<list>
<!--不想叙述这里,给个事例,看看即可明白........-->
<value>com/bean/ProductBean.hbm.xml</value>
</list>
</property>
<!-- 数据库方言 -->
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.Oracle9Dialect
</prop>
<prop key="hibernate.show_sql">true</prop>
</props>
</property>
</bean>
<!-- 创建事务 -->
<bean id="transactionManager"
class="org.springframework.orm.hibernate3.HibernateTransactionManager">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!--处理各层业务,其实就是action里调service(此处为接口),service里调dao(此处同样为接口),dao再调数据库,也就是hibernate。-->
<!-- 处理dao -->
<!--注入sessionFactory,访问数据库-->
<bean id="ProductDaoImpl" class="com.dao.impl.ProductDaoImpl"
scope="singleton">
<property name="sessionFactory" ref="sessionFactory"></property>
</bean>
<!-- 处理service -->
<bean id="ProductServiceImpl"
class="com.service.impl.ProductServiceImpl">
<!--注入dao接口,通过daoImpl实现数据库访问-->
<property name="productDao" ref="ProductDaoImpl"></property>
</bean>
<!-- 处理action -->
<bean id="QueryAll" class="com.action.ProductAction">
<!--注入service接口,通过serviceImpl调用dao层方法-->
<property name="productService" ref="ProductServiceImpl"></property> </bean>
</beans>
4、hibernate的配置文件
1)实体(直接上事例):ProductBean.hbm.xml
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<!--
Mapping file autogenerated by MyEclipse Persistence Tools
-->
<hibernate-mapping>
<class name="com.bean.ProductBean" table="T_PRODUCT" schema="SCOTT">
<id name="product_id" type="java.lang.String">
<column name="product_id" precision="4" scale="0" />
</id>
<property name="product_name" type="java.lang.String">
<column name="product_name" length="20" />
</property>
<property name="product_price" type="java.lang.Double">
<column name="product_price" length="20" />
</property>
</class>
</hibernate-mapping>
注意:以上column 中name对应数据库中个字段
2)hibernate.cfg.xml,这个在ssh框架中已经省去,可以直接用MyEclipse自动生成
5、其他。。。。。关于各个文件的位置,在我相册里有,欢迎查看!!
6、初学,希望大家一起交流,有改进的地方,请不吝赐教!thinks for everyone,goodnight!