惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

IT之家
IT之家
Y
Y Combinator Blog
T
Tailwind CSS Blog
G
Google Developers Blog
博客园 - Franky
Google DeepMind News
Google DeepMind News
阮一峰的网络日志
阮一峰的网络日志
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - 聂微东
爱范儿
爱范儿
博客园 - 【当耐特】
腾讯CDC
T
The Blog of Author Tim Ferriss
MongoDB | Blog
MongoDB | Blog
H
Help Net Security
C
Check Point Blog
大猫的无限游戏
大猫的无限游戏
M
MIT News - Artificial intelligence
博客园_首页
Stack Overflow Blog
Stack Overflow Blog
The GitHub Blog
The GitHub Blog
Engineering at Meta
Engineering at Meta
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报

博客园 - .net

软件项目获取用户需求的沟通技巧(摘自IT168技术频道) 软件项目进度控制要处理好四个问题(摘自IT168技术频道) 软件外包项目实施过程中的关键因素(摘自IT168技术频道) Struts学习心得之Struts流程篇(3) -示例 续 转载 Struts学习心得之Struts流程篇(3) -示例 转载 Struts学习心得之Struts流程篇(1)转载 初学Java Applet程序设计基础 将一个数据库添加到服务器中 datagrid中使用dropdownlist编辑模版时遇到问题 开发中的临时内容 开发个人财务管理系统(一)建数据库 SQL查询语句使用方法参考二 SQL查询语句使用方法参考一 用RichTextBox控件来做一个文本编辑器 微软的一项Agent技术(动画小精灵) .NET中如何获得IP地址和主机名 response.bufferoutput cookie的使用 测试cookie关键字是否存在
Struts学习心得之Struts流程篇(2) 转载
.net · 2005-12-20 · via 博客园 - .net

    上一节我们搭建了Struts的运行和开发环境。这一节着重讲述MVC的基本概念和与使用JSP/JavaBean模式开发Web应用的比较。
(1)Tomcat的启动。
        从上一节的Tomcat的配置文件中,我们可以看到关于Struts的配置,当Tomcat启动时,会加载Struts的配置文件struts-config.xml,关于配置文件的内容请见
 (2)JSP/JavaBean开发Web应用
     在asp的时代,我们还没有讨论什么开发模式,也没有顾及MVC(虽然MVC的概念早已出现)。用asp开发不外乎以下两种情况,一、就是直接将代码集成到asp文件中,经验多的话,会将常用的函数放至一起,引用时只需include即可;二、对于复杂的应用,如文件上传等,我们会用其他语音如VB、Delphi等写一个控件(ADO即属于此类)。
     当java流行,JSP逐渐成熟,也正是模式、框架流行的时代,所以我们不管是看java的类库,还是看现在流行的框架,无一没有模式的存在。当你初接触JSP的时候,就可以看到书上说“尽量少的在jsp中插入Java代码”,这句话已是模式运用的端倪。
      下面我们先不管MVC,先从JSP/JavaBean来看Web的开发。这种模式很想上面提到的asp开发的第二种情况,我们将业务逻辑放到JavaBean中,只用JSP去表示页面。
       有过asp经验都知道,在接收表单数据的时候,我们不得不一个一个将数据接收过来,以至于有很长的一段如:CustomId = request("CustomId")的代码。而在JSP中,我们不用这么繁琐,一个我们可以用EL直接表示即可,另外我们可以利用javaBean的introspection机制。直接将表单的数据映射到javabean的private变量中,当然javabean中必须包含getter和setter函数(有很幸运,很多的开发工具可以自动生成,又减少了工作量)。下面是一个示例。

<jsp:useBean id="prof" scope="page" class="register.Profile" />
<jsp:setProperty name="prof" property="*" />

       我们只要表单的action页面中,直接插入以上代码(这些代码就不用解释了吧),就可以将表单中的数据映射到register.Profile这个javabean中,所以我们可以在javabean中实现业务逻辑,譬如数据的插入、修改、删除等。从而可以减小甚至消除JSP中的java代码量。
 (3)MVC模式
     上面提到的JSP/JavaBean与MVC模式很接近,但是还有很多差别。前者,我们可以看出,在javabean中有很多的逻辑代码,我们要控制页面的跳转,还是要在JSP中读取javabean中的某些标志,嵌入java代码来实现,这看起来显得有些笨拙。我们是否能在JSP和javabean中再加一层,专门来实现跳转即控制页面的输出呢?of course,这就是MVC的思想。
      Struts就是一个实现MVC模式的WEB开发框架,在Struts中用JSP作为Viewer,javabean继承自ActionForm来映射JSP表单数据,用继承自Action的类来实现Controller,而Model没有特殊定义,它可以是EJB,普通Bean或者Web服务,总之Model中集成了业务逻辑的实现,在Controller中去调用,完成后Controller控制显示页面(jsp文件)。
     这样一来,是不是业务流程非常的清晰?

     下面我们付诸实践,实现一个用户注册的简单实例!