struts框架基础指导?

您现在的位置: 电脑爱好者 >> 电脑问答 >> 编程 >> 其他编程语言 >> 正文 收藏到QQ书签
大家知道,STRUTS是Apache 基金会Jakarta 项目组的一个开源项目,它采用MVC设计模式,是一个基于Sun J2EE平台的WEB表现层框架。这里有几个概念值得大家关注:开源,MVC,J2EE,WEB表现层,框架。我来逐一解释。

开源:不用多说,源代码可以让你一行一行仔细分析,深入了解其内部实现机制。

MVC:它强制性的使应用程序的输入、处理和输出分开。使用MVC应用程序被分成三个核心部件:模型、视图、控制器。它们各自处理自己的任务。MVC享有“全球第一设计模式”的美誉,是当前很流行的一种设计理念和思想,你要学好STRUTS,必要要让这种思想深入骨髓。(我在另一篇文章中对MVC进行过阐述,关于MVC的流程及例子请参阅拙作:http://blog.csdn.net/lenotang/archive/2008/06/18/2562348.aspx)

J2EE:J2EE是使用Java技术开发企业级应用的一种事实上的工业标准。J2EE将组成一个完整企业级应用的不同部分纳入不同的容器(Container),每个容器中都包含若干组件(这些组件是需要部署在相应容器中的),同时各种组件都能使用各种J2EE Service/API。其中最常用的容器就是WEB容器(就是我们常说的WEB服务器),里面最核心的两个组件就是JSP和SERVLET。而STRUTS就是基于这两种技术,依赖于WEB容器。

WEB表现层:我们常说的J2EE四层体系架构:WEB表现层,业务逻辑层,持久层,数据库层。这是一种逻辑划分。WEB表现层的特点就是依靠WEB服务器,直接跟客户端(一般是WEB浏览器)打交道。STRUTS处于WEB表现层,主要就是接受并处理用户请求,并将处理结果响应给用户。

框架:通俗地讲,框架就是一个“半成品”,它做了一些通用的东西让你去配置和扩展。框架的强大之处不是说它能让你做什么,而是它不能让你做什么!它使混乱的东西变得结构化。我们来打个比方。框架就像是一间有很多屋梁的房子,当你需要扩建房子的时候,譬如增加新的房间、窗户和过道或者在卧室增加一个壁炉,由于屋梁的限制,你并没有什么其他的选择。虽然较少的屋梁会让你有更多的选择,但是当台风来袭或者发生地震的时候,你让家人住在这样一间只有屋顶的房子里,恐怕不会觉得安全吧。总之,框架是在结构和创造力之间的一个精确的天平。

好了。这里假设大家已经理解了上述概念,并会用JSP/SERVLET做一些普通的WEB应用程序。现在就让我们来看看如何学习STRUTS框架吧。这里我以STRUTS 1.2版本为例。(STRUTS 2.0的实现跟以前的版本有很大不同,我以后会讲到。)让我们出发吧!

首先,你要照书本或者网上的例子跑一个最简单的STRUTS应用,就是在客户端显示一个HELLOWORLD的那种,这叫先睹为快。在这里你开始接触到做STRUTS应用需要的东西:STRUTS的JAR包,核心控制器ActionServlet在web.xml上的配置,针对具体用户请求URL的Action的编写以及STRUTS应用的核心配置文件struts-config.xml。做完后停下来思考一下。

然后,你开始跑一个稍微大点的用户登陆的应用,成功就跳转到我们的主页面,失败就继续回到登陆页面。我们引入ActionForm组件和对后台数据库的操作。这个时候MVC发挥作用了。ActionServlet和自己编写的Action分别充当前,后端控制器组件,DAO/DTO充当了模型组件,JSP充当视图组件。struts-config.xml也变的饱满起来,上面开始多了些配置datasources,form-beans,action-mappings。做完后到网上找一些好的参考资料或者利用自己经典的STRUTS的案头书(最好是有图解),开始认真琢磨STRUTS的运行原理和执行流程,特别要好生体会ActionForm组件的作用和struts-config.xml这个核心配置文件每一处用到的配置。这个时候,你应该开始有些领悟:我们自己写的Action还有ActionForm类一定要继承框架已有的Action和ActionForm,写完了之后还必须得将它们配9 7 3 1 2 4 8 :
· struts框架基础指导?
· 如何正确理解PHP程序错误信息的表示含义
· 老牌经典编程语言PHP的优缺点
· JForum 的 SSO集成的问题解决方法…
· 新手学堂 PHP服务器变量设置的方法介绍…
· 用Rational设计和实现简单的电话簿程序
· 单片机汇编语言
· 单片机汇编语言和计算机c语言有联系吗?我懂…
· 请单片机汇编语言了解的人帮下忙,说明一下…
· 汇编语言是指哪些语言?还有其他得语言种类吗…
· IBM汇编语言 问题23…
· IBM汇编语言 问题24…
· IBM 汇编语言 习题…
· IBM PC汇编语言不学对学其他计算机课程有影…
· 请问软考中的网络工程师考试是否需要有C语言…
· 谁有Win32汇编语言程序设计教程 例题程序代…
· 谁有汇编语言的入门教程啊。~
· 有关于学习汇编语言的心得和教程的,借我看一…
· 汇编语言和c语言谁的视频教程好?在那下?
· 哪个大学的汇编语言视频教程好?我想学单片机
· 哪个大学的汇编语言视频教程好!?我想学单片…
· 谁可以帮我找到汇编语言教程(电子书)下载…
· 汇编里面的EQU是什么意思?
· 关于汇编寻址问题
· 汇编语言中MOV和OFFSET指令的两个问题?请高…
· 【汇编】寻址方式
· 汇编语言的寻址方式怎么判断?
· 汇编中mov bx,2属于什么寻址???…
· vhdl语言和汇编语言
· 问VHDL语言和汇编语言有什么区别呢?
· 请问~~什么是汇编语言?
· 汇编语言是指哪些语言?还有其他得语言种类吗…
· 是不是学好单片机就要学好汇编语言?
· 苏州哪里有单片机汇编语言培训?
· 汇编语言在单片机中是否通用
· 关于编程语言的选择
· 想学编程,,,, 有做开发的吗 进来问个事…
· C++语言程序设计实验指导与习题解析
· 1 反汇编程序中怎样知道是否连接邮箱…
· 《Python语言网络编程基础 》下载…
· 巫师编程语言“咒语”
· 学习 Perl, 第四版.chm…
· 回复:c++、Java等计算机编程语言的学习经验…
· 多种编程语言学习
· Python语言编程,第三版.chm
· 关于网络编程自学
· 谁是流行编程语言
· 编程语言论坛网址汇总
· php大学生实训
· asp .net php制作语言,个人专业做网站,价…
  电脑常识        显示设备        优秀站点
· LCD显示器刷新率60有水波纹 70就没有了…
· 笔记本电脑屏幕变红现象,为什么?
· 请问哪家会做无线LED电子显示屏?
· 关于纯平显示器的问题。
· 买全新液晶显示器好还是二手液晶显示器好?
· 电脑显示屏,严重缩屏,求教!!
· 大家说显示器花屏和路由器有关吗?
· 如何在桌面上创建IE浏览器
· 为什么我的电脑可以休眠但是待机后就不能恢复了~~按电源键也不行…
· 打开全是图片的文件夹,点幻灯片播放。请问这些幻灯片怎样设置速…
· 浏览器为什么常常会有卡机的现象
· 谁有用过速达5000工业版得说明!,在网上查了好久没找到实用得资…
· CAD2007的剖切是哪个图标
· 为什么电脑桌面刷新会跳出提示?
· 数码相机XD卡,相机显示为卡错误,电脑上打不开
· 为什么我的百度贴吧网址被封了
· 为什么电脑一开机会出现c/windows/system32/sdzfw7pi.dll
· 为什么电脑上加载c/windows/system32/sdzfw7pi.dll出错,拒绝访问
· 这是第一次测速1243.9 Kbps 152.4 K 字节/秒 这是第2次600.4Kbps…
· 电脑画面不清晰
  硬件      互联网     工具软件     其他应用软件
· 开机,机器不响,显示器也不亮。
· 打印机总是打白纸出来啊,墨水很多,喷头也没堵,驱动也没问题,打印…
· 关于显卡兼容问题
· 罗技和微软键盘好在哪
· 请问各位高手一下
· 硬盘安装两个硬盘后,看不到
· 1G内存卡里面什么文件都没有现在可用内存却只有500M了请问怎么解…
· 求声卡驱动
· 换了cpu 电脑会不时的死机 愁死我了…
· 监控拾音器怎么连接,摄像机用起来很糊
· 3000-4000元的电脑配置
· 89c51里如何定义可以把P2和P0口合在一起作为一个十六位数,其中P0…
· 知道芯片型号,应该买那个品牌?
· 想买一块移动硬盘
· 请问大家微星845E主板支持DDR2的1G内存么.?
· 0x458aa852指令引用的0x458aa850内存 该内存不能为 written…
· 我网吧里的收费主机可以和局域网连接,为什么不能上网呢(没有掉线…
· 为什么我家电脑光装个猫不能上网,非要再接个路由器?而且老爱掉…
· 电脑装不上猫
· 什么我的电脑装不上winxp?
  病毒木马     数据库     多媒体     IT公司
· 在JBoss下配置mySQL数据源
· Windows XP系统下安装apache+php+mysql…
· 声卡没声音...多媒体音频控制器有个感叹号
· 5700能在多媒体里创建新文件夹吗?
· 做一个多媒体大厅的工程
· 彩色画报、彩色电视属于多媒体吗?
· 存容量和多媒体扩展卡有么区别
· 1.计算机图像处理:
· 问用什么工具制作多媒体课件最简单?
· 家里电器一开,多媒体音响就会“响
· 家里电器一开,多媒体音响就会“咔响
· 哪个笔记本适合做多媒体呀
· 谁有SONY笔记本电脑的多媒体视频采集卡驱动下载
· 笔记本多媒体卡槽坏了
· 笔记本多媒体卡
· N95多媒体打开怎么显示无图象?急
· 日语翻译 以及关于多媒体与电影 的资料…
· 诺基亚n73储存卡上的铃声图片怎么导入多媒体
· 怎样在网页中加入多媒体播放
· 素个菜鸟不知道SQL数据库怎么建
  操作系统        资源共享        笔记本电脑
· 我想知道2M电信宽带 能带动3台机子玩劲舞或者别的游戏吗?…
· 网通2M宽带3台电脑共用网速慢吗?晚上7点至10点,,,,,会不会很卡??…
· 我安装了LAN,家里3台电脑能同时上网么?
· 在不需要交换器或者集线器的情况下,如何组建一个3台机子的局域网…
· 我们寝室3台电脑,一条线,一个猫,一个交换器,怎样设置才能让3台电…
· 3台计算机,每个机子都有网卡,使用一个交换器上网,请问如何建立…
· 请问如何建立局域网5
· 两台不能上网的电脑如何建立局域网
· 如何建立局域网资源共享
· 想把资源共享到因特网,校内这台计算机做临时服务器,该如何设置…
· 如何资源共享?
· 无论距离远近,两电脑间都可以实现资源共享吗?
· 并发进程在访问共享资源时,不可能出现与时间有关的错误”对吗?
· 网上共享的资源有硬件,软件,文件对吗?
· 资源共享可分为软件、硬件和数据资源对吗?
· 笔记本电脑长时间不用,电池的电量是充满呢,还是放空啊?
· 笔记本电脑在多少度下不易长时间运行?
· 笔记本一边充电一边用就会死机是怎么回事?
· 笔记本电脑安装了摄像头怎么老死机啊
· 笔记本电脑经常死机是怎么回事
  编程 汇编语言 C VB VC C#.NET 其他语言 JAVA相关
· vb.net中使用GetPrivateProfileString访问INI文件
· struts框架基础指导?
· 如何正确理解PHP程序错误信息的表示含义
· 老牌经典编程语言PHP的优缺点
· JForum 的 SSO集成的问题解决方法…
· 新手学堂 PHP服务器变量设置的方法介绍…
· 用Rational设计和实现简单的电话簿程序
· C#中正则表达式进行忽略大小写的字符串替换
· F#成为Visual Studio的上等公民…
· java运行库和JDK、java虚拟机有什么区别!
· 我装jdk-java虚拟机,为什么装到一半就自动退出呢
· jdk java虚拟机…
· java 的布局方式有什么特点…
· java 的编译问题…
· java线程简单编程
· java 小程序出错 各位大哥,帮 我。…
· java 小程序请教·…
· Java 小程序返回值问题…
· 帮忙编下JAVA 小程序 谢谢了…
· 可以用javac编译,但在用java运行时却显示出错.
网站简介 | 网站地图 | 网站导航 | 友情链接 | 广告业务 | 联系我们
电脑爱好者版权所有Copyright © 2005-2008 www.cfan.net.cn All rights reserved. 冀ICP备06001745号
电脑爱好者 www.cfan.net.cn
电脑爱好者
友情链接: