一.关于Spring的环境配置问题
需要的包(除了基本java web开发环境(如jdk,tomcat )之外的):spring-framework,jakarta-struts(后面有关于spring与struts结合的部分要用到).
二.关于Spring配置文件
我个人感觉,学习开发框架时,在明白了它的设计思想之后,配置文件设置是一个关键,等成功搭建起这个框架之后,在里面编程相信都难不到大家的
在建立单纯的spring项目时,web.xml文件如下:
- xml version="1.0" encoding="UTF-8"?>
- >
- <web-app>
- <servlet>
- <servlet-name>spring< SPAN>servlet-name>
- <servlet-class> org.springframework.web.servlet.DispatcherServlet
- < SPAN>servlet-class>
- <init-param>
- <param-name>contextConfigLocation< SPAN>param-name>
- <param-value>/WEB-INF/application.xml< SPAN>param-value>
- < SPAN>init-param>
- <load-on-startup>1< SPAN>load-on-startup>
- < SPAN>servlet>
- <servlet-mapping>
- <servlet-name>spring< SPAN>servlet-name>
- <url-pattern>*.do< SPAN>url-pattern>
- < SPAN>servlet-mapping>
- < SPAN>web-app>
这时候spring配置文件(这里假定为spring-servlet.xml)如下:
- xml version="1.0" encoding="UTF-8"?>
- >
- <beans>
- <bean id="LoginAction" class="com.ln.spring.LoginAction">
- <property name="msg">
- <value>Hello World< SPAN>value>
- < SPAN>property>
- <property name="data">
- <ref bean="data1" />
- < SPAN>property>
- < SPAN>bean>
- <bean id="data1" class="com.ln.spring.MyAction">
- <property name="message">
- <value>liang< SPAN>value>
- < SPAN>property>
- < SPAN>bean>
- <bean id="urlMapping" class="org.springframework. web.servlet.handler.SimpleUrlHandlerMapping">
- <property name="mappings">
- <props>
- <prop key="/login.do">LoginAction< SPAN>prop>
- < SPAN>props>
- < SPAN>property>
- < SPAN>bean>
- < SPAN>beans>
而在建立spring+struts项目时,web.xml文件按照struts项目的规格建立,在此不在多说,而在此时struts-config.xml如下:
- xml version="1.0" encoding="UTF-8"?>
-
- Foundation//DTD Struts Configuration 1.1//EN"
- "http://jakarta.apache.org/struts/dtds/struts-config_1_1.dtd">
- <struts-config>
- <form-beans>
- <form-bean name="loginForm"
- type="com.ln.struts.LoginForm" />
- < SPAN>form-beans>
- <action-mappings>
- <action path="/login"
- type="org.springframework.web.struts.
- DelegatingActionProxy"
- name="loginForm">
- <forward name="success"
- path="/main.jsp" />
- <forward name="failure"
- path="/loginfail.jsp" />
- < SPAN>action>
- < SPAN>action-mappings>
- <plug-in
- className="org.springframework.web.
- struts.ContextLoaderPlugIn">
- <set-property property="
- contextConfigLocation"
- value="/WEB-INF/
- spring-servlet.xml" />
- < SPAN>plug-in>
- < SPAN>struts-config>
在这个配置文件中,由于使用spring来管理struts的action所以有两个地方要注意:
1.Action的”type”指向spring里定义的用来处理action的类,而不是自己写的action.
2.增加了一个”
此时spring-servlet.xml配置文件如下:
- xml version="1.0" encoding="UTF-8"?>
-
- "http://www.springframework.org/dtd/spring-beans.dtd">
- <beans>
- <bean name="/login" class="com.ln.struts.LoginAction"
- singleton="false">
- 此处的bean与struts-config.xml中的action相对应,name与struts- config.xml中action的path一致
- <property name="msg">
- <value>Hello World< SPAN>value>
- < SPAN>property>
- < SPAN>bean>
- < SPAN>beans>
三.应该注意的小问题
1.要把开发中所需要用到的包,tld文件相应地放在WEB-INF里的lib,tlds文件夹中。
2.在需要使用到struts,spring,jstl等的标签时,一定要在web.xml中
用下面
- <taglib>
- <taglib-uri>http://java.sun.com/jstl/core< SPAN>taglib-uri>
- <taglib-location>/WEB-INF/c.tld< SPAN>taglib-location>
- < SPAN>taglib>
这样的标签先进行声明。
【编辑推荐】