- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Struts框架的BS程序开发
基于Struts框架的程序开发
什么是MVC?
M(Model),模块,主要是指实现业务功能的后台程序;
V(View),显示,给用户看的部分,在Struts框架中简单的说就是JSP;
C(Contorller),控制,控制整个应用程序的程序流程,在Struts框架中之需要完成struts-config.xml文件的配置即可实现
一个完整的Struts程序的构成
M部分:
Struts的后台业务逻辑都是通过Action来完成的。因此,一个Struts程序必须包含一个Action。
B/S模式的应用程序与普通网站的区别是:B/S模式的应用程序更倾向于应用,说直接一点就是数据管理(增、删、改),表单是数据管理不可缺少的一部分,因此一个Struts程序中通常还需要包含一个ActionForm。
Struts的ActionForm自动填充机制使M和V能够较独立的存在,在编写M部分的程序时不必关心V是什么样,只需要关心ActionForm中有些什么内容即可。
V部分:
这部分主要是一个JSP文件(大多数Struts程序也都只需要一个JSP文件)。Struts框架中的JSP与普通JSP的最大区别就是Struts框架中的JSP中能够使用很多Struts标签,从而避免在JSP中出现大段的Java代码,而且原则上也不允许在使用Struts框架的 JSP中嵌入java代码。(WHY——java代码意味着程序逻辑处理,而程序逻辑处理是M模块的功能,在严格意义的V模块中是不允许出现于程序逻辑相关的内容的)
C部分:
Struts框架已经将这部分内容封装,除非有特殊需要,一般情况下只需要在struts-config.xml中进行正确的配置即可。
Struts程序的执行过程
让一个Action包含更多的业务模块功能——DispatchAction
在Struts中,一个Action中只能有一个实现业务逻辑的execute方法,只能完成业务的某一个模块,如只能增加一条数据或者只能修改一条数据。如果需要完成另一个模块,则需要添加一个新的Action,这样就会造成一个业务含有多个Action和ActionForm。我们都知道在Struts中,每个Action和ActionForm都需要在配置文件中添加相应的配置信息才能正常使用,如果Action和ActionForm过多,无疑会增加struts配置的工作量。而且struts的配置只能通过手工完成,过多的配置信息也使出现错误的可能性大大增加。
我们可以通过以下方法来解决这种问题:
在提交表单时附带一个参数说明当前要执行什么操作,然后再在Action中进行判断,作相应的处理。这样会造成另外一个问题,Action中有大段的逻辑判断,使程序的可读性降低。
其实在Struts中有一种特殊的Action——DispatchAction,在这种Action中可以定义多个实现业务模块的方法,方法名也可以自定义,只需要在提交表单时同时提交需要调用的方法名,并在配置文件中指出哪个参数记录着需要调用的方法名,Struts便会自动调用相应方法。
有了DispatchAction,我们可以在一个Action中通过不同方法完成一个业务的不同模块,对于一个完整的业务,只需要在配置文件中添加一个Action的配置即可。
下面举例说明如何使用DispatchAction:
完成业务的Action为ExampleAction(从DispatchAction继承),其中定义了add、update和delete三个方法,分别完成业务数据的增加、修改和删除三个模块功能。
在struts-config.xml中为此Action添加配置:
action path=/ExampleAction
name=xxx.xxx.form.ExampleForm
type=xxx.xxx.action.ExampleAction
attribute=theForm
parameter=step
scope=request
validate=true
forward name=success path=/jsp/success.jsp/
forward name=fail path=/jsp/fail.jsp/
/action
这段配置中标红的parameter就是用来告诉struts框架,哪个参数传递的是需要调用的方法名,这里配置为step
在JSP中通过js提交的代码如下:
document.forms(0).action = “/ ExampleAction.do?step=add”;
document.forms(0).submit()
其中的红色部分将参数step的值设置为a
您可能关注的文档
- 药理中英文缩写.doc
- 链栈顺序栈实验报告.doc
- 广州版小学英语第四册U2iwanttobeateacher.ppt
- OpenCASCADE基础介绍.doc
- 护理工作问题自查发言.doc
- 英语展示-Marketingplan.ppt
- 初三化学氧气经典试题.doc
- 咨询团用例模板.doc
- 面向对象程序设计A第六章数组与指针.ppt
- 教师纪律作风建设自查材料.doc
- 2025年卫生专业技术资格考试(疼痛学-专业实践能力·主治医师)历年参考题库含答案详解.docx
- 针灸节食技术在老年疾病康复中的应用.pptx
- 2025年职业技能鉴定-白酒酿造-白酒酿造(高级技师)历年参考题典型考点含答案解析.docx
- 2025年事业单位工勤技能-天津-天津水工闸门运行工一级(高级技师)历年参考题典型考点含答案解析.docx
- 2025年黔西南民族职业技术学院单招笔试数学试题库含答案解析.docx
- 资产管理员工竞选报告.pptx
- 2025年事业单位工勤技能-云南-云南家禽饲养员一级(高级技师)历年参考题典型考点含答案解析.docx
- 2025年芜湖职业技术学院单招笔试综合素质试题库含答案解析.docx
- 资源管理器简介.pptx
- 云计算助力矿山安全的可视化与可控化生产.docx
原创力文档


文档评论(0)