JSP程序设计个人博客系统的JSP网站设计.docx
- 文档编号:2026481
- 上传时间:2023-05-02
- 格式:DOCX
- 页数:25
- 大小:508.39KB
JSP程序设计个人博客系统的JSP网站设计.docx
《JSP程序设计个人博客系统的JSP网站设计.docx》由会员分享,可在线阅读,更多相关《JSP程序设计个人博客系统的JSP网站设计.docx(25页珍藏版)》请在冰点文库上搜索。
JSP程序设计个人博客系统的JSP网站设计
武汉理工大学华夏学院
课程设计报告书
课程名称:
JSP程序设计课程设计
题目:
个人博客系统的JSP网站设计
系名:
信息工程系
专业班级:
计算机1111班
姓名:
学号:
***********
********
2014年6月27日
武汉理工大学华夏学院信息工程系
课程设计任务书
课程名称:
JSP程序设计课程设计指导教师:
苏永红
班级名称:
计算机1111班开课系、教研室:
软件与信息安全
一、课程设计目的与任务
JSP程序设计课程设计是《JSP程序设计》课程的后续实践课程,旨在通过一周的实践训练,加深学生对JSP程序设计中的概念,原理和方法的理解,加强学生综合运用JSP网站设计技术进行实际问题处理的能力,进一步提高学生进行分析问题和解决问题的能力,包含系统分析、系统设计、系统实现和系统测试的能力。
学生将在指导老师的指导下,完成从需求分析,系统设计,编码到测试的全过程。
二、课程设计的内容与基本要求
1、课程设计题目
个人博客系统的JSP网站设计
2、课程设计内容
运用JSP技术设计一个个人博客系统,由前台用户操作和后台博主操作模块组成,其规划功能模块如下:
(1)前台用户操作
该模块主要包括查看文章、查看相册、查看好友、查看留言和博主登录等功能。
(2)后台博主操作
该模块主要包括文章管理、文章类别管理、相册管理、好友管理等功能。
具体要求为:
(1)要求使用HTML页面布局、JSP指令标识、JSP动作标识、JSP内置对象、JavaBean技术、JDBC技术、SQLServer2005或MySQL5.0数据库操作技术等。
(2)要求对用户登录信息进行判断,对不同的用户实现不同的访问控制权限,相关表的设计要求与实际应用模块关联,管理员对各个模块信息进行管理。
(3)每个人需要检查设计的网站,设计报告文档,并提交纸质版的课程报告和电子版的网站设计资料,包括:
源程序,网站运行效果截图,电子版的资料以班为单位刻成光盘后由学习委员统一提交。
3、设计报告撰写格式要求
1设计题目2开发环境3需求分析
4系统功能结构图
5数据库设计(包含数据表的设计、表间关系、E-R图)
6模块的算法流程图,图居中显示,图下方要有图编号和图名称
7公共类的编写(包括数据库连接及操作类、字符串处理类)
8、前台主页面设计
9、文章显示模块设计
10、博主登录模块设计
11、相册管理模块设计
12、调试过程和运行结果及结果分析(其中包括网站各个模块的运行结果和结果数据分析)
7自我评价与总结
8附录:
程序清单,注意加注释(包括关键字、方法、变量等),在每个模块前加注释;
三、课程设计步骤及时间进度和场地安排
本课程设计将安排在第19周,教育技术中心。
具体安排如下:
第一天下发任务书,学生查阅资料
第二天系统设计和原型开发
第三,四天系统功能实现,书写课程设计报告
第五天系统调试测试打包和验收
周次
星期一
星期二
星期三
星期四
星期五
第19周
第1-8节
第1-8节
第1-8节
第1-8节
第1-8节
地点
现教222
现教222
现教222
现教222
现教222
四、课程设计考核及评分标准
课程设计考核将综合考虑学生考勤和参与度,系统设计方案正确性,系统设计和开发效果以及课程设计报告书的质量。
具体评分标准如下:
设置六个评分点
(1)设计方案正确,具有可行性、创新性;25分
(2)系统开发效果较好;25分
(3)态度认真、刻苦钻研、遵守纪律;10分
(4)设计报告规范、课程设计报告质量高、参考文献充分20分
(5)课程设计答辩概念清晰,内容正确10分
(6)课程设计期间的课堂考勤、答疑与统筹考虑。
10分
按上述六项分别记分后求和,总分按五级记分法记载最后成绩。
优秀(100~90分),良好(80~89分),中等(70~79分),及格(60~69分),
不及格(0~59分)
1课程设计题目
个人博客系统的JSP网站设计
2系统设计目标分析
本系统主要实现博客用户与访问者之间的交流,展现博主的思想。
Blog博客网站致力于为广大博客提供优质博客页面服务的商业网站。
每个博客都希望借助自己的博客页面宣传自己,而博客数量越多,网站的点击率越高就越能够吸引广大的企业客户选择该商业网站作为媒介,将自己的产品展现给客户。
本系统是用JSP实现的一个完全基于浏览器的博客系统,任何注册个人博客的人都拥有以下功能:
1)登录博客系统的后台管理平台。
2)撰写日志。
3)日志管理。
4)相册管理。
5)好友管理。
6)评论管理。
7)留言管理。
博客访问者具有以下功能:
1)浏览博客系统中的日志、留言、评论。
2)发表评论及留言。
3)检索日志。
3开发工具
开发工具:
开发软件:
MyEclipse10开发
系统结构:
B/S结构
操作系统:
windowsxp
浏览器:
IE6.0浏览器支持
数据库:
MySQL2005数据库支持
应用服务器:
Tomcat6.0服务器支持
JDK开发包:
jdk1.5版本
4需求分析
4.1用户需求分析
本文研究的博客(BLOG)系统是互联网上的用户应用系统,它是一种发表个人思想,网络链接,日志内容,通常按照时间顺序排列,并且不断更新的信息发布方式。
本系统有两类用户操作:
前台用户操作和后台博主操作。
4.2功能需求分析
从系统功能角度出发,一个典型的博客(BLOG)系统主要包含以下功能模块。
4.2.1用户登入模块
此模块功能是已注册用户的登入。
4.2.2博客主页显示模块
功能是根据用户的设定将博客内容显示给用户,这些内容包括用户的文章及相关的评论,用户的个性化信息以及其他信息导航。
4.2.3文章管理模块
功能包括发表文章,浏览文章,修改文章,删除文章功能。
4.2.4文章类别管理模块
功能包括添加类别,浏览类别,修改类别,删除类别功能。
4.2.5相册管理模块
功能包括上传照片,浏览照片,删除照片功能。
4.2.6好友管理模块
功能包括添加好友,浏览好友,修改好友,删除好友功能。
4.2.7留言管理模块
功能包括浏览留言,,删除留言功能。
5系统概要设计
5.1博客登录管理
此模块功能是已注册用户的登入。
用户登入模块流程图如图5.1所示:
图5.1用户登入模块流程图
5.2博客文章显示管理
本模块用于帮助网络用户快速定位到自己关注的博客页面及对应的文章信息中。
在本模块中提供了最新文章推荐,还提供了按内容或标题等关键字快速查询所需文章信息。
5.3发表文章管理
该模块实现了博主发表新文章的功能。
只有是博主才能发表文章,对此进行了严格的身份验证。
5.4发表及显示评论管理
该模块实现了与文章相关的评论管理。
无论是否是本站用户都能对文章进行发表评论。
不过未注册用户显示信息为游客。
5.5留言显示管理
实现了查看用户留言和查询用户/文章的管理,用户可以检索或浏览博客中的文章同时给感兴趣的文章。
6系统功能结构图
6.1博客网站前台功能结构图
如图6.1所示:
图6.1博客网站前台功能结构图
6.2博客网站后台功能结构图
如图6.2所示:
图6.2博客网站后台功能结构图
7数据库设计
这一阶段是在系统功能截个图的基础上进行的,设计出满足用户需求的各种实体以及它们之间的关系,为以后的逻辑结构打下基础。
根据以上的分析结果,得到文章信息实体,文章类别信息实体,评论信息实体,相片信息实体,好友信息实体,留言信息实体和博主信息实体。
下面介绍几个主要的信息实体的E-R图。
7.1文章信息实体E-R图
如图7.1所示:
图7.1文章信息实体E-R图
7.2文章类别信息实体E-R图
如图7.2所示:
图7.2文章类别信息实体E-R图
7.3相片信息实体E-R图
如图7.3所示:
图7.3相片信息实体E-R图
7.4博主信息实体E-R图
如图7.4所示:
图7.4博主信息E-R图
7.5总体E-R图
如图7.5所示:
图7.5总体E-R图
7.6主要数据表的结构
表7.1tb-article
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int
NO
YES
文章ID
article_typeID
smallint
YES
NULL
文章所属
类别ID
article_title
vrchar
YES
NULL
文章标题
article_content
vrchar
YES
NULL
文章内容
article_sdTime
vrchar
YES
NULL
发表时间
article_create
vrchar
YES
NULL
文章来源
article_info
vrchar
YES
NULL
文章描述
article_count
int
YES
0
访问次数
表7.2tb-articleType
字段名
数据类型
是否为空
是否主键
默认值
描述
articletype_id
smallint
NO
YES
类别ID
articletype_name
varchar
YES
NULL
类别名称
articletype_info
varchar
YES
NULL
类别描述
表7.3tb_photo
字段名
数据类型
是否为空
是否主键
默认值
描述
id
int
NO
YES
照片ID
photo_addr
varchar
YES
NULL
照片地址
photo_sdTime
varchar
YES
NULL
上传时间
photo_info
varchar
YES
NULL
照片描述
表7.4tb_master
字段名
数据类型
是否为空
是否主键
默认值
描述
maser_name
varchar
NO
YES
姓名
master_password
varchar
YES
NULL
密码
master_sex
varchar
YES
NULL
性别
master_oicq
varchar
YES
NULL
QQ号码
8详细设计
8.1数据库连接
关键代码如下:
packagecom.yxq.toolsbean;
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
publicclassDB{
privatefinalStringurl="jdbc:
microsoft:
sqlserver:
//localhost:
1433;DatabaseName=db_Blog";
privatefinalStringuserName="sa";
privatefinalStringpassword="";
privateConnectioncon=null;
privateStatementstm=null;
/*通过构造方法加载数据库驱动*/
publicDB(){
try{
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
}catch(Exceptione){
e.printStackTrace();
System.out.println("加载数据库驱动失败!
");
}
}
/*创建数据库连接*/
publicvoidcreateCon(){
try{
con=DriverManager.getConnection(url,userName,password);
}catch(Exceptione){
e.printStackTrace();
System.out.println("获取数据库连接失败!
");
}
}
/*获取Statement对象*/
publicvoidgetStm(){
createCon();
try{
stm=con.createStatement();
}catch(SQLExceptione){
e.printStackTrace();
System.out.println("创建Statement对象失败!
");
}
}
publicbooleanexecuteUpdate(Stringsql){
System.out.println(sql);
booleanmark=false;
try{
getStm();
intiCount=stm.executeUpdate(sql);
if(iCount>0)
mark=true;
else
mark=false;
}catch(Exceptione){
e.printStackTrace();
mark=false;
}
returnmark;
}
加载数据库驱动
publicclassDB{
privatefinalStringurl="jdbc:
microsoft:
sqlserver:
//localhost:
1433;DatabaseName=db_Blog";
privatefinalStringuserName="sa";
privatefinalStringpassword="";
privateConnectioncon=null;
privateStatementstm=null;
/*通过构造方法加载数据库驱动*/
8.2前台主页面设计
8.2.1前台主业的实现
前台主页面FrontIndex.jsp的实现,关键代码如下:
—包含页头文件à
includepage=”view/FrontTop.jsp”/>
—包含侧栏文件à
includepage=”view/FromtLeft.jsp”/>
-包含也为文件à
8.3文章显示模块设计
8.3.1首页面文章的列表显示实现过程
1)创建封装文章信息的值JavaBean-ArticleBean。
该ArticleBean实现储存文章ID,文章所属类别ID,文章标题,文章内容,文章发表时间,文章来源,文章描述信息,文章评论信息,文章阅读评数。
2)创建操作数据库的ArticleDao类,在该类中实现了对数据库进行各种增,删,改,查的操作。
按类别和不按类别查询文章,统计当前文章的评论数。
3)创建接收并处理访问首页请求的Servlet-IndexServlet,实现显示文章,显示文章发表时间,显示文章评论及阅读次数。
4)在FrontIndex.jsp页面中的内容显示区编写列表显示文章的代码。
5)在web.xml配置IndexServlet,配置代码如下:
xmlversion=”1.0”encoding=”UTF-8”?
>
8.3.2文章详细显示的实现过程
流程图如8.1所示:
图8.1文章管理流程图
8.4博主登入模块设计
8.4.1博主登入实现过程
博主登入流程图如图8.2所示:
图8.2博主登入界面流程图
1)页面设计
2)值JavaBean的创建
创建MasterBean类封装登入表单中的数据。
3)创建接受并处理登入请求的Servlet
在登入页面logon.jsp中,提交表单将触发”LogonServlet?
action=logon”资源,通过在web.xml文件中的配置,logonServlet为某个Servlet的映射;传递的action参数则通知该Servlet进行的操作,取值为logon表示该登入作为查询数据表来验证输入的用户名和密码;与LogonServlet的映射的Servlet的为LogXervlet.java。
8.5相册管理模块设计
8.5.1上传照片的实现过程
1)创建用来封装招聘信息的值javaBean-photoBean。
photoBean实现了储存照片ID,储存照片上传的存放位置,储存照片的描述信息,储存照片上传时间。
2)创建实现相册管理功能的业务处理类。
该类实现了照片的上传,浏览,删除操作。
流程图如8.3所示:
图8.3相册管理流程图
9运行结果
9.1博客首页界面
如图9.1所示:
图9.1博客首页界面图
9.2博主登入界面图
如图9.2所示:
图9.2博主登入界面图
9.3文章显示界面图
如图9.3所示:
图9.3文章显示界面图
9.4发表文章界面图
如图9.4所示:
图9.4文章界面图
9.5相册管理界面图
如图9.5所示:
图9.5相册管理界面图
9.6上传照片显示图
如图9.6所示:
图9.6上传照片面图
10自我评价与总结
这次JSP课设,我做的项目是个人博客系统的JSP网站设计。
这次作课设使我更加扎实地掌握了JSP以及数据库的运用,同时让我巩固了JAVA的知识。
这次作业跟以往一样,没有老师来指导我们,完全靠我们自己做。
在做之前,我一点头绪都没有,但通过上网查找资料和向同学咨询,我终于有了做这个项目的思路,我带着信心开始了这次的设计,可在做的过程中我遇到了很多问题,但经过一次次地思考,一遍遍地检查,终于找出了原因所在,当然也少不了请教同学,做的过程中也暴露出了前期我在这方面的知识欠缺和经验不足。
实践出真知,通过亲自动手制作,使我掌握了课本里没有的知识。
做课程设计让我对新的知识有了更深层次地了解和认识。
此次课程设计,我感慨颇多,的确,自从自己完成整个编程,从理论到实践,在整整一个星期的日子里,可以学到很多很多的东西,同时不仅可以巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的知识。
通过这次课设使我们懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。
在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做一个项目,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对一些前面学过的知识理解得不够深刻,掌握得不够牢固,比如说数据库,页面的跳转……通过这次JSP课程设计之后,我把前面所学过的知识又加强认识了一遍。
这次课设诚然是一门专业课,给我很多专业知识以及专业技能上的提升,同时又是一门讲道课,一门辩思课,给了我许多道,给了我很多思,给了我莫大的空间。
同时,设计让我感触很深。
使我对抽象的理论有了具体的认识。
我认为,在这学期的大作业中,不仅培养了独立思考、动手操作的能力,在各种其它能力上也都有了提高。
更重要的是,在做的过程中,我们学会了很多学习的方法。
而这是日后最实用的,真的是受益匪浅。
要面对社会的挑战,只有不断的学习、实践,再学习、再实践。
这对于我们的将来也有很大的帮助。
以后,不管有多苦,我想我们都能变苦为乐,找寻有趣的事情,发现其中珍贵的事情。
就像中国提倡的艰苦奋斗一样,我们都可以在实验结束之后变的更加成熟,会面对需要面对的事情。
在对JSP的学习上是我学会了怎么将学到的理论知识用到实践中去,改变了过去的学习方法和学习态度,找到了一门自己很喜欢的学科。
在这次大作业中作业不是由我一个人来完成,深深的感受到了一个人力量的单薄,了解到了在完成一个完整的项目上团队的重要性,在实际的程序开发中,团队的力量往往比个人力量之和要大上很多,并且在今后的开发中,我们都将是以团队的形式展开工作的,所以我们应该在现在学习的时候养成一种良好的团队精神,以为将来的开发打下一顶的基础。
11参考文献
[1]王克宏、郝建文.Java技术教程[M].北京:
清华大学出版社,2002.9月
[2]印旻.Java与面向对象程序设计教程[M].北京:
清华大学出版社,1999.11
[3]宛延闿.Java程序设计实例剖析.北京:
国防工业出版社,2003.03
设计过程中质疑(或答辩)记载:
1.在做个人博客网站过程中运用到哪些工具?
答:
:
MyEclipse10和MySQL2005。
1.创建封装文章信息的值JavaBean-ArticleBean实现了什么功能?
答:
该ArticleBean实现储存文章ID,文章所属类别ID,文章标题,文章内容,文章发表时间,文章来源,文章描述信息,文章评论信息,文章阅读评数。
3.创建接受并处理登入请求的Servlet起到什么作用?
答:
在登入页面logon.jsp中,提交表单将触发”LogonServlet?
action=logon”资源,通过在web.xml文件中的配置,logonServlet为某个Servlet的映射;传递的action参数则通知该Servlet进行的操作,取值为logon表示该登入作为查询数据表来验证输入的用户名和密码;与LogonServlet的映射
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JSP 程序设计 个人 博客 系统 网站 设计
![提示](https://static.bingdoc.com/images/bang_tan.gif)