spring整合struts2

news2024/12/26 0:33:59

因为最近工作的需要不得不学习struts2,整理了一下spring整合struts2的过程
需要详细了解struts2的朋友可以自行百度,这里只是简单的讲述如何使用
我是用的是idea进行项目构建的,eclipse的话可以自己百度一下

struts的官网:https://struts.apache.org/

首先构建一个spring项目
按步骤勾选完成之后继续往下创建
在这里插入图片描述
在这里插入图片描述
这里可以自己选择自己的maven版本以及设置等信息
在这里插入图片描述

创建完成等待加载,会出现如下目录
在这里插入图片描述
需要自己手动在main目录下创建java,resources目录
在这里插入图片描述

这样就初步完成了项目构建,接下来把相关的依赖导入

<dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.11</version>
      <scope>test</scope>
    </dependency>
    <!--        引入struts2核心依赖-->
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts2-core</artifactId>
      <version>2.5.22</version>
    </dependency>
    <!-- 1.Spring核心依赖 -->
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-core</artifactId>
      <version>4.3.7.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-beans</artifactId>
      <version>4.3.7.RELEASE</version>
    </dependency>
    <dependency>
      <groupId>org.springframework</groupId>
      <artifactId>spring-context</artifactId>
      <version>4.3.7.RELEASE</version>
    </dependency>
<!--    spring 整合struts2依赖-->
    <dependency>
      <groupId>org.apache.struts</groupId>
      <artifactId>struts2-spring-plugin</artifactId>
      <version>2.5.22</version>
    </dependency>
<!--    servlet规范依赖-->
    <dependency>
      <groupId>javax.servlet</groupId>
      <artifactId>servlet-api</artifactId>
      <version>2.5</version>
    </dependency>
  </dependencies>

配置web.xml
在webapp>WEB-INF目录下

<!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>
  <display-name>Archetype Created Web Application</display-name>
  <filter>
    <filter-name>struts2</filter-name>
    <filter-class>org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter</filter-class>
  </filter>

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

  <!--  配置spring.xml配置文件位置,方便监听器读取,默认加载名为contextConfigLocation-->
  <context-param>
    <param-name>contextConfigLocation</param-name>
    <param-value>classpath:spring.xml</param-value>
  </context-param>
  <!--  配置服务器监听器,方便bean工厂创建,默认加载名为contextConfigLocation-->
  <listener>
    <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
  </listener>

</web-app>

创建一个controller
在java目录下自行创建一个类,根据自己的的项目进行创建
在这里插入图片描述

创建spring.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

<!--    spring接管struts的action创建   scope="prototype"属性代表其为多例模式-->
    <bean id="strutsController" class="com.zjh.controller.strutsController" scope="prototype">
    </bean>
</beans>

创建struts.xml配置文件
在resources目录下创建该文件,有几处地方需要根据自己的项目进行修改,请认真阅读

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE struts PUBLIC
        "-//Apache Software Foundation//DTD Struts Configuration 2.5//EN"
        "http://struts.apache.org/dtds/struts-2.5.dtd">

<struts>
    <package name="user" extends="struts-default">
        <action name="test" class="spring.xml中的beanID" method="pageController">
            <result name="自定义名,和controller中return保持一致">/index.jsp</result>
        </action>
    </package>
</struts>

配置tomcat
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
启动服务
测试:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/22074.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PTA题目 阶梯电价

为了提倡居民节约用电&#xff0c;某省电力公司执行“阶梯电价”&#xff0c;安装一户一表的居民用户电价分为两个“阶梯”&#xff1a;月用电量50千瓦时&#xff08;含50千瓦时&#xff09;以内的&#xff0c;电价为0.53元/千瓦时&#xff1b;超过50千瓦时的&#xff0c;超出部…

前缀和【一维前缀和与二维前缀和】

全文目录&#x1f600; 一维前缀和&#x1f914; 构建一维前缀和数组&#x1f635;‍&#x1f4ab; 子序列的和&#x1f600; 二维前缀和&#x1f914; 构建二维前缀和数组&#x1f635;‍&#x1f4ab; 子矩阵的和&#x1f600; 一维前缀和 一维前缀和很简单&#xff0c;就是…

[附源码]java毕业设计铁路法院数字档案管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

[附源码]java毕业设计网上花店系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

同步时序逻辑电路

分类 按逻辑功能不同分为&#xff1a;RS触发器、D触发器、JK触发器、T触发器。按触发方式不同分为&#xff1a;电平触发器、边沿触发器和脉冲触发器。按电路结构不同分为&#xff1a;基本RS触发器和钟控触发器。按存储数据原理不同分为&#xff1a;静态触发器和动态触发器。按…

【从零开始学微服务】03.软件架构的演化过程

大家好&#xff0c;欢迎来到万猫学社&#xff0c;跟我一起学&#xff0c;你也能成为微服务专家。 目前大部分的企业系统和互联网应用都是采用Web的形式提供服务能力&#xff0c;根据系统的组织方式和部署结构&#xff0c;我们通常把软件架构的演化过程分为以下几个阶段&#xf…

微信小程序实战,基于vue2实现瀑布流

1、什么是瀑布流呢&#xff1f; 瀑布流&#xff0c;又称瀑布流式布局。是比较流行的一种网站页面布局&#xff0c;视觉表现为参差不齐的多栏布局&#xff0c;随着页面滚动条向下滚动&#xff0c;这种布局还会不断加载数据块并附加至当前尾部。 瀑布流对于图片的展现&#xff0c…

