注册本站  论坛  繁體中文

电脑技巧
手机 | MP3 | MP4 | 显卡 | 主板 | 显示器 | 光存储 | 笔记本 | 网络设备 | 移动存储 | 数码相机
键鼠 | CPU | 音箱 | GPS | 电视 | 服务器 | 投影机 | 机箱电源 | 品牌电脑 | 办公打印 |
| 网站首页 | Cisco | Windows | Linux | Java | Dotnet | Oracle | 网页设计 | 平面设计 | 安全 | 软件应用 | 电脑维修 | 办公维修 |
您现在的位置: 电脑技巧 >> Java >> 开源技术 >> Struts >> Java正文

struts简单案例-适合初学者(一)

文章来源:blogjava.net 作者:佚名 更新时间:2008-8-23 14:40:51 【 】 【加入收藏

    前言:虽然现在ssh开发满天飞,但是对于初学者来说,未必是好事,从基础学起,一步一个脚印,也许对他们来说更好。

    接下来的时间里,讲解一个struts的简单案例,从基础学起,有兴趣的朋友可以慢慢看来。

概要:Front Controller(模式)

    说明:讲解struts具体例子之前,先说明一下Front Controller模式(前端控制器模式)。struts就是它的具体实现,得以扩展,并且是Model2结构的完整实现。

    Model2结构通过一个控制组件来接受请求,这个控制组件本身可以为请求提供服务,也可以把这项任务分配给其他一些组件。生成响应信息的任务接着被分配给适当的视图组件。实现这种要求的方式很多,Front Controller就是其中一种。

20080726-1.gif


    实现前端控制器可以采取不同的策略,一种典型的策略是使用一个servlet问题:如果把所有的功能集中起来会出现一个大而臃肿的控制器组件,它将负责整个Web的相关处理。

    解决:办法之一是使用多个前端控制器,分别负责某一方面的处理任务。另一种解决方案是使用Command and Controller(命令与控制器)(稍候介绍)

下面是这种Front Controller模式示例程序框架实现:
public class FrontController extends HttpServlet {
protected void processRequest(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
RequestDispatcher dispatcher =
getServletContext().getRequestDispatcher(nextView);
dispatcher.forward(req, res);
}

protected void doGet(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
processRequest(req, res);
}

protected void doPost(HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException {
processRequest(req, res);
}
}

    在这里,它只是HttpServlet一个简单的扩充,默认实现了doGet()和doPost()方法,这两个方法负责把请求分配给另一个叫processRequest()的方法。这是为了保证不论发出什么请求,前端控制器都能为之提供服务。

    在processRequest()的方法中我们省去主要部分,但实际上前端控制器将先执行与请求关联的处理,然后再把它分配给一个视图组件来生成相关的响应信息。视图组件一般是JSP页面。控制器完成了自己的业务逻辑之后,它就可以通过RequestDispatcher把处理分配给一个JSP.到此你可能会提出一个问题。如果控制器要负责处理所有的请求,那么它怎么知道各请求都是什么以及如何处理呢?(Command and Controller,上面问题所提到的,现在开始讲解)

    Command and Controller策略

    在Command and Controller策略中,处理每个具体请求的逻辑被转移到了一个单独的组件中。

20080726-2.gif

    这些额外组件各表示一个具体的命令(或操作,既action),并且组件中封装着执行相关操作的逻辑。

    前端控制器把对请求的处理分配给适当的命令组件。

  • 上一篇Java:

  • 下一篇Java:
  • 最 新 热 门
     Flash、HTML、Ajax 谁将赢得Web应用之战
     超越XML和JSON:YAML,Java开发人员的新选择
     优秀Java程序员必须了解的GC工作原理
     Java 6 RowSet 使用完全剖析
     pureQuery带注释的方法风格简介
     面向Java开发人员的Scala指南: 实现继承
     Java 6中的性能优化
     Java实现Windows的dir命令
     Java标准类库提供的容器总结
     在Tomcat上开发Web应用如何保证兼容性
    最 新 推 荐
     J2EE综合:Struts上传多个文件的例子
     开发框架:深入了解Struts Validator
     一种简单的struts级连菜单实现方法
     struts简单案例-适合初学者(二)
     struts简单案例-适合初学者(一)
     Struts入门初步知识
     使用Struts+Hibernate上传大对象(BLOB)
     struts2.1 验证框架 嵌套验证
     Struts 1.x中批量封装对象
     在JBuilder+Tomcat下开发sturts
    相 关 文 章

    String知识点总结说明
    Spring的IoC学习笔记之BeanFactoryPostProc…
    深入探讨Spring与Struts 的集成方案
    深入了解Java的String
    深入了解String
    Hibernate实现DAO的常用CRUD操作
    J2EE综合:Struts上传多个文件的例子
    开发框架:深入了解Struts Validator
    一种简单的struts级连菜单实现方法
    struts简单案例-适合初学者(二)

    | 设为首页 | 加入收藏 | 联系站长 | 友情链接 | 版权申明 | 网站公告

     

    Copyright 2006-2008 pcjx.com All Rights Reserved
    电脑技巧 版权所有 粤ICP备06059145号 地图
    本网站所有内容未经许可不得转载或做其他使用