Spring2.0.3 整和Hibernate3.2,Struts1.3.5总结

来源:互联网 发布:java 并发包 编辑:程序博客网 时间:2024/05/17 07:48

刚开始学习Spring没几天,由于急用,在整和Hibernate时遇到一些问题,代码反复看过n遍,No Problem!但就是启动服务器报错,还提示偶映射文件有问题!害惨偶啦!!!

最后,索性重新建了个工程,又把Spring dist目录下的3个包,和lib下的所有包(排除jakarta-commons/commons-attributes-compiler.jar、j2ee/servlet-api.jar、j2ee/jsp-api.jar)加了一边,此时没有再加Hibernate3.2中的包了,就没有问题了!

现在要赶快进入下一步,整和Struts1.3.5!    经验:在eclipse中开发,有些包还是不能加的啊!    

首先,Spring2.0.6中包含的Struts版本较老(可能是1.2.9),所以要替换掉它啦!找来相应的包,如下几个
 

 

 

 

 

添加 到工程的lib目录下,加入到java build path中,现在包的问题我的是已经解决了!再要考虑如何加载Spring,Struts的配置文件了!

Struts配置文件加载方法: 在web.xml中添加,

<servlet>
    
<servlet-name>actionServlet</servlet-name>
    
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
    
<init-param>
      
<param-name>config</param-name>
      
<param-value>/WEB-INF/struts-config.xml</param-value>
    
</init-param>
    
<init-param>
      
<param-name>debug</param-name>
      
<param-value>2</param-value>
    
</init-param>
    
<init-param>
      
<param-name>detail</param-name>
      
<param-value>2</param-value>
    
</init-param>
    
<load-on-startup>2</load-on-startup>
 
</servlet>

  
<!-- Standard Action Servlet Mapping -->
  
<servlet-mapping>
    
<servlet-name>actionServlet</servlet-name>
    
<url-pattern>*.do</url-pattern>
  
</servlet-mapping>

 Spring配置文件XXXContext.xml加载方法1: 在web.xml中添加如下内容,多个spring的配置文件,逗号分开!

<context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>/WEB-INF/applicationContext.xml
,/WEB-INF/dao-context.xml,/WEB-INF/action-context.xml</param-value>
</context-param>

<listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>

 加载方法2: 在Sturts-config.xml中加入如下代码

<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn">
     
<set-property property="contextConfigLocation"
        value
="/WEB-INF/applicationContext.xml,/WEB-INF/dao-context.xml,/WEB-INF/action-context.xml"/>
</plug-in>

Spring IoC容器要对Struts的Action进行管理,ok!也就是Struts的ActionServlet捕获到*.do,转到Spring来处理用户请求,需要Sturts-config.xml中加入

<controller
       
processorClass="org.springframework.web.struts.DelegatingRequestProcessor"/>

Struts的配置和以前一样,但可以不用加type属性.Spring的dao-context.xml来接受用户的action,

<beans>
     
<bean name="/user/login" class="cn.com.action.LoginAction" scope="prototype">
    
<property name="userValidateDao">
        
<ref bean="userValidateDao"/>
    
</property>
    
</bean>
</beans>

此处的name="/user/login"必须和Struts的path对应起来,而不是id属性.这样就实现了Spring对Action的管理,也就是整和了Struts1.3.5!

注:开发环境,Eclipse3.2,Hibernate3.2,Struts1.3.5,Spring2.0.3,有些包需要自己加,这点要特别注意!具体的代码就不加了,框架大概是这样的!

下一步是要整和Struts2.0.6,老师要用的!配置时像WebWork2,但我还没用过,还要加油啊!!!!


 

原创粉丝点击