struts 和spring 整合

一    struts 配置

1:首先是struts的架包导入:

   

commons-fileupload-1.3.1.jar

commons-io-2.2.jar

commons-lang3-3.1.jar

commons-logging-1.1.3.jar

freemarker-2.3.19.jar

javassist-3.11.0.GA.jar

ognl-3.0.6.jar

struts2-core-2.3.16.3.jar

xwork-core-2.3.16.3.jar

2:配置struts 的 web.xml 内容

      <filter>
        <filter-name>struts2</filter-name>        
        <filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
    </filter>

     <filter>
        <filter-name>struts-cleanup</filter-name>
        <filter-class>
            org.apache.struts2.dispatcher.ActionContextCleanUp
        </filter-class>
    </filter>

<filter-mapping>
        <filter-name>struts2</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>

3:配置 struts.xml

<?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="struts2"  extends="struts-default">
       <action name="tiaozhuan" class="com.action.TiaoZhuanAction" method="tiao">
           <result name="success">/webpage/success.jsp</result>
       </action>
   </package>
</struts>

4:网页实现跳转

index.jsp 中跳转

<a href="tiaozhuan.action">测试struts跳转</a>  

5:配置***Action.java

public class TiaoZhuanAction  extends ActionSupport{
public String tiao(){
return "success";
}

二:spring 配置

1:导入spring所需最基础的架包

spring-core.jar

 报错:java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoaderListener
    ——>依赖:spring-web.jar

        ——>依赖:spring-context.jar
        ——>依赖:spring-beans.jar
        ——>依赖:commons-logging.jar

还需:

            struts2-spring-plugin-2.1.8.1.jar

**报错:java.lang.NoClassDefFoundError:org/springframework/asm/ClassVisitor

需导入:org.springframework.asm-3.0.5.RELEASE.jar

**报错:java.lang.NoClassDefFoundError: org/springframework/expression/PropertyAccessor

需导入:org.springframework.expression-3.1.0.M1.jar 


2:web.xml中spring部分

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

通过配置ContextLoaderListener监听器,使容器启动时,自动加载applicationContext配置,

默认情况下,会加载WEB-INF/applicationContext.xml这个文件,我们可以通过配置contextConfigLocation参数改变配置文件的路径

<context-param>
     <param-name>contextConfigLocation</param-name>
     <param-value>WEB-INF/classes/applicationContext.xml</param-value>
</context-param>
可以有多个<param-value></param-value>标签


3:struts.xml中增加内容

<struts>

      <constant name="struts.objectFactory" value="spring" />

</struts>

4:配置applicationContext.xml

<?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:aop="http://www.springframework.org/schema/aop"
    xmlns:tx="http://www.springframework.org/schema/tx"
    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd
           http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop-2.0.xsd
           http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx-2.0.xsd">
           
           <bean id="tiaozhuanspring" class="com.action.TiaoZhuanAction"></bean>
</beans>

4:事项spring跳转应用

struts中配置action使用sprng产生的bean,

      <action name="tiaozhuansp" class="tiaozhuanspring" method="tiao">
           <result name="success">/webpage/success.jsp</result>
       </action>      

5:在网页中进行测试

    <a href="tiaozhuansp.action">测试struts,spring跳转</a>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(含运行文档+数据库+前后端代码),Java实现
C语言是一种广泛使用的编程语言,它具有高效、灵活、可移植性强等特点,被广泛应用于操作系统、嵌入式系统、数据库、编译器等领域的开发。C语言的基本语法括变量、数据类型、运算符、控制结构(如if语句、循环语句等)、函数、指针等。下面详细介绍C语言的基本概念和语法。 1. 变量和数据类型 在C语言中,变量用于存储数据,数据类型用于定义变量的类型和范围。C语言支持多种数据类型,括基本数据类型(如int、float、char等)和复合数据类型(如结构体、联合等)。 2. 运算符 C语言中常用的运算符括算术运算符(如+、、、/等)、关系运算符(如==、!=、、=、<、<=等)、逻辑运算符(如&&、||、!等)。此外,还有位运算符(如&、|、^等)和指针运算符(如、等)。 3. 控制结构 C语言中常用的控制结构括if语句、循环语句(如for、while等)和switch语句。通过这些控制结构,可以实现程序的分支、循环和多路选择等功能。 4. 函数 函数是C语言中用于封装代码的单元,可以实现代码的复用和模块化。C语言中定义函数使用关键字“void”或返回值类型(如int、float等),并通过“{”和“}”括起来的代码块来实现函数的功能。 5. 指针 指针是C语言中用于存储变量地址的变量。通过指针,可以实现对内存的间接访问和修改。C语言中定义指针使用星号()符号,指向数组、字符串和结构体等数据结构时,还需要注意数组名和字符串常量的特殊性质。 6. 数组和字符串 数组是C语言中用于存储同类型数据的结构,可以通过索引访问和修改数组中的元素。字符串是C语言中用于存储文本数据的特殊类型,通常以字符串常量的形式出现,用双引号("...")括起来,末尾自动添加'\0'字符。 7. 结构体和联合 结构体和联合是C语言中用于存储不同类型数据的复合数据类型。结构体由多个成员组成,每个成员可以是不同的数据类型;联合由多个变量组成,它们共用同一块内存空间。通过结构体和联合,可以实现数据的封装和抽象。 8. 文件操作 C语言中通过文件操作函数(如fopen、fclose、fread、fwrite等)实现对文件的读写操作。文件操作函数通常返回文件指针,用于表示打开的文件。通过文件指针,可以进行文件的定位、读写等操作。 总之,C语言是一种功能强大、灵活高效的编程语言,广泛应用于各种领域。掌握C语言的基本语法和数据结构,可以为编程学习和实践打下坚实的基础。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值