SSH框架项目教程-中国水利水电出版社
Struts框架
搭建Struts框架
工作计划
工作实施
我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:
-
工作目标
知识目标
了解Struts框架概念、作用
掌握Ssruts框架的搭建
理解Struts的框架组件及运行流程
技能目标
初步使用Struts框架改造登录功能
素养目标
培养学生的动手能力和自学能力 -
工作任务
利用Struts实现用户登录:搭建Struts工程,在工程中完成一个用户登录功能,用户填写登录表单中的用户名和密码后提交该表单,然后进行后台登录处理,进行用户名和密码信息的验证,如果验证成功,则显示欢迎界面,如果不匹配,则显示登录失败 -
工作计划
任务分析之问题清单
1.Struts框架是什么?有什么好处?
2.如何用Struts2搭建一个web项目?
3.Struts框架在web项目中是怎么工作的?
任务解析
1.了解“框架”与Struts框架
框架的概念:中文是框架,英文名是frame,定义为由若干梁和柱连接而成的能承受垂直和水平荷载的平面结构或空间结构。所属学科为水利科技(一级学科);工程力学、工程结构、建筑材料(二级学科);工程结构(水利)(三级学科)。
土木工程中的框架(第四声):由梁和柱组成的能承受垂直和水平荷载的结构,梁和柱是刚性连接的。主要用于工业和民用建筑的承重骨架,桥梁构架或工程构筑物。一般是指建筑工程中,由梁或尾架和柱连接而成的结构。由于我国古代家具自宋以后曾吸收古代大木构制的作法,故传统家具采用框架、立柱结构形式的即称框架,并将此类结构形式的家具称之为“框架式家具”。
软件工程中的框架是可被应用开发者定制的应用骨架。
为什么要进行框架开发?
框架最大的好处就是重用。面向对象系统获得的最大复用方式就是框架,一个大的应用系统往往可能由多层互相协作的框架组成。
由于框架重用代码,因此从一已有构件库中建立应用变得非常容易,因为构件都采用框架统一定义的接口,从而使构件间的通信简单。
框架能重用设计。它提供可重用的抽象算法及高层设计,并能将大系统分解成更小的构件,而且能描述构件间的内部接口。这些标准接口使在已有的构件基础上通过组装建立各种各样的系统成为可能。只要符合借口啊定义,新的构件就能插入框架中,构件设计者就能重用构架的设计。
框架还能重用分析。所有的人员若按照框架的思路来分析事物,那么就能将它划分为同样的构件,采用相似的解决方法。从而使采用同一框架的分析人员之间能进行沟通。
软件领域的框架的主要特点:
领域内的软件结构一致性好;建立更加开发的系统;重用代码大大增加,软件生产效率和质量也得到了提高;软件设计人员要专注于对领域的了解,使需求分析更加充分;存储了经验,可以让那些经验丰富的人员去设计框架和领域构件,而不必限于底层编程;允许采用快速原型技术;有利于在一个项目内多人协同工作;大力度的重用使得平均开发费用降低,开发速度加快,开发人员减少,维护费用降低,而参数化框架使得适应性、灵活性增强。
什么是Struts框架:是MVC的框架,它将Model、View、Controller这些概念分别对应到了不同的web应用组件,因此,可以说是Struts是MVC设计模式的具体实现。
Struts的所有功能都是建立在已有的Java Web组件上,如Servlet、JSP或是JavaBean,它只是利用一种方式将这些元素组织了起来,使它们协同工作。
2.搭建一个Struts项目:以HelloWorld项目为例
例子需求描述:创建一个Struts工程HelloWorld,创建2个页面,第一个页面helloword.jsp有一个输入框和确认按钮,当用户在输入框输入一个名字单击“确定”按钮,提交到第二页面helloworld_result.jsp中显示用户输入的名字。
步骤1:使用myeclipse创建一个Web工程
步骤2:在Web项目中引入Struts的jar包。官方网站上瞎子啊Struts的jar包,网址:http://struts.apache.org/download.cgi#struts2181;将Struts 2.x lib小的五个核心jar包文件加到工程的web-inf/lib中。五个核心文件如下:
struts2-core-2.x.x.jar Struts框架的核心类库
ognl-2.6.x.jar 对象图导航语言,Struts框架通过其读写对象的属性
freemarket-2.3.x.jar Struts2的U标签的模板使用FreeMarker的编写
commons-fileupload-1.2.x.jar 文件上传组件,2.1.6版本后需要加入此文件
xwork-core-2.x.x.jar xwork的类库,Struts2在其上构建
注意五个核心文件在常用开发中一般就够用了,若有特殊需要,可加入其它的文件。特别的----本例中没有使用Spring框架,请勿吧Struts框架中的struts-spring-plugin-2.x.x.jar包拷贝到工程中,不然程序发布不成功,无法运行。若读者已经拷贝在工程中,请自行移除该jar包。本书中其它地方若没有使用Spring框架,也照此处理。
步骤3:在web.xml文件中增加Struts2过滤器。
<!--定义Struts2的FilterDispatcher的filter-->
<filter>
<filter-name>Struts2</filter-name>
<filter-class>org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>Struts2</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
备注该过滤器只需要最初配置一次,代码是固定的,无需修改
步骤4:在工程中加入struts.xml的配置文件。
在src目录下创建文件名为struts.xml的文件: