JBuilder2005 Struts深度体验之升级

2016-02-19 13:42 6 1 收藏

最近很多朋友喜欢上设计,但是大家却不知道如何去做,别担心有图老师给你解答,史上最全最棒的详细解说让你一看就懂。

【 tulaoshi.com - 编程语言 】

用Action控制器替换switch.jsp
  
  在《JBuilder 2005 Servlet高级开发》中我们介绍了用户登录模块的流程,其中switch.jsp充当一个业务处理和页面转发的中心处理器。 !-- frame contents -- !-- /frame contents -- 由于JSP的设计初衷是实现页面展现逻辑,而这里我们居然"倒行逆施",将JSP用作业务处理和页面转发,显然是不恰当的。我们原来的switch.jsp身兼数职:接收login.jsp页面的表单数据,查询数据库,转发页面,象一个事无巨细,有僭越之嫌的 "管家"总揽了所有的事情,程序没有分层,逻辑显得非常不清楚,象个大杂烩。
  
  其实Servlet本身倒是比较适合开发switch.jsp所完成的功能,但在《JBuilder 2005 Servlet高级开发》专题中,我们并没有用Servlet斧正之,是因为我们希望在本专题中从更高的角度更完美地替换switch.jsp。
  
  可以通过Struts框架对switch.jsp功能进行分解,switch.jsp通过jsp:useBean获取登录页面表单数据可以通过ActionForm机制实现;switch.jsp查询T_USER数据表,判定用户是否是合法用户可以在Action的execute()中处理;当未通过验证转向fail.jsp页面,假如发生异常转向error.jsp页面,当用户通过验证后转向welcome.jsp页面,可以在Action中通过ActionForward实现多出口切换。
  
  新增一个图书治理模块
  
  现实的图书治理模块,应该包括对图书进行增、删、改、查的功能,由于篇幅所限,我们仅提供图书新增的功能。数据库中必须提供一张表用于保存图书的信息,这张表名为T_BOOK,其结构如图 4所示:
  
  
  图 4 T_BOOK表结构
  我们完全用Struts框架实现图书新增的功能,JBuilder 提供了一个优秀的Struts可视化设计工具(Struts Config Editor),其中Action Designer能够非常形象地描述出一个业务功能操作流程,我们不妨就通过这个可视化设计器预览图书新增业务的程序结构,如图 5所示:
  
  
  图 5 新增图书Struts流程
  ·bookAdd.jsp:图书录入的界面,在这儿你将学习到Struts标签和资源文件的知识。
  
  ·bookActionForm:由BookActionForm类实现,保存bookAdd.jsp表单提交的数据。在这儿,你将学习到如何创建ActionForm,ActionForm如何对数据有效性进行自检的知识。
  
  ·/bookInsertAction:由BookInsertAction类实现,即业务控制器,负责将bookActionForm中的新增图书保存到数据库T_BOOK表中,并导向到insertSUCcess.htm页面。
  
  事前预备
  
  通过File-New Project...创建一个名为bookStore的新工程,并在工程下创建名为webModule的Web模块,将原《JBuilder 2005 Servlet高级开发》专题的代码覆盖该新工程对应的内容。
  
  用SQL Plus运行下面的SQL语句创建T_BOOK表:
  
  代码清单 5 创建T_BOOK表的SQL语句
  
  1. create table T_BOOK (
  2. BOOK_ID VARCHAR2(10) not null,
  3. ISBN VARCHAR2(20) not null,
  4. BOOK_NAME VARCHAR2(50) not null,
  5. AUTHOR VARCHAR2(50),
  6. CREATE_DATE CHAR(8),
  7. constraint PK_T_BOOK primary key (BOOK_ID)
  8. );
  从这个SQL中,我们可以看出BOOK_ID是表的主键,所以不答应重复,而ISBN和BOOK_NAME两字段不答应为空。它们决定了在图书添加时的数据检验规则。
  
  同样的,我们需要将必要的类添加到这个新工程的类库中。进入讨论组讨论。

来源:http://www.tulaoshi.com/n/20160219/1604992.html

延伸阅读
标签: Java JAVA基础
  错误处理页面error.jsp Web应用程序一般都有一个或多个统一的错误处理JSP页面,以便在功能性的JSP页面发生错误时,能以一种友好的形式向用户反馈。友好而统一的错误页面是Web展现层一个无可忽略的方面。 下面,我们创建错误处理error.jsp文件,其代码如下所示: 代码清单 11 error.jsp错误处理JSP页面 1. <%@pa...
Web应用服务器会产生各种事件,如Web容器启动事件、session过期事件、请求到达事件等等。我们已经在《JBuilder 2005实战jsp开发》中阐述了这些事件的接口,事件处理方法使程序对Web应用服务器的控制能力大为提高。 !-- frame contents -- !-- /frame contents -- 在这一节里,我们监听Web容器启动关闭的事件,在事件发生时记录We...
标签: Java JAVA基础
  由于在login.jsp的表单中通过action属性指定switch.jsp为响应的JSP文件,当用户在login.jsp中选定登录用户,输入密码提交表单后,客户端将向服务器发送一个HTTP请求,服务器即调用switch.jsp来响应这个请求。 表单中用户名和密码两组件的数据将通过HTTP请求传给服务器的switch.jsp,服务器将这些信息封装在request对象中传给sw...
标签: Java JAVA基础
在测试用例中通过setUp()、tearDown()创建测试固件,只能使这个测试固件在单个测试用例的不同测试方法中共用,如果有多个测试用例都需要使用相同的测试固件,就需要将测试固件抽取到一个独立的类中。JBuilder提供了3个预定义的测试固件类,它们分别是: ·JDBC测试固件(JDBC Fixture):用于获取数据库连接的测试固件,用...
标签: Java JAVA基础
  用户登录模块程序的结构图如下图所示: 图 1 实例页面流转图 用户在登录页面中录入密码、验证正确后转向欢迎主页面,如果输入的密码错误,导向登录失败页面。这个模块包含6个JSP文件、3个Java类及两张后台表。 6个JSP文件分别为用户登录、页面流转控制、错误处理、登录成功和失败、以及退出系统的处理页面,简单介绍如...

经验教程

168

收藏

41
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部