菜鸟创建一个简单的structs2项目

本文由java初学者的ios程序猿呈上。

开发工具:Eclipse

tomcat版本:8.0.36

下面演示创建一个起始页面,以及响应一个网络请求,返回结果。

步骤一:创建Project

New->project->Dynamic Web Project

创建一个动态的web项目,这里需要注意选择Dynamic Web Module version,这个和部署项目时所选的tomcat有关。我用的是tomcat8.0.36,所以我的Module Version 对应版本为2.3.

步骤二:导入structs2所需要的jar包

项目创建好之后呢,就开始导入所需要的jar包啦。好吧,我觉得这个比ios导入库可麻烦多了。

首先呢,在WebContent->WEB-INF下新建文件夹lib 用来存放jar包。jar包跟版本相关,版本不同,所需要的jar也有些许不同,我的jar包如下图。我的jar是从另一个项目里弄来的,再从网上搜了几个。


步骤三:创建页面。

创建一个页面,用做欢迎页面。即输入ip地址或域名之后我们看到的第一个页面。

我就做了一个简单的页面。显示一行字:This is my first page!

在WebContent目录下创建文件夹pages,用来存放页面文件(tsp或html)。在page下创建一个welcome.jsp的文件。文件内容如下:

步骤四:配置web.xml

页面创建好了,要让它显示出来。就需要在web.xml中进行配置啦。


<filter></filter> 用来配置过滤器。

<welcome-file-list></welcome-file-list>用来配置起始页文件。

起始页文件用<welcome-file></welcome-file>标记。这里需要注意文件路径。web.xml的目录为当前目录。

配置完成之后,选中项目,右键,选择run as->run on server,选择tomcat,即可运行起来了。然后你就可以看到

就说明配置成功啦!在浏览器中输入上面的地址:http://localhost:8080/ImageServer/

也是一样的效果。好了,你的第一个网页出来啦!如果出现404错误,首先检查你的web.xml中是否配置正确了,路径是否写对了,大小写是否区分了。如果确定web.xml中配置没问题,就可能是你的jar包没导全。

当然,光有网页不行,structs2是用来分发网络请求的。

步骤四:创建Action处理文件.

在src目录下创建包com.guogee.camera.action

在包下创建java文件:CameraAction.java.

里面就一个方法UploadImage,即uploadImage的动作由这里来处理。好吧,我也不处理了,就打印"get image",然后以json格式返回success。

public class CameraAction extends ActionSupport{

/**

*

*/

private static final long serialVersionUID = 1L;

private InputStream inputStream;

public InputStream getInputStream() {

return inputStream;

}

/**

* 上传图像

* @return

* @throws Exception

*/

public String uploadImage() throws Exception{

System.out.println("get image!");

JSONObject json = new JSONObject();

json.put("result", "success");

inputStream = new ByteArrayInputStream(json.toString().getBytes());

return "success";

}

}

动作已经有了,那就该配置,请求要如何发到这个里面来咯。

步骤五:创建struts.xml 配置文件。对网络请求进行动作分发。


上面有两个,是我的项目中还加了另一个包。这里用到的就是第一个。

<package> </package> 将同一namespace的请求放在一块,package下面可以有多个动作。每个动作对应有name名称,class 表示该动作由哪个类进行处理,method即表示由class中的哪个方法处理.namespace是接在ip或域名(即这里的http://localhost:8080/ImageServer/)后面的。nameSpace下可能会有多个动作,即/camera之后接对应的动作名即是一个http请求了。上面是uploadImage,即收到一个http请求http://localhost:8080/ImageServer/api/camera/uploadImage,则交给CameraAction的uploadImage方法处理。处理完了之后,总得返回吧。<result> </result> 即定义了返回格式,以及返回内容。上述表示返回json格式的流。inputStream就是我们在CameraAction中定义的:private InputStream inputStream;在uploadImage中被赋值了一个son对象的字符串。你也可以定义为返回其它的。比如跳到另一个tsp页面等等。

我们重新运行,然后在浏览器中输入http://localhost:8080/ImageServer/api/camera/uploadImage。

页面就会显示:

{"result":"success"}.

好了一个简单的structs2项目完成了。有起始页面,可以接收网络请求并处理网络请求并以json格式返回结果。至于怎么部署服务器呢,暂时还没研究完成。暂时只会打成war包直接往已经设置好的服务器上丢,比如我就把我这个丢到我自己的百度云服务器上去啦。傻瓜式的一键配置。至于自己如何搭建服务器配置,请听下回分解,下回等我弄明白了再说。O(∩_∩)O哈哈~ 睡觉,晚安!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,634评论 6 497
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,951评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,427评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,770评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,835评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,799评论 1 294
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,768评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,544评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,979评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,271评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,427评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,121评论 5 340
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,756评论 3 324
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,375评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,579评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,410评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,315评论 2 352

推荐阅读更多精彩内容