【文档说明】Java-Web开发基础第8章课件.ppt,共(20)页,621.000 KB,由小橙橙上传
转载请保留链接:https://www.ichengzhen.cn/view-45139.html
以下为本文档部分文字说明:
2022/11/24第8章JSP实用技术的应用——网站留言板2022/11/242目录010202系统实现系统设计2022/11/243掌握利用FileUpload组件来实现文件的上传,利用CommonsEmail组件实现邮件发
送2022/11/2448.1系统设计任何系统设计都应以技术先进、系统实用、结构合理、产品主流、低成本、低维护量作为基本建设原则,规划系统的整体构架,因此对留言板的系统设计是必要的。它有助于版主收集网站的反馈信息,也是客户通过网络
收集信息的有力工具。本节主要介绍对留言板的需求分析、留言板的功能设计和数据库设计。2022/11/2458.1.1需求分析需求分析是软件开发的基础,对于任何系统而言,首先都要进行可行性研究。开发人员对用户的要求及现实环境进行调查、
了解,从社会、技术和功能因素等方面进行研究并论证该软件项目的可行性,根据可行性研究的结果,决定项目的取舍。•从社会因素方面,留言板作为网站重要的一个组成部分,是企事业和个人在网络上互相交流、各抒己见,相互学习
的平台。•从技术因素方面,本留言板系统的设计将主要通过JSP+JavaBean+Servlet技术实现,在开发工具的选择上使用了MyEclipse10,数据库采用了MySQL,通过Tomcat服务器来实现对留言板的管理。•从功能因素方面,留言板是
主人与访客都可以在此留言,为主人与访客之间提供一个交流的平台。8.1.2功能设计留言板具有的主要功能如下:1.用户信息管理模块•用户角色分为普通用户和管理员两种登录。•普通用户可以注册、登录、发表或回复、查看留言等功能。•管理员以管理员身份登录、可以对留言进行发表或回复
、查看、修改和删除等功能。2.留言信息管理模块•发表或回复留言模块:用户登录后可以进行发表或回复留言。•留言显示模块:对所有的留言按要求来显示。•留言删除模块:管理者可以对留言进行删除处理。•文件上传和邮件发送模块:普通用户和管理者都可以将文件上传或发送邮件。2022/11/2468.1.3数
据库设计通过系统分析,确定该系统的数据库是用MySQL来实现的,该系统数据库名为lyb。需要2个表:用户信息表(userinfo)和留言信息表(ly)。1.用户信息表(userinfo)该表主要用来存储用户基本信息,其字段的详细信息如表所示。2022/11/247字段
名称字段类型约束含义useridint(10)主键用户编号usernameVarchar(12)用户名称passwordvarchar(12)密码sexvarchar(2)性别addressvarchar(20)通讯地址qqvar
char(12)QQ号emailvarchar(20)电子邮箱8.1.3数据库设计2.留言信息表(ly)该表主要用来存储用户的留言与回复信息,其字段的详细信息如表所示。2022/11/248字段名称字段类型约束含义lyidint(10)主键留言编号usernamevarchar(20
)用户名称titlevarchar(50)留言主题contentvarchar(800)留言或回复内容timevarchar(20)留言日期8.1.3数据库设计3.创建数据库首先启动MySQL后,选择菜单“数据库
”→“创建数据库”,弹出创建数据库对话框,新建一个数据库,数据库名称为lyb。4.创建表和设置字段:在左侧的导航中选择名为“lyb”的数据库,单击鼠标右键,从弹出的快捷菜单中选择“创/建”→“表”,创建新表。具体方法请参见第4章中的“4.3.3MySQL的使用”内容。2022
/11/2498.2系统实现1、用户注册:留言板系统中设计用户注册功能,从某些层面来说,是一种网络营销的方式,申请成为注册用户,可以参与站内活动;可以通过发送邮件、上传下载文件等方式及时获取网站相关信息。而板主可以通过注册用户,了解用
户喜好、特点等各方面的信息,不断收集相关数据。同时注册功能相当于整个网站平台的入口,注册功能的好坏直接影响用户的使用心理,功能简单、操作便捷,会大大吸引用户对成为该网站会员的兴趣,促使用户乐于分享。用户注册程序(regist.jsp)的核心代码请参见书8.2中。
2022/11/24108.2.2用户登录在JavaWeb应用的用户登录功能中,主要对用户输入的用户名和密码信息进行验证来识别是否为合法用户。一般为了增加系统安全性,除了验证用户名和密码信息是否为空、用户是否存在、用户名和密码是否匹
配等条件以外,还需要额外输入服务器端随机产生的图形验证码。具体实现如下:1.用户登录页面Login.jsp核心程序代码请参见书8.2.2中。2.图形验证码的生成。可以通过Servlet完成此功能,也可以通过J
SP或JavaBean来实现,其思路一样,这里采用Servlet方法,checkcode.java的核心代码请参见书8.2.2中。3.验证。获取用户输入的验证码,从session中获取保存的验证码,对比验证,处理和验证登录请求的核心代码请参见书8.2.2中。2022/11/
2411用户登录页面的运行效果图2022/11/24128.2.3用户信息管理作为留言板中重要组成部分,系统将用户分为普通用户和管理员用户两种。普通用户信息管理功能模块是为普通用户提供了一个注册成为本系统用户的入口,并能够对自己的注册信息进行查看和修改。而系统管理员能
够对所有的用户信息进行查看、修改和删除等操作管理。1.用户信息修改。普通用户修改useredit.jsp的核心程序代码请参见书8.2.3中。2.普通用户信息查看请参见书8.2.3中。3.系统管理员管理用户信息的主页面adminindex.jsp的核心程序代码请参见书8.2.3
中。4.系统管理员删除用户信息adminuserdelete.jsp的核心程序代码请参见书8.2.3中。2022/11/24138.2.4留言管理1.在线编辑器简介:在线编辑器是一种通过浏览器等来对文字、图片等内容进行在线编辑修改的工具,用来对网页等内容进行在线编辑修改
,使用户在网站上获得"所见即所得"效果,因此经常用来做网站内容信息的编辑、发布和在线文档的共享等。常见的在线编辑器有FreeTextBox、FCKeditor、KindEditor,WebNoteEditor等。2.FCKeditor的使用FCKEd
itor可直接从http://fckeditor.com/download地址下载解压fckeditor_4.5.zip,得到fckeditor文件夹,将fckeditor整个文件夹复制到项目工程的根目录下。3.使用FCKEditor编辑留言内容的核心程序代码请参
见书8.2.4中。2022/11/2414使用FCKEditor编辑留言的效果图2022/11/24158.2.5文件上传在Web交互中,文件上传是一个Web应用程序的常见模块,本节将使用FileUpload文件上传下载组件来实现文件的上传,具体实现如下:1.首先是从网上下载fileupload
包并导入到工程lib目录。2.通过HTML或JSP页面的表单选择所需要上传的文件,选择所需要的上传文件Upload.jsp的核心程序代码核心程序代码请参见书8.2.5中。3.选定上传文件后,项目会利用FileUpload上传下载组件先
对选定的上传文件进行处理,然后FileUpload组件把处理后的上传文件传到服务器,系统将执行上传处理。文件上传处理程序UploadAction.java核心程序代码请参见书8.2.5中。4.配置struts_load.xml文件核心代码请参见书8.2.5中。2022/11/241
68.2.6留言板信息显示在显示留言板信息页面时,如果信息量很大,则经常需要分页显示信息,分页技术一般采用的是DAO设计模式,即DataAccessor模式和ActiveDomainObject模式。其中DataAccessor模式实现了数据访问和业
务逻辑的分离,而ActiveDomainObject模式实现了业务数据的对象化封装,一般我们将这两个模式组合使用。现以DAO设计模式来设计留言板信息分页显示,具体实现:1.创建数据库连接类DBUtil.java的核心
程序代码请参见书8.2.6中。2.创建VO类的核心程序代码请参见书8.2.6中。3.创建DAO接口的核心程序代码请参见书8.2.6中。4.利用DAO实现类的核心程序代码请参见书8.2.6中。2022/11/2417留言板信息分页显示效果图2022/11/24188.2
.7邮件发送在JavaWeb项目开发中可以采用JavaMailAPI或CommonsEmail技术来实现邮件发送和接收。由于直接使用JavaMailAPI实现邮件发送方法比较复杂,这里采用CommonsEmail来实现。CommonsEmail是Apac
he提供的一个开源的API,是对JavaMail的封装,使用它时要将mail.jar、activation.jar、commons-email-1.4.jar和addition.jar等类复制到开发项目工程的lib目录下。具体实现如下:1.邮件发送页面sendMail.jsp核心程序代码请参
见书8.2.7中。2.处理邮件发送的Servlet类SendMailServlet.java的核心程序代码请参见书8.2.7中。3.邮件发送处理后的结果的核心程序代码请参见书8.2.7中。2022/11/2419邮件发送页面效果如图2022/11/24
20