博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用maven+eclipse搭建最简单的struts2的HelloWorld
阅读量:6967 次
发布时间:2019-06-27

本文共 3481 字,大约阅读时间需要 11 分钟。

一、web分层结构简介

1、web[细]粒度分层结构:

按细粒度分层可以分为以下6种:

1).表现层:html/css/js/jsp

2).控制层:servlet

3).实体层:javabean

4).业务逻辑层:javabean

5).持久层:jdbc/c3p0/dbutils

6).数据层:mysql/oracle

2、web[粗]粒度分层结构(重点):

按粗粒度可以分为3层:

1).由上面的1)、2)、3)组成mvc

什么是MVC?

m即为model(模型层),v为view(表现层),c为controller(控制层)。

mvc仅用于表现层,不能作用于其它层。

2).业务层

3).持久层

 

二、struts简介

Struts 2是Apache基金会的明星级产品,提供了对MVC的一个清晰的实现,这一实现包含了很多参与对所以请求进行处理的关键组件,如:拦截器、OGNL表达式语言、堆栈等。

历史回顾:

2001年,struts1 web开源框架出现 (祖先)

2004年,webwork web开源框架出现 (后代)

2007年,struts2 web框架出现 (后代),struts2不是struts1的升级版也不是webwork的升级版,多半来源于webwork,少半来源于struts1.

JSF(javaserverface) web框架(后代),成为java标准。

个人理解:

一句许说来就是一个大大的servlet,即对javaWeb常用的操作进行封装,是目前ssh框架重要的组成部分。

web框架个人看来就是对各种方法,编程思想进行封装,然后进行各种配置就可以很方便的进行开发了,看看框架的源码有助于理解大牛们的思想。

 

三、下载struts2

下载地址为:

  • Full Distribution:
    •  (65MB) [] []
  • Example Applications:
    •  (35MB) [] []
  • Essential Dependencies Only:
    •  (19MB) [] []
  • Documentation:
    •  (13MB) [] []
  • Source:
    •  (7MB) [] []

 这里几个选项,apps表示struts案例,lib表示所依赖的jar包,docs表示文档,src表示源码,all表示全部, 这里建议选择下载all .

注:all中的docs有问题,建议单独下载docs,使用时发现struts2的bug.

 

四、struts2的Hello World

 第一步,使用eclipse新建一个maven webapp工程,如下图所示:

 

点击next,选择webapp工程,然后Next:

 

点击next,再点击next,按下面类似填写即可。

 

点击Finish

 第二步:

 将所信赖的jar包,struts2-core-2.3.16.jar和commons-io-1.3.2.jar加入pom.xml中,如下所示:

4.0.0
com.amos
struts2
war
0.0.1-SNAPSHOT
struts2 Maven Webapp
http://maven.apache.org
junit
junit
3.8.1
test
org.apache.struts
struts2-core
2.3.16
org.apache.commons
commons-io
1.3.2
struts2

第三步:配置web.xml

 

这里是copy刚才下载的struts-2.3.16-all.zip包里的apps/struts2-blank.war中的web.xml。

Archetype Created Web Application
struts2
org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter
struts2
/*

第四步:HelloWorldAction.java

这里继承自ActionSupport类,只是在控制台输出"欢迎使用struts2!"字符串。

package com.amos.web.action;import com.opensymphony.xwork2.ActionSupport;//struts2的控制器 public class HelloWorldAction extends ActionSupport{    private static final long serialVersionUID = 6872366878758961847L;    //重写execute()方法    public String execute() throws Exception {        System.out.println("欢迎使用struts2!");        return null;    }}

 

第五步:apps/struts2-blank.war,WEB-INF/classes/中拷贝struts.xml,然后配置如下:

struts.xml拷贝到resource目录下如下图所示:

 

第六步:启动tomcat,然后输入http://localhost:8080/struts2/HelloWorldAction查看控制台输出

 

这个地方非常有可能报一个warnning说是“no result defined for action and result success...”,主要是因为返回值的问题,这里return null,就不会出现警告了。

 

 

五、其他

1、apps中有好几个示例可以研究:

struts2-blank.war struts2-portlet.war struts2-showcase.war

struts2-mailreader.war struts2-rest-showcase.war

这里我只导入了第一个,struts2-blank.war,导入方法为import--warfile-选择war包,然后下一步下一步即可。

 

 

 

2、点击查看github上:

 

 

 

转载地址:http://ffisl.baihongyu.com/

你可能感兴趣的文章
Java Servlet web.xml 配置详解
查看>>
javascript mvc 代码
查看>>
七牛镜像存储使用手册
查看>>
iOS学习笔记之 Objective-C (二)
查看>>
eclipse提交项目到github
查看>>
小米正式开源 Istio 管理面板 Naftis
查看>>
小白们不要慌,这里为你提供免费靠谱的python学习流程图
查看>>
利用种子文件对windows7的攻击-学习笔记
查看>>
微信小程序中异步处理终极方案async/await
查看>>
Java 面向对象 之 方法的覆盖
查看>>
开发者应该了解Kubernetes对于程序的影响点
查看>>
[Spark]Spark Streaming 指南三 DStreams
查看>>
LeetCode 14 Longest Common Prefix(最长公共前缀)(String)
查看>>
关注 | 《财富》发布“改变世界”企业 阿里巴巴因农村战略位列中国第一
查看>>
[Hadoop]Hadoop本地调试
查看>>
DNS服务-主从架构搭建
查看>>
找油网获1.5亿美元融资:Rainbow Capital领投C1轮,普洛斯领投C2轮
查看>>
2017.10.1 AJAX技术对RESTful的前端实现
查看>>
流程控制(逻辑词汇)
查看>>
初识 Spring(04)---(bean属性)
查看>>