使用idea工具,maven来构建struts2项目,给大家详细截图讲解下,主要是针对新接触struts2的同学。
大概的步骤如下:
- 新建项目
- 配置pom.xml文件需要的依赖
- 配置web.xml文件
- 添加并配置struts.xml文件
- 添加并编写需要用的jsp文件
- 配置Tomcat
- 启动运行
- 报错及原因分析和解决方案
1.新建项目
1.1.选Maven,勾选Create from archetype,然后选中如下图的那条。
1.2.输入GroupId和ArtifactId,这两个可以按自己意愿随意输,无需跟下图完全一致。
1.3.直接选择下一步Next
1.4.直接完成Finish
1.5.右下角选择Enable Auto_import,maven会自动加载pom中的依赖jar
1.6.项目新建成功的结构如下图
2.配置pom.xml文件的struts2依赖
2.1.在pom.xml的dependencies中添加如下依赖
<dependency> <groupId>org.apache.strutsgroupId> <artifactId>struts2-coreartifactId> <version>2.5.18version> dependency>
2.2.效果截图如下
2.3.添加后,会自动加载,效果如下
3.配置web.xml文件,引入struts核心功能——配置过滤器
3.1.向web.xml中添加filter和filter-mapping节点信息
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 Applicationdisplay-name>
<filter>
<filter-name>struts2filter-name>
<filter-class>
org.apache.struts2.dispatcher.filter.StrutsPrepareAndExecuteFilter
filter-class>
filter>
<filter-mapping>
<filter-name>struts2filter-name>
<url-pattern>/*url-pattern>
filter-mapping>
4.接下来添加struts.xml文件,并配置
4.1.新建struts.xml文件
4.2.向文件中添加内容,action命名为success,直接指向success.jsp
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="basicstruts" extends="struts-default"> <action name="success"> <result>success.jspresult> action> package> struts>
5.添加success.jsp文件
5.1.添加success.jsp文件
5.2.添加title和body信息如下
<%@ page contentType="text/html;charset=UTF-8" language="java" %> <html> <head> <title>Successtitle> head> <body> <h2>Successh2> body> html>
6.配置tomcat
6.1.从这进入配置页面
6.2.点击加号,然后选择tomcat server,选择后面的local
6.3.选择第二个Deployment选项卡,点击右边的加号,选择Artifact
6.4.选择如下图的带exploded的,并确定ok
6.5.回到上级页面,将Application context改为/,然后apply并ok
7.启动运行
7.1.点击右上角的绿色右三角或者下方的run选项卡里的右三角
8.遇到问题和解决方案
8.1.报错,如下图
There is no Action mapped for namespace [/] and action name [success] associated with context path [].
8.2.解决方案:这是因为没法关联到struts.xml,需要操作如下步骤,可以使用ctrl+alt+shift+s,启动该界面,如下图依次操作
8.3可以看到已经有了该关联文件
8.4.再次运行,输入localhost:8080/success,就直接转到了success.jsp页面
源码git地址:https://github.com/meersburg/simplestruts2.git