【Web】Eclipse + Maven + Struts搭建服务器
一、环境
系统:Windows7
IDE:Eclipse-Kepler Service Release 2
使用插件:Maven(请预先在电脑上安装Maven)
二、搭建
在Eclipse中新建一个Maven工程:

选择Maven Project。

注意选择maven-archetype-web选项。Catalog处,点击右边的Configuration按钮,弹出对话框:

点击右边的Add remote Catalog,在Catalog file输入框中输入http://repo1.maven.org/maven2/archetype-catalog.xml,Description则随便输入(等于去一个名字)然后点击OK,继续Next。

在此处输入项目的group id和artifact id。点击Finish。此时项目的目录结构如下:

项目报错误,暂时可以不用管。下面继续配置。因为要用到Struts2,所以需要依赖很多相应的jar包,这就是使用Maven的目的,下面修改Maven的pom文件如下:
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.amos</groupId>
<artifactId>struts2</artifactId>
<packaging>war</packaging>
<version>0.0.1-SNAPSHOT</version>
<name>struts2 Maven Webapp</name>
<url>http://maven.apache.org</url>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.apache.struts</groupId>
<artifactId>struts2-core</artifactId>
<version>2.3.16</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-io</artifactId>
<version>1.3.2</version>
</dependency>
</dependencies>
<build>
<finalName>struts2</finalName>
</build>
</project>
增加了两个依赖的jar包。

配置web.xml如下:
<!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.ng.filter.StrutsPrepareAndExecuteFilter
</filter-class>
</filter>
<filter-mapping>
<filter-name>struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
</web-app>
这里拷贝的是struts-2.3.16-all.zip包里的apps/struts2-blank.war中的web.xml。也就是一个Struts2默认的web.xml的配置。
接着,我们来实现Action,在Java Resources目录下面新建一个源文件夹:

在该文件夹下面新建一个pacakge(com.android.displaymain),然后新建一个HelloAction,如下:

HelloAction代码如下:
package com.android.displaymain;
import com.opensymphony.xwork2.ActionSupport;
public class HelloAction extends ActionSupport{
@Override
public String execute() throws Exception {
// TODO Auto-generated method stub
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="com.android.server" namespace="/" extends="struts-default" >
<action name="HelloAction" class="com.android.displaymain.HelloAction" method="execute">
<result name="success">index.jsp</result>
</action>
</package>
</struts>
OK,现在右击项目,Run As ->Run on Server,此时弹出对话框,直接next,finish的,最后在Eclipse里面会弹出如下Tab:

这是因为我们没有指明Action,将链接改为:http://localhost:8080/display/HelloAction之后,即可得到如下输出:

到这里,整个项目就配置完成了。如果想要默认的情况下也能正确显示页面,需要我们配置一个默认的Action,将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="com.android.server" namespace="/" extends="struts-default" >
<default-action-ref name="index"/> <action name="index">
<result>/index.jsp</result> <!-- index.htm为项目根目录的默认页面 -->
</action> <action name="HelloAction" class="com.android.displaymain.HelloAction" method="execute">
<result name="success">index.jsp</result>
</action>
</package>
</struts>
三、总结
这里主要讲述的是如何快速搭建一个可用的服务器,过程比较长,但是没有什么难度,需要一定的Maven基础和Struts基础,如果不会Maven,需要手动导入Jar包,比较麻烦,读者可以自行动手练习配置。
【Web】Eclipse + Maven + Struts搭建服务器的更多相关文章
- eclipse +maven+ssm搭建矿建
记录一下搭建框架的过程1.下载最新的eclipse https://www.eclipse.org/downloads/download.php?file=/oomph/epp/neon/R/ec ...
- java web: eclipse & maven & jetty & struts2 & mysql = 简单登录页面
第一次接触java web开发,花费了一天半的时间,写了个简单的登录页面,以此文为记. 开发工具 Eclipse Luna Release (4.4.0) 已集成maven,maven目前的体会就是管 ...
- eclipse+maven springMVC搭建
1.新建项目: 选择Maven Project 选择项目位置,这里我选择的是C:\Users\admin\workspace\practice 选择maven项目类型,这里选择webapp: 填写Gr ...
- windows 环境下 eclipse + maven + tomcat 的 hello world 创建和部署
主要记录自己一个新手用 eclipse + maven + tomcat 搭建 hello world 的过程,以及遇到的问题.讲真都是自己通过百度和谷歌一步步搭建的项目,没问过高手,也没高手可问,由 ...
- JavaEE开发基于Eclipse的环境搭建以及Maven Web App的创建
本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...
- JavaEE开发之基于Eclipse的环境搭建以及Maven Web App的创建
本篇博客就完整的来聊一下如何在Eclipse中创建的Maven Project.本篇博客是JavaEE开发的开篇,也是基础.本篇博客的内容干货还是比较多的,而且比较实用,并且都是采用目前最新版本的工具 ...
- 搭建eclipse+maven+scala-ide的scala web开发环境
http://www.tuicool.com/articles/NBzAzy 江湖传闻,scala开发的最佳利器乃 JetBrains 的神作 IntelliJ IDEA ,外加构建工具sbt 是也. ...
- Maven+Struts+Hibernate+Spring简单项目搭建
这段时间学习如何使用Maven+Struts+Hibernate+Spring注解方式建立项目,在这里感谢孙宇老师. 第一次写博客,主要是方便自己查看,同时分享给大家,希望对大家有所帮助,我也是 ...
- Eclipse利用Maven2搭建SpringMVC框架的Web工程
一.准备工作: 下载apache-maven--> 配置Maven_home -->下载Eclipse Maven插件 二.新建工程: 选择新建Maven Project arche ...
随机推荐
- HTML5中已经不支持元素汇总,持续更新
HTML5中已经不支持以下的元素,不建议在进行开发时再使用以下的元素. 1.acronym(建议abbr) : 定义首字母缩写 2.applet(建议object): 定义 applet 3.bas ...
- Cocoa编程开发者手册
Cocoa编程开发者手册(Objective-C权威著作超一流翻译阵容) [美] 奇斯纳尔(Chisnall,D.) 著 霍炬等 译 ISBN 978-7-121-12239-2 2013年7月出版 ...
- D. Book of Evil
D. Book of Evil time limit per test 2 seconds memory limit per test 256 megabytes input standard inp ...
- iOS-常用的辅助工具软件
1.Navicat Premium11.0.20破解版快速安装配置(附文件) Navicat Premium是当下非常好用的数据库管理软件,但是价格非常昂贵,并且还有某些小bug,感觉3000+的 ...
- Leetcode 203 Remove Linked List Elements 链表
去掉链表中相应的元素值 /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next ...
- android: 多线程编程基础
9.1 服务是什么 服务(Service)是 Android 中实现程序后台运行的解决方案,它非常适合用于去执行那 些不需要和用户交互而且还要求长期运行的任务.服务的运行不依赖于任何用户界面,即使 ...
- 利用Mongodb的复制集搭建高可用分片,Replica Sets + Sharding的搭建过程
参考资料 reference: http://mongodb.blog.51cto.com/1071559/740131 http://docs.mongodb.org/manual/tutori ...
- gson 自定义对象转换格式
有时候我们希望gson按照我们想要的方式转换,比如将日期转换为时间戳 class GsonBuilderUtil { public static Gson create() { GsonBuilder ...
- 最近面试遇到的Windows相关的题目
上周准备在公司内部转岗,面了3个部门windows客户端相关的工作,最终拿到3个Offer,主要涉及C++和Windows两大块内容,C++的题目基本都答上了,Windows一直都是我的弱项,在这里记 ...
- TCP : two different sockets sharing a port?
A server socket listens on a single port. All established client connections on that server are asso ...