maven快速入门第八讲——maven项目整合Struts2框架

创建一个maven标准的web项目

首先,我们需要创建一个maven标准的web项目,怎么做,不需要我说了吧!如果有不知道的,那么可以参考我这篇博客——《在eclispe中配置maven,然后再使用maven创建一个web项目》

实现web项目整合Struts2框架

第一步,在web项目的pom.xml文件中添加如下依赖:

<dependency>
    <groupId>org.apache.struts</groupId>
    <artifactId>struts2-core</artifactId>
    <version>2.3.24</version>
</dependency>

这时,你会发现与Struts2开发相关的jar包都引入到该web项目中了,再也不用像之前那样一个一个地引入jar包了,而且还要想清楚到底要引入哪些jar包,费时费神!
在这里插入图片描述
有一点需要我们注意,在添加servlet-api-2.5.jar与jsp-api-2.0.jar的依赖时,一定要将这俩依赖的scope置为provided。
在这里插入图片描述
第二步,在src/main/java目录下新建一个com.meimeixia.action包,并在该包编写一个Action,例如HelloAction.java。

package com.meimeixia.action;

import com.opensymphony.xwork2.ActionSupport;

public class HelloAction extends ActionSupport {

	@Override
	public String execute() throws Exception {
		System.out.println("进入HelloAction,返回默认的jsp页面!");
		return SUCCESS;
	}
	
}

第三步,在src/main/resources目录下新建一个struts.xml文件,其内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
	"-//Apache Software Foundation//DTD Struts Configuration 2.3//EN"
	"http://struts.apache.org/dtds/struts-2.3.dtd">

<struts>
	<package name="default" namespace="/" extends="struts-default">
		<action name="helloAction" class="com.meimeixia.action.HelloAction">
			<result>/index.jsp</result>
		</action>
	</package>
</struts>

相应地,就要在src/main/webapp目录下新建一个index.jsp页面了。

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
	第一次使用maven工程,进入index.jsp页面
</body>
</html>

第四步,在web.xml文件中配置Struts2的前端控制器。

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
	xmlns="http://java.sun.com/xml/ns/javaee"
	xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
	version="2.5">
	<display-name>mavenstruts</display-name>

	<filter>
		<filter-name>struts</filter-name>
		<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>struts</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>
</web-app>

第五步,使用maven内置的tomcat的插件(tomcat7-maven-plugin)来运行以上创建好的web项目,大家可以按照下图所示的步骤进行操作。
在这里插入图片描述
然后,在弹出的窗口中输入tomcat7:run命令,点击Run即可运行以上创建好的web项目。
在这里插入图片描述
这时,eclipse控制台将会打印如下内容。
在这里插入图片描述
从中可以发现使用maven内置的tomcat7插件来运行web项目已经运行成功了。紧接着,打开Google Chrome浏览器,并访问http://localhost:8080/mavenstruts/helloAction这样一个url地址,你就会看到如下图所示的结果了。
在这里插入图片描述
你有没有想过,通过maven内置的tomcat7插件来运行maven项目时,这个tomcat7插件它到底在哪里呢?实际上,它在本地仓库里面,如下图所示。
在这里插入图片描述
你不禁又要问了,这个tomcat7插件它到底是怎么工作的呢?其实,这个tomcat7插件是去模拟了一个tomcat服务器的运行环境,它并不是一个真正的tomcat服务器,跟我们本地的tomcat服务器还是有差别的。通过这个tomcat7插件启动了模拟出来的tomcat服务器,那么我们这个web项目是丢在了哪里呢?找不到它,因为它就是一个虚的玩意。

可以看到这个tomcat7插件也有其坐标,如下图所示。
在这里插入图片描述
我们可以把这个插件当作一个依赖(引用坐标)来看待,那么它是怎么去模拟tomcat服务器的运行环境的呢?实际上,它是把tomcat服务器运行需要的那些jar包都依赖进去了,这样就相当于一个tomcat服务器了,但我们要知道它并不是一个真正的tomcat服务器。
在这里插入图片描述
在真实项目开发过程中,一般都会推荐使用本地的tomcat服务器来部署以及运行项目,因为这样会比较直观。为什么直观呢?因为项目确确实实地部署在了本地tomcat服务器的webapps目录下。只不过使用本地的tomcat服务器来部署以及运行项目有点繁琐而已!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李阿昀

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值