- 6
- 0
- 约2.13万字
- 约 19页
- 2016-10-16 发布于贵州
- 举报
第三章strus在MVC中的地位和作用
第三章 struts在MVC中的地位与使用实验指导书
0 大纲
0.1实验简介:
本技术模块共包括2个实验,共计2课时。
0.2实验目标:
Struts与数据库持久层技术(Dao模式)的结合,及其如何运用。
1 代码示例(时间:100分钟)
1.1 实验内容
开发一个Struts应用程序,完成用户登录,将用户的登录信息与数据表中记录进行验证,如果通过验证,就跳转到成功页面,并将数据库中的记录显示出来。
输出结果如下图所示:
1.2 思路讲解
用户选择登录,进入登录页面(login.jsp),用户输入账号和密码,点击登录按钮,页面提交到login.do控制器,数据自动填充到actionform中,在相应的loginaction中的execute方法进行验证操作,我们采用了数据持久层技术来实现的验证,Dao模式来完成,首先创建一个Dao接口,其中声明了一个数据验证方法isLogin(),来进行用户验证;另一个方法为getAllPerson(),取得用户表中的所有数据。其次创建一个Dao实现类,来实现接口中所声明的方法,将具体实现代码写在其方法体内。最后我们采用简单工厂模式来管理这些实现类,创建一个Dao工厂类来管理这些Dao的实现类。由于与数据库进行了联系,我们也要有一个专门负责与数据库连接的类,完成与数据库的连接操作。验证成功后,进入personmanager.jsp页面 ,显示登录用户信息,并采用表格形式显示所有用户的信息。根据以上分析,我们可以得到以下结论:
1、视图:根据需求,用户根据导航进入登录页面 ,之后需要用户输入用户的账号和密码,验证成功后,需要显示用户的信息。因此需要以下三个JSP页面:
Index.jsp:用于引导用户操作。
Login.jsp:用于接收用户的登录数据。
personManager.jsp:用于显示成功登录和用户信息。
loginForm用于接收login.jsp中输入的数据。
2、模型及DAO模式:用于封装数据表中的记录,称为VO值对象。字段与对象中的属性相对应。Dao模式是数据持久层实现技术,由于Dao接口、Dao实现类和Dao工厂类组成。
模型:一个名为Person的类。这个类与数据表中记录相对应,用于存储用户信息的SQL Server表的结果如下:
列名称 数据类型 长度 ID varchar 20 Name varchar 20 password varchar 20 Dao接口:声明完成功能的方法。声明了isLogin()方法和getAllPerson()方法。
Dao实现类:具体实现功能的类,实现接口所声明的方法。真正实现isLogin()方法和getAllPerson()方法。真正的用户信息验证和取得所有用户信息的代码实现全部由这二个方法完成。
Dao工厂类:管理Dao实现类的工厂类。来产生具体实现类的实例。
3、控制器:此程序包括一个名为loginAction的Action类,这个类实现execute()方法,此方法将包含以下功能代码:
从loginForm中接收数据,将数据封装到模型中。
通过Dao工厂类取得实现类的实例,并调用其方法完成用户验证和用户查询。
1.3代码实现
1、打开Myeclipse创建一个名为LoginDemo3的工程,并为其添加Struts1.2支持。
2、将适用于Sql Server 2000的Microsoft JDBC驱动程序添加到工程当中。
将驱动程序(jtds.jar)文件复制到工程所在文件夹中的webroot/WEB-INF/lib下,或打开工程属性,找到java build path选项,将jtds.jar添加到工程当中,此处建议采用第一种方式。二种方式如下图所示:
3、根据完成的功能不同,我们首先在src下面创建几个包,分别为:
cn.handson.dao 存放dao接口
cn.handson.daofactory 存放dao工厂类
cn.handson.daoimpl 存放dao实现类
cn.handson.jdbc 存放数据库连接类
cn.handson.vo 存放Vo值对象
另个添加struts支持的时候系统会自动建立一个struts包。如下图所示:
下面就先编写jdbc包中的数据库连接类。
DatabaseConnection.java
// 本类只用于数据库连接及关闭操作
package cn.handson.jdbc ;
import java.sql.* ;
public class DataBaseConnection
{
// 属性
// 定义数据库操作的常量、对象
// 数据库驱动程序
private final String DBDRIVER
您可能关注的文档
- 第七讲 华约约真题选讲.doc
- 第七课到第十课学案.doc
- 第三十三章 油及香膏;芳香料制品及化妆盥洗品.doc
- 第三单元 口交际 写作 综合学习.doc
- 第三单元 妊生理.doc
- 第三单元 近西方资本主义政体的建立.doc
- 第三单元 带粒子在复合场中的运动.doc
- 第三学习主题新主主义革命的兴起综合评价(川教版八上).doc
- 第三单元从人文神之源到科学理性时代.doc
- 第三届全国教学的互联网搜索优秀教案评选《项脊轩志》网络教案.doc
- 2025-2026学年天津市和平区高三(上)期末数学试卷(含解析).pdf
- 2025-2026学年云南省楚雄州高三(上)期末数学试卷(含答案).pdf
- 2025-2026学年甘肃省天水市张家川实验中学高三(上)期末数学试卷(含答案).docx
- 2025-2026学年福建省厦门市松柏中学高二(上)期末数学试卷(含答案).docx
- 2025-2026学年广西钦州市高一(上)期末物理试卷(含答案).docx
- 2025-2026学年河北省邯郸市临漳县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省石家庄二十三中七年级(上)期末历史试卷(含答案).docx
- 2025-2026学年海南省五指山市九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省唐山市玉田县九年级(上)期末化学试卷(含答案).docx
- 2025-2026学年河北省邢台市市区九年级(上)期末化学试卷(含答案).docx
最近下载
- 兰科植物促生菌筛选与人工栽培技术研究.pdf
- 氢氧化钠(片碱)MSDS安全技术说明书.docx
- 国家开放大学电大《成本会计》试题及答案.pdf
- 数学分析第四版下册课后习题答案.pdf
- 数学分析第四版下册课后习题答案.docx
- 2025年秋国家开放大学《商务英语3》形考任务参考答案.pdf
- Unit 2 Know your body Speed up 外研版(三起)(2024)英语三年级下册.pptx VIP
- 2026年春季开学教师收心会校长发言:骏驰启新程,笃行育新人;凝心再聚力,实干谱新篇.docx VIP
- Unit 2 Know your body Start up 外研版(三起)(2024)英语三年级下册.pptx VIP
- 空客A320飞行手册教程.doc VIP
原创力文档

文档评论(0)