這里主要講在Eclipse下如何搭配Spring MVC + Hibernate框架進(jìn)行Web開發(fā),至于Eclipse以及JDK以及MyEclipse等的安裝不在此列,也不使用MyEclipse來搭建,只是手工搭建的方式。
1.版本
JDK1.50;Eclipse3.2;MyEclipse 5.0;Tomcat 5.0;Spring2.0;Hibernate3.2。
2.準(zhǔn)備
安裝好Eclipse和JDK環(huán)境,由于不使用MyEclipse,需要自行準(zhǔn)備兩個主要的包:Spring.jar包、Hibernate3.jar,還有commons-dbcp.jar,commons-pool.jar,spring-orm.jar等這些包;這些表都可以在相應(yīng)的項(xiàng)目網(wǎng)站中下載到,或者網(wǎng)上搜索。
安裝好后Lib下包會有:
activation.jar
antlr-2.7.6.jar
asm.jar
cglib-2.1.3.jar
commons-beanutils.jar
commons-collections.jar
commons-collections-2.1.1.jar
commons-digester.jar
commons-fileupload.jar
commons-logging.jar
commons-logging-1.0.4.jar
commons-validator.jar
dom4j-1.6.1.jar
ehcache-1.2.jar
jakarta-oro.jar
jstl.jar
jta.jar
log4j-1.2.11.jar
mail.jar
ojdbc14.jar
standard.jar
以下幾個是比較重要的:
commons-dbcp.jar
commons-pool.jar
hibernate3.jar
spring.jar
spring-orm.jar
如果要用到Struts,會有一個struts.jar包。
3.搭建:
首先在"File"菜單下"new" 一個"Project",選擇"Other"下的MyEclipse下的"Web Project",把上面的包放到WebRoot/WEB-INF/lib下;
建立好工程后,我們在項(xiàng)目下的WebRoot/WEB-INF/下新建兩個.xml文件,名字可以隨便起(也可新建一個,內(nèi)容和兩個文件里面的內(nèi)容一樣即可),在這里命名為web-config.xml和model-config.xml,顧名思義,web-config.xml下配置和servlet以及控制邏輯等與WEB相關(guān)的bean,model-config.xml下配置與數(shù)據(jù)模型層相關(guān)的Bean,如數(shù)據(jù)訪問的bean。
以下是model-config.xml內(nèi)容:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="
xmlns:xsi="
xsi:schemaLocation="http://www.springframework.org/schema/beans
<!-- 設(shè)定數(shù)據(jù)庫連接池相關(guān)參數(shù),這里使用的是Oracel的數(shù)據(jù)庫 -->
<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">
<value>jdbc:oracle:thin:@192.168.6.4:1521:database</value>
</property>
<property name="username">
<value>username</value>
</property>
<property name="password">
<value>password</value>
</property>
</bean>
<!-- 定義Hibernate sessionFactory 和Hibernate映射文件,所有的Hibernate映射文件統(tǒng)一在這里定義 -->
<bean id="sessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean"
destroy-method="destroy">
<property name="dataSource" ref="dataSource"/>
<property name="mappingResources">
<list>
<!-- Hibernate映射文件 把Hibernate的配置文件在這里映射,這里定義了一個UUser類的持久化類映射文件 -->
<value>com/yondor/yuejiao/orm/UUser.hbm.xml</value>
</list>
</property>
<property name="hibernateProperties">
<props>
<prop key="hibernate.dialect">
org.hibernate.dialect.Oracle9Dialect
</prop>
</props>
</property>
</bean>
<!-- Spring hibernateTemplate 模板定義 -->
<bean id="hibernateTemplate"
class="org.springframework.orm.hibernate3.HibernateTemplate">
<property name="sessionFactory" ref="sessionFactory"/>
</bean>
<!-- Hibernate數(shù)據(jù)模型Bean定義 -->
<bean id="dbDAO"
class="com.yondor.yuejiao.model.common.DbDAO">
<property name="hibernateTemplate" ref="hibernateTemplate"/>
</bean>
<!-- 以下是業(yè)務(wù)邏輯Bean的定義 -->
<!-- User模塊開始 定義的bean可以在web-config.xml配置文件中使用-->
<bean id="userDAO"
class="com.yondor.yuejiao.model.example.UserDAO">
<property name="dbDAO" ref="dbDAO"/>
</bean>
<!-- User模塊結(jié)束 -->
</beans>
以下是web-config.xml的內(nèi)容:
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="
xmlns:xsi="
xsi:schemaLocation="http://www.springframework.org/schema/beans
<!-- Controller方法調(diào)用規(guī)則定義 -->
<bean id="paraMethodResolver"
class="org.springframework.web.servlet.mvc.multiaction.ParameterMethodNameResolver">
<property name="paramName" value="action"/>
<property name="defaultMethodName" value="list"/>
</bean>
<!-- 頁面View層基本信息設(shè)定 -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="viewClass"
value="org.springframework.web.servlet.view.JstlView"/>
<property name="prefix" value="/yuejiao/"/>
<property name="suffix" value=".jsp"/>
</bean>
<!-- servlet映射列表,所有控制層Controller的servlet在這里定義 -->
<bean id="urlMapping"
class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="example.do">userController</prop>
</props>
</property>
</bean>
<!-- 以下控制層Controller Bean定義開始 -->
<!-- User模塊開始 -->
<!-- 一共注入了7個屬性(Bean),其中userDAO為業(yè)務(wù)邏輯Bean,該Bean定義在model-config.xml相應(yīng)的模塊中 -->
<bean id="userController"
class="com.yondor.yuejiao.controller.example.UserController">
<property name="methodNameResolver" ref="paraMethodResolver"/>
<!-- 使用了在model-config.xml文件里定義userDAO-->
<property name="userDAO" ref="userDAO"/>
<!-- 以下的屬性與處理后的跳轉(zhuǎn)有有關(guān) -->
<property name="login_success" value="example/login_success"/>
<property name="login_failure" value="example/login"/>
<property name="register_success" value="example/register_success"/>
<property name="register_failure" value="example/register"/>
<property name="userInfoList" value="example/list"/>
</bean>
<!-- User模塊結(jié)束 -->
</beans>
最后,還需要配置一下web.xml文件,內(nèi)容如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="
xmlns:xsi="
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
version="2.4">
<session-config>
<session-timeout>
30
</session-timeout>
</session-config>
<servlet>
<servlet-name>dispatcherServlet</servlet-name>
<servlet-class>
org.springframework.web.servlet.DispatcherServlet
</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/model-config.xml,/WEB-INF/web-config.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>dispatcherServlet</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
</web-app>
到此,基本上已完成開發(fā)環(huán)境的搭建,最后,
右鍵單擊項(xiàng)目名稱——properties——java bulid path ——libraries,Add Jars把剛才加入的包引入到工程里面去即可。
資料來源:http://hi.baidu.com/lhx222/blog/item/3fc769cb4b4ae01bbe09e67a.html