JavaWeb课程设计报告.docx
《JavaWeb课程设计报告.docx》由会员分享,可在线阅读,更多相关《JavaWeb课程设计报告.docx(21页珍藏版)》请在冰豆网上搜索。
![JavaWeb课程设计报告.docx](https://file1.bdocx.com/fileroot1/2022-10/9/a6f1d944-9b90-498a-b784-e261b0d71555/a6f1d944-9b90-498a-b784-e261b0d715551.gif)
JavaWeb课程设计报告
JavaWeb课程设计报告
武汉工商学院
信息工程学院
项目名称:
个人博客网站的实现,Java,学生姓名:
学号:
班级:
指导教师:
2014年12月23日
1绪论................................................1
1.1系统应用的意义..................................................................................................1
1.2主要设计任务.....................................................................................................1
1.3相关技术概述.....................................................................................................12系统需求分析.........................................3
2.1设计目标分析.....................................................................................................3
2.2功能需求分析.....................................................................................................3
2.3数据库概念设计分析...........................................................................................43系统设计与实现.......................................6
3.1总体架构设计.....................................................................................................6
3.2数据逻辑设计.....................................................................................................6
3.3功能模块设计.....................................................................................................84功能测试............................................9
4.1前台功能测试.....................................................................................................9
4.2后台功能测试...................................................................................................12
4.3管理员功能测试................................................................................................175总结...............................................18参考文献.............................................19
1绪论
1.1系统应用的意义
博客或网络日志(英语:
Blog,为WebLog的混成词),台湾译作网志、部落格,港澳译作网志,马新译作部落格、博客、网志,是一种由个人管理、不定期张贴新的文章、图片或影片的网页或联机日记,用来抒发情感或分享信息。
博客上的文章通常根据张贴时间(ChronologicalOrder),以倒序方式由新到旧排列。
多博客作者专注评论特定的课题或新闻,其他则作为个人日记。
一个典型的博客结合了文字、图像、其他博客或网站的超链接、及其它与主题相关的媒体。
由于沟通方式比电子邮件、讨论群组更简单和容易,Blog已成为家庭、公司、部门和团队之间越来越盛行的沟通工具。
博客秉承了个人网站的自由精神,但是综合了激发创造的新模式,使其更具开放和建设性。
它作为一种新表达的方式,它的传播不仅情绪,包括大量的智慧、意见和思想。
某种意义上说,它也是一种新的文化现象,博客的出现和繁荣,真正凸现网络的知识价值,标志着互联网发展开始步入更高的阶段。
1.2主要设计任务
个人博客系统的总任务是:
在计算机网络,数据库和先进的开发平台上,利用现有的软件,开发一个具有良好人机交互界面、具有开放体系结构的个人博客网站,为网络用户提供进行在线交流的平台。
具体的要求如下:
1).信息服务:
博文显示,评论显示,博文分类显示;
2).管理服务:
管理员可以管理用户,管理博文与评论;
3).博主可以添加和删除博文,对自己的博文设置精品置顶;
4).留言回复服务:
游客可以对某文章发表评论,博主可以对某评论进行回复、设置精品置顶、删除评论等;
1.3相关技术概述
1.3.1Servlet技术
servlet是在服务器上运行的小程序。
这个词是在Javaapplet的环境中创造的,Javaapplet是一种当作单独文件跟网页一起发送的小程序,它通常用于在客户端运行,结果得到为用户进行运算或者根据用户互作用定位图形等服务。
服务器上需要一些程序,常常是根据用户输入访问数据库的程序。
这些通常是使用公共网关接口(CGI(CommonGatewayInterface))应用程序完成的。
然而,在服务器上运行Java,这种程序可使用Java编程语言实现。
在通信量大的服务器上,Javaservlet的优点在于执行速度更快于CGI程序。
各个用户请求被激活成单个程序中的一个线程,而无需创建单独的进程,这意味着服务器端处理请求的系统开销将明显降低。
JavaServlet是JSP技术的基础,JSP本身就是预先被编译成Servlet,然后再运行的,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成,Servlet这个名称大概源于Applet,现在国内的翻译方式很多,本文为了避免误会,本文直接采用Servlet这个名
1
称而不做任何翻译,读者如果愿意,可以称之为“小服务程序”。
Servlet其实和传统的CGI程序和ISAPI、NSAPI等Web程序开发工具的作用是相同的,在使用JavaServlet以后,用户不必再使用效率低下的CGI方式,也不必使用只能在某个固定Web服务器平台运行的API方式来动态生成Web页面。
许多Web服务器都支持Servlet,即使不直接支持Servlet的Web服务器也可以通过附加的应用服务器和模块来支持Servlet。
得益于Java的跨平台的特性,Servlet也是平台无关的,实际上,只要符合JavaServlet规范,Servlet是完全平台无关且是Web服务器无关的。
由于JavaServlet内部是以线程方式提供服务,不必对于每个请求都启动一个进程,并且利用多线程机制可以同时为多个请求服务,因此JavaServlet效率非常高。
但JavaServlet也不是没有缺点,和传统的CGI、ISAPI、NSAPI方式相同,JavaServlet是利用输出HTML语句来实现动态网页的,如果用JavaServlet来开发整个网站,动态部分和静态页面的整合过程简直就是一场噩梦。
这就是为什么SUN还要推出JavaServerPages的原因。
1.3.2JavaBean原理和机制
JSP的一大特点就是与JavaBeans的结合,而JSP与JavaBeans结合的一个突出的优点是页面显示和业务逻辑的分离。
这可以使团队协作的更好,开发出更高质量的站点。
JavaBean是一种可以重用的Java组件,它类似于COM,在JSP程序中常用来封装事物逻辑、数据库操作等,可以很好的实现业务逻辑和前台程序的分离,使得系统具有更好的健壮性和灵活性。
事件处理是JavaBeans体系结构的核心之一。
通过事件处理机智,可以让一些组件作为事件源,发出可被描述环境或其他组件接受的事件。
这样,不同的组件就可在构造工具内组合在一起,组件之间通过事件的传递进行通信,构成一个应用。
从概念上讲,事件是一种在“源对象”和“监听对象”之间、某种状态发生变化的传递机智。
事件有许多不同的用途,如:
鼠标事件、窗口边界改变事件、键盘事件等。
在Java和JavaBeans中则是定义了一个一般的、可扩充的事件机制,它能够对事件类型和传递模型的定义和扩充提供一个公共框架,并适合于广泛的应用。
与Java语言和环境有较高的集成度,事件能描述环境捕获和被激发。
能使其他构造工具采取某种技术在设计时直接控制事件。
JSP和ASP.NET同样是网站开发中常用的开发工具。
但是,ASP是微软的产品,其应用只能是在Windows平台上,移植性差,而且以源代码的形式存放在服务器端,安全性差。
每次由服务器解释运行,运行效率不高。
Jsp页面文件执行时被编译成字节代码,由客户端流览的Java虚拟机解释执行,不再是源代码,因此执行效率和安全性高。
将数据库连接的重要信息存放在JavaBean文件后,可以编译成虚拟机才能解释的字节代码,确保了数据库的安全。
在ASP技术里,通过Web页面要实现一些特定的功能比较困难,比如基于网页的报表,打印实现起来就比较麻烦。
ASP提供的解决方案是自己开发组件,通过在服务器端注册组件,成为独立的可以重复利用的模块供读者调用。
因此要求读者需要掌握比较复杂的变成语言的开发技术。
在JSP开发技术里,可以通过开发JavaBean文件实现同样的功能,JavaBean不需要注册,只要放置在相应的目录下就可以运行。
可以实现ASP的COM组件同样的功能。
此外JSP推出主要就是考虑到平台的无关性。
JSP代码可以在APACHE、IIS等服务器上执行,支持大部分操作系统。
JSP继承JAVA技术的优点:
一次运行,处处运行。
2
1.3.3开发平台:
Eclipse+tomcat
Eclipse是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。
它主要由Eclipse项目、Eclipse工具项目和Eclipse技术项目三个项目组成,具体包括四个部分组成——EclipsePlatform、JDT、CDT和PDE.JDT支持Java开发、CDT支持C开发、PDE用来支持插件开发,EclipsePlatform则是一个开放的可扩展IDE,提供了一个通用的开发平台。
它提供建造块和构造并运行集成软件开发工具的基础。
EclipsePlatform允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。
1.3.4数据库:
MySQL
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司。
在2008