Eclipse下配置spring应用

  Eclipse 下配置 spring 应用
一.        关于 Spring 的环境配置问题。
需要的包(除了基本 java web 开发环境(如 jdk,tomcat )之外的): spring-framework jakarta-struts( 后面有关于 spring struts 结合的部分要用到 ).
二.        关于 Spring 的基本配置文件( 我个人感觉,学习开发框架时,在明白了它的设计思想之后,配置文件设置是一个关键,等成功搭建起这个框架之后,在里面编程相信都难不到大家的
 
在建立单纯的 spring 项目时, web.xml 文件如下:
<? xml version = "1.0" encoding = "UTF-8" ?>
<! DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd" >
< web-app >
       < servlet >
              < servlet-name > spring </ servlet-name >
              < servlet-class >
                     org.springframework.web.servlet.DispatcherServlet
              </ servlet-class >
              < init-param >
                     < param-name > contextConfigLocation </ param-name >
       < param-value > /WEB-INF/ application.xml </ param-value >
              </ init-param >
       上面加框的一段是用来指定 spring 配置文件的(可以为任意名,如上),也可以不写,不写时 spring 的配置文件默认名为 :   “ < servlet-name > -servlet.xml 。(如此处的 < servlet-name > 的值为 spring , 则配置文件名为: springt-servlet.xml
< load-on-startup > 1 </ load-on-startup >
       </ servlet >
       < servlet-mapping >
              < servlet-name > spring </ servlet-name >
              < url-pattern > *.do </ url-pattern >
       </ servlet-mapping >
</ web-app >
 
 
这时候 spring 配置文件(这里假定为 spring-servlet.xml )如下:
<? xml version = "1.0" encoding = "UTF-8" ?>
<! DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd" >
<!-- - Application context definition for "springapp" DispatcherServlet. -->
< beans >
       < bean id = "LoginAction" class = "com.ln.spring.LoginAction" >
bean 中配置有属性(包括 bean 格式的属性)时, bean 对应的 java 文件内必须要定义一个与 property name 名字一样 的属性值,并且需要有这个属性值的 getter setter 方法。
              < property name = "msg" >                     
< value > Hello World </ value >
              </ property >
              < property name = "data" >
                     < ref bean = "data1" />
当一个 bean 中有格式为 bean 的属性时,用“ < ref bean = " bean-name " /> ”来指定,在指定 ”bean-name” 后还要在下面用 < bean ></ bean > 来指定这个 bean 格式的属性的值 , 此时 < bean ></ bean > 中的 ”id” 必须与前面指定的 ”bean-name” 一致。
              </ property >
       </ bean >
       < bean id = "data1" class = "com.ln.spring.MyAction" >
              < property name = "message" >
                     < value > liang </ value >
              </ property >               
       </ bean >
       < bean id = "urlMapping"       class = "org.springframework.web.servlet.handler.SimpleUrlHandlerMapping" >
              < property name = "mappings" >
                     < props >
                            < prop key = "/login.do" > LoginAction </ prop >
                     </ props >
              </ property >
       </ bean >
</ beans >
 
而在建立 spring+struts 项目时, web.xml 文件按照 struts 项目的规格建立,在此不在多说,而在此时 struts-config.xml 如下:
<? xml version = "1.0" encoding = "UTF-8" ?>
<! DOCTYPE struts-config PUBLIC "-//Apache Software 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" />
       </ 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" />
              </ action >
       </ action-mappings >
       < plug-in
       className = "org.springframework.web.struts.ContextLoaderPlugIn" >
              < set-property property = "contextConfigLocation"
                     value = "/WEB-INF/ spring-servlet.xml " />
       </ plug-in >
</ struts-config >
在这个配置文件中,由于使用 spring 来管理 struts action 所以有两个地方要注意:
1.  Action ”type” 指向 spring 里定义的用来处理 action 的类,而不是自己写的 action.
2. 增加了一个 < plug-in > </ plug-in > 来指定 spring 配置文件。
 
 
此时 spring-servlet.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 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 </ value >
              </ property >
       </ bean >
</ beans >
 
三.        应该注意的小问题:
1.  要把开发中所需要用到的包, tld 文件相应地放在 WEB-INF 里的 lib tlds 文件夹中。
2.  在需要使用到 struts,spring,jstl 等的标签时,一定要在 web.xml
用下面
<taglib>
    <taglib-uri>http://java.sun.com/jstl/core</taglib-uri>
    <taglib-location>/WEB-INF/c.tld</taglib-location>
</taglib>
这样的标签先进行声明。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=245046
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值