码迷,mamicode.com
首页 > 系统相关 > 详细

Myeclipse编写struts程序

时间:2015-06-11 22:51:29      阅读:186      评论:0      收藏:0      [点我收藏+]

标签:

计应134(实验班) 陈冬

说到struts则必须要谈到MVC模式(Model2)

什么是MVC模式。随着应用系统的逐渐增大,系统的业务逻辑复杂度以几何级数方式增加,在这样的情况下,如果还是把所有的处理逻辑都放在JSP页面中,那将会是一场噩梦,因为无论我们要进行什么样的改变,都必须打开那些杂乱的JSP脚本进行更改,而MVC正是基于此,将应用系统中的各个组件按照功能进行分类,不同的组件使用不同的技术,相同的组件被严格的限制在其所在层内,各个层之间一松耦合的的方式组织在一起,从而提供良好的封装。

其实,简单而言,MVC就是减少代码在页面中的复杂度,减少代码的冗余,增加代码的重用性,降低应用扩展性和维护的难度,在大型的软件系统中非常使用而jsp页面适用于快速开发小规模项目。

如果说到这里还是有疑问,那么我们就试着自己编写一个基本的struts的实例对比JSP页面即Model1模式与Model2的对比

首先创建一个新项目HelloWorld

如图

技术分享

接着添加struts包 这是必须而且非常重要的一步

鼠标对新建的项目点击右键 找到Myeclipse->add struts capabilities...

接下来 会弹出如图配置界面

技术分享

因为我使用的是Myeclipse8,5 我选择的是Struts2.1 在这里需要说明一下

技术分享

因为我们在使用的时候不仅有action的运行,所有这里最好选择/* 而*.action在运行JSP页面时会产生错误。

现在我们就添加好struts了:

技术分享技术分享

当然了,由于没有页面提交也没有后台执行,所以我们的struts里面是空的,不过接下来我们会让它有用武之地。

说了这么多,现在是该编写代码的时候了。

首先我们需要先创建一个JSP页面 如图:

这里要说明一下,我们的JSP页面都是创建在WebrRoo文件夹目录下

技术分享

在Struts中,如果要用<s:>系列标签,我们需要在页面顶部添加上<%@ taglib prefix="s" uri="/struts-tags" %> 否则<s:>系列标签是无法使用的(为了良好的书写习惯我们建议写上)

技术分享

接下来是是页面成功的success.jsp和失败的error.jsp页面,内容自拟。

接下来是最重要的操作,由于不再使用JSP页面的页面发送请求,我们需要建立Action业务控制器HelloWorld.java,代码如下:

package com;

public class HelloWorld {
 public String message;
 
 public String getMessage() {
  return message;
 }

 public void setMessage(String message) {
  this.message = message;
 }

 public String execute(){
  if(message.equals("")){
   return "error";
  }else{
  return "success";
  }
 }
}

然后是配置Struts如图所示:

技术分享

接着运行整个项目,这里呢会出现一个小问题,也是不存在的问题

因为项目默认是启动index.jsp页面,所以我们看到的是这样的

技术分享

要想每一次的授业都是我们需要的页面有两种方法

第一 更改WebRoot->WEB-INF下的web.xml,如图:

技术分享技术分享

将index.jsp更改为自己需要的首页即可

第二就是自己在浏览器里输入需要的页面。。。

技术分享

当然结果肯定是返回的success

其实我相信看到这里会有疑问,因为步骤实在太繁琐了,要是直接写在JSP页面里,多容易,而且更“高效”,是,也许直接写在JSP里面可以让我们敲代码的时间减少许多,但是对于一个大型的软件来说,如此多的代码都放在JSP页面里真的好吗?更重要的,高效是不仅仅是我们编写程序的时间,更是对软件进行后期维护的时间,减少代码冗余,提高重用性,减少错误才是高效。

 

Myeclipse编写struts程序

标签:

原文地址:http://www.cnblogs.com/chendongbky/p/4570157.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!