HTML+CSS+JS大作业:生态环境网站设计——环境保护主题 大学生环保主题网页制

⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材&#xff0c;DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 环境保护 | 保护地球 | 校园环保 | 垃圾分类 | 绿色家园 | 等网站的设计与制作HTML期末大学生网页设计作业 HTML&#xff1a;结构 CSS&#xff1a;样…

【计算机编程基础】

计算机编程基础1 本节目标2 编程语言2.1 编程2.2 计算机语言2.3 编程语言2.4 翻译器2.5 编程语言和标记语言区别3 计算机基础3.1 计算机组成3.2 数据存储3.3 数据存储单位3.4 程序运行1 本节目标 说出什么是编程语言区分编程语言和标记语言的不同说出常见的数据存储单位及其换…

Maven入门学习——使用IDEA创建Maven文件的两种方式(内含配置setting文件)

使用IDEA创建Maven文件的两种方式一、前言二、前期准备&#xff08;配置setting文件&#xff09;1.修改文件放置位置2.改用阿里云镜像3.修改默认JDK版本三、构建Maven项目1.新建空项目2.设置项目中Maven版本3.新建模块4.配置模块5.测试四、使用插件创建Maven项目1.新建Maven项目…

Python字典制作“编码本”“密码本”,“试炼”加、解密文本操作

【点击此处跳转笔记正文】Python 官网&#xff1a;https://www.python.org/ Free&#xff1a;大咖免费“圣经”教程《 python 完全自学教程》&#xff0c;不仅仅是基础那么简单…… My CSDN主页、My HOT博、My Python 学习个人备忘录好文力荐、 老齐教室 自学并不是什么神秘的…

【k8s】2、二进制安装k8s

文章目录一、环境准备二、操作系统的初始化三、部署Etcd集群1、 准备cfssl证书生成工具2、生成etcd证书3、部署Etcd集群四、安装docker(所有node节点)五、部署master组件1、 准备证书2、 准备二进制文件、token3、 启动kube-apiserver服务4、启动scheduler服务5、启动controlle…

SpringBoot SpringBoot 开发实用篇 4 数据层解决方案 4.15 ES 文档操作

SpringBoot 【黑马程序员SpringBoot2全套视频教程&#xff0c;springboot零基础到项目实战&#xff08;spring boot2完整版&#xff09;】 SpringBoot 开发实用篇 文章目录SpringBootSpringBoot 开发实用篇4 数据层解决方案4.15 ES 文档操作4.15.1 文档操作4.15.2 小结4 数据…

最新最全面的Spring详解(四)——面向切面编程

前言 本文为 【Spring】面向切面编程 相关知识&#xff0c;下边将对AOP概述&#xff08;包含什么是AOP、AOP相关术语、Spring AOP通知类型&#xff09;&#xff0c;Spring AOP能力和目标&#xff0c;AOP代理&#xff0c;AspectJ风格的支持&#xff08;包含对于 AspectJ的支持、…

[附源码]java毕业设计图书馆自习室管理系统

项目运行 环境配置&#xff1a; Jdk1.8 Tomcat7.0 Mysql HBuilderX&#xff08;Webstorm也行&#xff09; Eclispe&#xff08;IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持&#xff09;。 项目技术&#xff1a; SSM mybatis Maven Vue 等等组成&#xff0c;B/S模式 M…

LIO-SAM

3D激光SLAM&#xff1a;位姿融合输出&#xff0c;LIO-SAM 提出了一个利用GT-SAM的紧耦合激光雷达惯导里程计的框架。实现了高精度、实时的移动机器人的轨迹估计和建图。这里主要讲解如何通过imu来进行位姿融合输出的。 LIO-SAM的全称是&#xff1a;Tightly-coupled Lidar Iner…

修复微信小程序不能获取头像和昵称的bug,微信小程序新版头像昵称API使用

导读&#xff1a; 大厂程序员都是有KPI绩效考核的&#xff0c;所以他们不能闲着&#xff0c;每天要想着怎么优化程序代码、怎么满足奇葩用户的需求&#xff0c;所以苦逼了我们这些小公司程序员&#xff0c;微信一个小小的API接口改动&#xff0c;可能就让一个小公司因此损失惨…

人工智能——大白话熟悉目标检测基本流程

&#x1f466;&#x1f466;一个帅气的boy&#xff0c;你可以叫我Love And Program &#x1f5b1; ⌨个人主页&#xff1a;Love And Program的个人主页 &#x1f496;&#x1f496;如果对你有帮助的话希望三连&#x1f4a8;&#x1f4a8;支持一下博主 大白话熟悉目标检测基本…

天然产物化合物库在肥胖中的潜在靶点 | MedChemExpress

脂肪有分类&#xff1f;都说“燃脂”&#xff0c;但很少有人了解脂肪组织。其实脂肪组织主要分为两类&#xff1a;白色脂肪组织 (WAT) 和棕色脂肪组织 (BAT)。白色脂肪以甘油三酯的形式储存多余的能量&#xff0c;而棕色脂肪则通过消耗能量产热&#xff0c;在保暖和抵抗肥胖中起…

31.nacos集成Feign和Gateway实例(springcloud)

一、项目nacos-client-a 1.pom.xml文件 新增了springcloud的依赖 新增了springcloud的依赖管理 新增了feign依赖 <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" xmlns:xsi"http://…