Java课程设计报告之个人博客系统_第1页
Java课程设计报告之个人博客系统_第2页
Java课程设计报告之个人博客系统_第3页
Java课程设计报告之个人博客系统_第4页
Java课程设计报告之个人博客系统_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 中文文关键ABSTRAC4 第一章绪论5 1个人博客系统简介5 课题研究背景和意义6 个人博客系统的技术要点7 采用P技7 技术介绍7 本文的主要工7 第二章基于JSP+JDBC的个人博客系统的技术基础9 技术平台介9 技术介绍技术介绍10 2.3 DB Util 数据库管理工具的介绍 1 1 1 1 g概述16 我能用g做什么?16 g的依赖r包16 g开发环境的搭建17 结构17 结构17 2.5.1 B/S 系统B/S 结构17 结构的作用结构的作用17 2.5.3 B/S 架构软件的优势与劣势18 的个人博客系统的总体设计19 的个人博客系统的总体设计19 3.1 系统功能需求3.1

2、 游客权限游客权限19 3.1.2 博主权限20 3.2 系统流程21 3.2 用户登入21 添加博文22 修改用户密码23 博文管理流程23 数据库设计数据库设计24 3.3.1 数据库的选择24 数据库概念结构设计数据库概念结构设计25 3.3.3 数据库实体设计图25 开发环境26 的个人博客系统的设计与实现27 第四章的个人博客系统的设计与实现27 软件开发工具简介27 0软件开发工具27 27 28 4.1.4 MySQL5.1 MySQL的概述29 系统总体设计29 系统实现33 博客系统登入的界面33 管理员登入界面33 博主管理界面34 第五章总结和展望40 总结40 今后工作

3、41 参考文献42 致谢43 中文文摘 随着互联网技术的高速发展生活节奏的加快 为学习和交流的工具博客的内容丰富多彩有对其他网站的超链接和评论 的 。 户客册 。 本文对博客系统进行整体分析明确了系统的可行性和用户需求根据模块化原理 划设计了系统功能模块在数据库设计部分详细说明了系统数据库的结构和数据库的 前台与后台功能的程序实现进行了详细论述系统测试部分具体分析测试过程中出 一步改进提出了建议 关键词 博客,日志,评论,留 ABSTRACT With rapid the With rapid of Internet development of Internet and high speed

4、 technology and high speed life of life rhythm, Blog has being chosen by more and more people as the tool of study and communication. Blog has being chosen by more and more people as the tool of study and website, some about personal thinking, news, music, article and so on. Because website, some ab

5、out personal thinking, news, music, article and so on. Because of the character of independence, open, interaction and share of Blog, it is regarded of the character of independence, open, interaction and share of Blog, it is as an outlet of good exchange channel, the stage and the garden area of kn

6、owledge studying. This system is a practical Blog website which and link. Visitor can browse articles, post comments and leave messages. The board and link. Visitor can browse articles, post comments and leave messages. The visitor can register in the Blog website, after that they can manage the Blo

7、g, photo visitor can register in the Blog website, after that they can manage the Blog, new log, picture etc. demand demand Under the user. Under the theory, modular theory, and design planning and design of system the of system modules; functional modules; the In the design, database design, detail

8、ed a detailed of the database description of the database and database structure and database security integrity, security Programming measures; Programming used is used programming object-oriented programming system design, system ideas, design ideas, for the future background for the future and of

9、 the function and of the program in System testing, detail; in System testing, of the specific Analysis of the specific course of the key testing course of the key issues and proposed solutions to achieve system function. Finally, the system in an and proposed solutions to achieve system function. F

10、inally, the system in objective, comprehensive evaluation, as well as ,log ,comment ,message Keywords Blog,log ,comment ,message 第一章 绪论 互联网技术的发展使得博客及博客文化成为热点博客以其自主性开放性共享性的 本章主要介绍该系统的开发背景及意义、系统的开发软件 1个人博客系统简介 ,是Weblog,是Weblog ,其实是Web,其实是Web 的组合词。Web 和Log的组合词。Web Wide ,指World Wide Web ,当然是指互连网了Lo的原义则是

11、“航海日志”,后指任何类型的流水记录。合在 一起来理解,Web在网络上的一种流水记录形式或者简称“网络日志”。BloggerWeb 工具的人。虽然在大陆早些时候或者 工具的人。虽然在大陆早些时候或者 湾等地,对此概念的译名不尽相同(有的称为“网志”,有的称之为“网录”等等, 前已基本统一到“博客”一词上来。该词最早是在2002 ,是指习惯于日常记录并使Weblog 年月日由著名的网络评论 网志也罢 的范围。只是,通常我们的范围。只是,通常我们所说的“博客”,既可用作名词 Blogger weblogger 指具有博客行为的一类人;也可以作动词用(相当于英文中的 weblogger ,指博客采取

12、,指博客采取的具有博客行为反映、是第三方可以用视觉感受到的行为,即博客们 撰写的Blog 他他她天天在博客”及“博客博什么客?”在中 语法与逻辑上都是正确。只是不同场合的用法不同罢了 新的帖子(Post 的内容和 )所构成,新的帖子(Post 的内容和 的有很大的不同,Blog 的内容和目的有很大的不同,从对其他网站的超级链接和评论,有 关公司、个人、构想的新闻到日记、照片、诗歌、散文,的有很大的不同,Blog 着blog 个人所见、着blog 个人所见、所闻、所想,还有一些Blogs 则是一群人基于某个特 Blog 主题或共同利益领域的集体创作。撰写这Blog 。 。 Blog 的人就叫Bl

13、oggerBlog 博客存在的方式,一般分为三种类型:一是托管博客,无须自己注册域名、租用 和编制网页博客们只要去免费注册申请即可拥有自己的博客空间是最“多快好省 HYPERLINK 式如英文的 HYPERLINK HYPERLINK HYPERLINK 及多种语言的博客() 供这样的服务 三是附属博客三是附属博客 作为某一个网站的一部分(如一个栏目、一个频道或者一个地址 甚至可以兼得,一人拥有多种博客网站 课题研究背景和意义 、bbs 近几年来,博客及博客文化正成为互联网的热点,并被视为继mail、bbs 后出现的第四种网络交流方式 和icq 在网络上发表Blog在网络上发表Blog 的构想

14、始于1998 年但到了2000 年但到了2000 年木子美事件,才让中国民众 年木子美事件,才让中国民众 解到了博客,并运用博客2005 将其每天浏览网站的心 解到了博客,并运用博客2005 将其每天浏览网站的心 和意见记录下来,并予以公开,来给其他人参考和遵循。但随着Blogging 快速扩张,它 的目的有很大 差异。不过的目的有很大 差异。不过,由于沟通方式比电子件、讨论群组更简单和容易Blog 目的与最初已相去甚远目前网络上数以千计的Bloggers 、 部门和团队之间越来越盛行的沟通工具因为它也逐渐被应用在企业内部网(Intranet 博客正在改变社会交流方式目前全球参与博客的人数已经

15、达到千万之众而且每几 秒钟,都有一名新的博客用户加盟进来 了 独特的博客文化美国总统候选人乐于开设博客站点作为竞选的重要手段企业界也正在 把博客方式引入企业内部网和公司网站用于非正式的知识管理和网络营销等政府部门和 教育领域都在尝试利用博客构建内部知识管理和沟通交流的新体系,可以让职员发表评论 积累知识,链接有意思的网络资源,促进彼此的交流沟通 显然博客的发展对应了全球范围内知识社会来临的背景对于中国这样一个组织机 构信息化仍处于初级阶段的国家博客这种充分发挥个人主导性和积极性的非正式 工具和其深度沟通交流的功能对于我们国家的知识传播知识扩散和有效提升组织的 和创新能力具有更特殊的意义博客用户

16、的快速增长以及组织机构对它的广泛应用 于推动中国向学习型社会演进 本系统根据现实的情况以及博客互动性的特点进行设计开发旨在为用户提 其成为一个学习的园地 个人博客系统的技术要点 采用JSP技术 在传统的网页HTML 入在传统的网页HTML 入Java 程序片段(Scriptlet) Web 服务器在遇到访问JSP 了Web 服务器在遇到访问JSP 和JSP 和JSP 中的程序片段,然后将执行结果以HTML中的程序片段,然后将执行结果以HTML 定向网页以及发送 email 务器端执行网络上传送给客户端的仅是得到的结果对客户浏览器的要求最低 ,无ActiveX 无Java Applet定向网页以

17、及发送 email ,无ActiveX 无Java Applet ,甚至无Frame P 的优点P 对于用户界面的更新,其实就是 Web Server 进行的,所以给人的感觉更新很快 所有的应用都是基于服务器的,所以它们可以时刻保持最新版本。 客户端的接口不是很繁琐,对于各种应用易于部署、维护 对于用户界面的更新,其实就是 Web Server 技术介绍 当Web 刚开始被用来传送服务时,服务提供者就已经意识到了动态内容的需要。Applet 是 为了实现这个目标的一种最早的尝试它主要关注使用客户端平台来交付动态用户体验与此同 时,开发人员也在研究如何使用服务器平台实现这个目标当Web 刚开始被

18、用来传送服务时,服务提供者就已经意识到了动态内容的需要。Applet ,CGI )脚本是,CGI )脚本是生成动态内容的主要技术。虽然使用得非常广泛,但CGI Servlet 本技术有很多的缺陷,这包括平台相关性和缺乏可扩展性。为了避免这些局限性Servlet 技术因应而生,它能够以一种可移植的方法来提供动态的、面向用户的内容。 一个servlet 就是Java 编程语言中的一个类,它被用来扩展服务器的性能,服务器上 可以对任何类型的请求 着可以通过“请求一个servlet 就是Java 可以对任何类型的请求 生响应,但通常只用生响应,但通常只用来扩展Web 技术为这些应用程序定义 的 ser

19、vlet 类javax.servlet 一个特的 servlet 类javax.servlet 都必须实现Servlet 了接口和类都必须实现Servlet 包为编写servlet 包为编写servlet 接口该接口定义了生命周期方法当实现 Servlet 个通用的服务时您可以使用或扩展由Java Servlet API 类HttpServlet API 类HttpServlet 和doPost 类提供了一些方法,诸如和doPost 本文的主要工作 的服务。 ,以用于处理特定于HTTP 的服务。 本文主要从以下介绍了个人博客系统和设计实现 1、第一章绪论:详细介绍了个人博客系统,分析博客系统的

20、需求和技术概要; 2、第二章基于JSP+JDBC的个人博客系统的技术基础:从技术层面介绍了博客系统可能 用到的技术和平台,从而使用户对个人博客有更深层次理解 3、第三章基于JSP+JDBC的个人博客系统的总体设计:首先从需求分析,构思网站的 思路,画出流程图和数据库表结构,为下一步的系统设计做准备 4、第四章基于JSP+JDBC 软件和平台在第三章的基础之上具体设计系统的表层的框架和底层数据库的表结构 层往上层逐步实现系统的需求功能。最后再美化页面 5 并分析一下今后对该系统的完善 6、列出本文参考的文 7、致 第二章 基于JSP+JDBC 技术基础 技术平台介绍 本系统主要运用J2EE 技术

21、开发J2EE 含许多组件主要可简化且规范应用系统的开发与部署进而提高可移植性本系统主要运用J2EE 技术开发J2EE 有共通的标准及规格,让各种依循J2EE 去企业后端使用的信息产品彼此之间无法兼容,导致企业内部或外部难以互通的窘境。 这种基于组件具有平台无关性的这种基于组件具有平台无关性的J2EE 结构使得J2EE 程序的编写十分简单因为 逻辑被封装成可复用的组件,并且J2EE 服务器以容器的形式为所有的组件类型提供 务.因为你不用自己开发这种服,所以你可以逻辑被封装成可复用的组件,并且J2EE 建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机 保留现存的I产 于企业必须适应新的商业

22、需求,利用已有的企业信息系统 盘否定的)方式建立在已有系统之上的服务器端平台机制是公司所需求的。J2EE Tuxedo 充分利用用户原有的投资如一些公司使用的Tuxedo CICS, IBM CICS, Encina, Encina, Inprise VisiBroker 以及Netscape Application Server 。这之所以VisiBroker 以及Netscape Application Server 。这之所以成为可能是因为J2EE 的业界支持和一些重要的企业计算领域供应商的参与每一个供应商都对现有的客户 平台的产品 乎能够在任何操作系统和硬件配置上运行,平台的产品 乎能

23、够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用 效的开发: J2EE 领域的升级途径由于基于J2EE 允允许公司把一些通用的、很繁琐的服务端任务交给中间件供应商 完成这样开发人员可以集中精力在如何创建商业逻辑上相应地缩短了开发时间高级 间件供应商提供以下这些复杂的中间件服务: 状态管理服务让开发人员写更少的代码 用关心如何管理状态这样能够更快地完成程序开发持续性服务让开发人员不用 访问逻辑进行编码就能编写应用程序能生成更轻巧与数据库无关的应用程序 服务让开发人员编制高性能 程序更易于开发与维护服务让开发人员编制高性能 极大提高整体部署的伸缩性 支持异构环境支持异构环境 J

24、2EE 能够开发部署在异构环境中的可移植程序。基于J2EE 的应用 不依赖任何特定操作系统、中间件、硬件。因此设计合理的基于J2EE 的程序只需 标准也允 就不依赖任何特定操作系统、中间件、硬件。因此设计合理的基于J2EE 标准也允 户订购与J2EE 兼容的第三方的现成的组件,把他们部署到异构环境中, 整个方案所需的费户订购与J2EE 企业必须要选择一种服务器端平台企业必须要选择一种服务器端平台这种平台应能提供极佳的可伸缩性去 足那些在他们系统上进行商业运作的大批新客户。基于J2EE 平台的应用程序可被部署到 种操作系统上。例如可被部署到高UNIX 与大型机系统,这种系统单机可支256 领域的

25、供应商种操作系统上。例如可被部署到高UNIX 领域的供应商提供了更为广泛的负载平 策略这种部署可达数千个处理器 可高度伸缩的系统,满足未来商业应用的需要 稳定的可用性:一个服务器端平台必须能全天候运转以满足公司客户、合作伙伴的需 要因为INTERNET稳定的可用性:一个服务器端平台必须能全天候运转以满足公司客户、合作伙伴的需 要因为INTERNET 部署在 WINDOWS 性。一部署在 WINDOWS 、IBM OS/390 Solaris 、IBM OS/390 环境中,客户也可选择健壮性能更好的操作系统如 Sun 的可用性或每年只分钟的可用性或每年只分钟 时间。这是实时性很强商业系统理想的

26、选择 技术介绍 2.2 JSP技术介绍 本系统主要用JSP本系统主要用JSP Pages) 是由Sun 技术有点类似ASP 多公司参与一起建立技术有点类似ASP 公司倡导公司倡导 页HTML 页HTML 入Java 程序段(Scriptlet) JSP 。 JSP 。 记(tag) 记(tag) 从而形 用P 应用是跨用P 应用是跨平台的即能在Linux 下运行也能在其他操作系统上运行 技术使用技术使用Java 的tags 编程语言编写类的tags 来封装产生动态网页来封装产生动态网页 和scriptlets 过和scriptlets 访问存在于服务端的资源的应用逻辑JSP 的应用程序 网页逻

27、辑与网页设计和显示分离支持可重用的基于组件的设计使基的应用程序 开发变得迅速和容易。 服务器在遇到服务器在遇到访问JSP 文件中的HTML 文件中的HTML 程序段可以操作数据库重新定 代码程序段可以操作数据库重新定 网页等网页等,以实现建立动态网页所需要的功能 JSP Java Servlet 一样,是在服务器端执行的,通常返回该客户端的就是一个HTML 文本,因此客户端只要有浏览器就能浏览。Java Servlet 规范的最后版本是1999 年月推出的,1月又推出了规范的最后版本是1999 年月推出的,1月又推出了1.1 规范。 规范,JSP2.0 的是规范,JSP2.0 JSP 代码和嵌

28、入其中的Java JSP 代码和嵌入其中的Java 的HTML 的技术基础,而且大型的技术基础,而且大型的Web 规范的征求意见稿也已出台 代码所组成服务器在页面被客户端请求 Servlet 页面返回给客户端的浏览器Servlet 和JSP 配合才能 应用和JSP 配合才能 成。JSP 具备Java 技术的简单易用,完全的面向对象,具有平台无关性且安全可靠, 要面向因特网的所有成。JSP 具备Java 推出后,众多大公司都支持JSP 推出后,众多大公司都支持JSP 技术的服务器,如IBM 、Oracle 、Bea 公司等 所以JSP 迅速所以JSP 立跨立跨平台的动态网站的首选方案。 2.2.

29、1 将内容的生成和显示进行分离 技术Web 页面开发人员可以使用HTML 技术Web 页面开发人员可以使用HTML 者L 标识或者小脚本来生成标识或者小脚本来生成页面上的动态内(内容是根据请求变化的例如请求账 户信息或者特定的一瓶酒的价格等。生成内容的逻辑被封装在标识和JavaBeans 标识来设计和格式化最终页面 组件 和JavaBeans 管理人员和页面设计者,能够编辑和使管理人员和页面设计者,能够编辑和使用JSP 页面,而不影响内容的生成。 服务器端,JS引擎解释 JS标识和脚本,生成所请求的内容(例如,通过访问 组件使用JDBC 组件使用JDBC 技术访问数据库或者包含文件并且将结果以

30、HTML (或者XML 的Web 页面的形式发送回浏览器这既有助于作者保护自己的代码又能保证任何基于的Web 浏览器的完全可用性。浏览器的完全可用性。 2.2.2 可重用组件 或者 Enterprise 多数 JSP面依赖于可重用的、跨平台的组件(JavaBeans或者 Enterprise JavaBeans 通 操作的组件或者使得这些组件为更多的使用者和客户团体所使用基于组件的方法加速了 总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。JavaBeans 采用标识采用标识 Web 页面开发人员不会都是熟悉脚本语言的编程人员JSP 页面开发人员不会都是熟悉脚本语

31、言的编程人员JSP 相关的XML 功能是在易用的相关的XML 标识中进行动态内容生成所需要的标准的JSP 够访问和实例JavaBeans ,以及执行用 组件,设置或者够访问和实例JavaBeans ,以及执行用 方法更难于编码和耗时的功能 2.2.4 适应平台 JSP JavaBeans 几所有平台JSP JavaBeans 和JavaBeans 平台移植到另外一个和JavaBeans 准的与平台无关的 数据库连接数据库连接 Java ,Java 中连接数据库的技术是Java ,Java 字节码都是 甚至不用重新编译,字节码都是 程序通过JDBC 驱动程序与数据库程序通过JDBC 公司还开发了

32、JDBC 公司还开发了JDBC bridge bridge 术Java 访问带有ODBC 驱动程序所以Java访问带有ODBC 驱动程序所以Java Sybase 程序能访问诸如Sybase MS Access 、MS SQLServerMS Access 等数据库 技术可以进一步扩展。第三方开发人员和其他 常技术可以进一步扩展。第三方开发人员和其他 常用功能创建自己的标识库这使得Web 页面开发人员能够使用熟悉的工具和如同标识 的执行特定功能的构件来进行工作 支持企业级的分布式应用中。作为采用Java 技术家族的一部分,以及Java 技术家族的一部分,以及Java 结构)的一个组成部分JSP

33、结构)的一个组成部分JSP 的应用。P 的JSP 内置脚本的JSP Servlets 页面都被编译成为Servlets 以P 页面页面具有Java 有Java有Java 平台的一部分 技术的所有好处,包括健壮的存储管理和安全性。作平台的一部分 编程语言“一次编写,各处运行”的特点 数据库管数据库管理工具的介绍 JDBC 码是Java JDBC 编码并不难, 码几乎会经常性的带来一些低级错误经常JDBC 码是Java 编码并不难, 痛苦 DbUtils 组件是一个精密而简单的组件,它并不做什么复杂的事DbUtils 仅只是使很多的JDBC 仍然是大多数Java 仅只是使很多的JDBC 仍然是大多

34、数Java 和J2ee 开发者赖以生存的工具因此任何能让使用和J2ee 都是好消息 DbUtils 依赖下面这些 DbUtils 依赖下面这些 Java Development Kit (JDK) 1.2 (or later) JDBC 2.0 (or later) DbUtils 文档并不是最好的但是足以使你的工作正常进行在下一节你会看到DbUtils 一些用法的例子 DbUtils 一些用法的例子 编码和例然后能够马上在你自己的项目中开始使用DbUtils 我将会集中dbutil 能够开 始精力于我将会集中dbutil mons.dbutils.QueryRunner )和一个mons.d

35、butils.QueryRunner )和一个接口 queryrunn dbutil 在我给在我给 common 子之dbutil common 前,让我前,让我们深入DbUtils 里面来仔细看看它给我们提供了 dbutil 我们提供。 dbutil 2.3.1 DbUtils DbUtils 驱动程序之类的dbutil 是一个为做一些诸如关闭连接DbUtils 驱动程序之类的dbutil 作提供有用方法的类,它里面所有的方法都是静态常规方法所有的。 这个类里的重要方 装载之类常规 :DbUtils close:DbUtils 类提供了三个重载的关闭方法。这些方法检查所提供 方法的参数是不是

36、NULL 方法的参数是不是NULL CloseQuietly : CloseQuietly 这一方法不仅能在 为为resultset 声明方法况下避免关闭,还能隐藏 一些避免不想捕捉这些异一些避免不想捕捉这些异 话这对你是非常有用的在重载CloseQuietly 些在程序中抛出的SQLEeception 有用捕捉这些方法时特别有用的 一个方法是 为在大多数情况下,连接、声明为在大多数情况下,连接、声明和结果集 (ResultSet )是你要用 resultset 大多数声明的三样东西,而且在最后的块你必 须关闭它们。使用这一使用最后东西方法,你最后的块就可以只需要调用这一方法 (ResultS

37、et )是你要用 resultset :这一方法用来提交连接 常。LoadDriver(String driveClassName): 常。LoadDriver(String driveClassName): 这一方法装载并注JDBC 如果成功就返回 TRUE装载方法注册用这种方法,你不需要去捕捉这个异常 用这一方法装载并注JDBC 用loadDrive 方法loaddriv 回boolean 的回boolean 值会告诉你驱动类是不是已经加载成功了。告诉已经成功 2.3.2 ResultSetHandler 正如它的名字所提示的,这一接口执行处理一jaca.sql.ResultSet ,re

38、sultset 接口处 理将数据转变并处理为任何一种形式,这样有益于其应用而形式这样数据且使用起来更容 易。这一组件提供了正如它的名字所提示的,这一接口执行处理一jaca.sql.ResultSet ,resultset 等arrayhandl beanhandl maphandl 等arrayhandl beanhandl maphandl 行程序。 handle ResultSetHandler 接口提供了一个单独的方法handle ResultSetHandler 行参数传入,然后才能处理这个结果集,再返回一个对象。参数处理传入因为返回类型是 行参数传入,然后才能处理这个结果集,再返回一

39、个对象。参数处理传入因为返回类型是 java.lang.Object 的执行需要一个结果集(ResultSet .rs) .rs) )作为resultset 的Javaobject 返回类型并没有什么限制如果你发现发现之外其它这七个执行程序中没 你想要的服务的Javaobject 2.3.3 QreryRunner 这个类使执行SQL 查询简单化了,它与ResultSetHandler 串联在一起有效地简单化联在有 效履行着一些平常的任务,它能这个类使执行SQL 查询简单化了,它与ResultSetHandler 构造提供一个则拿一个 提供了两个构造器:其中一个是一个空构造器,构造提供一个则拿

40、一个 javax.sql.DataSource 来作为参数。因此,在你不用为一个datasourc javax 供一个数据库连接来作为参数的情况下,提供给构数据库参数方法造器的数据 被javax.sql.DataSource 来作为参数。因此,在你不用为一个datasourc javax 被用来获得一个新的连接并将继续进行下datasourc 继续进行去 这一类中的重要方法包括以下这些 这一类中的重要方法包括以下这些 query(Connection conn, String sql, Object params, ResultSetHandler rsh) 这一方法执行一个选择查询,在这个查

41、询中,对象阵列的方法阵列执行值被用来作 和参数内在方法 为查询的置换参数。这一方法内在和参数内在方法 ResultSet 对把从 ResultSet 的ResultSet 对把从 ResultSet 成一个更 resultset 数据创建容易的或是应用程序特定的格式来使成一个更 resultset 这几乎与第这几乎与第 方法一样;唯一的不同在于它不将数据库数据库几乎一样连接提供给 或 datasourc 是从提供给构造器的数据源或 datasourc 数据构造使用 setDAtaSource conn, String 方法中重新获得的。query(Connection setDAtaSourc

42、e conn, String sql, ResultSetHandler rsh) 这执行一个不要参数的选择查询。update(Connectio 一方法被用来执行一个插入、更新或删 除操作。对象阵操作删除更新列为声明保存着置换参数。 conn, String sql,ResultSetHandler rsh) 一方法被用来执行一个插入、更新或删 除操作。对象阵操作删除更新列为声明保存着置换参数。 现在让我们来看一个例子在这里你可以从一个数据库中数据库这里我们获得一些数据 数据库你还需要下比如说数据 mysql 载MYSQL JDBC 数据库你还需要下比如说数据 mysql 载MYSQL JD

43、BC 我正在使用的MySQL 使用口号我正在使用的MySQL 使用口号为3306 上运行 据库地名字叫做test Student 。你将要用到数据 3306据库地名字叫做test Student Columns Type StudId int Name varchar 表中得到一些信息,而且你可student 在列中,你将会表中得到一些信息,而且你可student 表的结构如下 自己的额外需要修改这些信息尽管你在使用JDBC 需要使用自己但要注意你几乎没写JDBC 编码。你可能要改变在例子中所规几乎注意可能定的用户名和密码,这是以你的具体的数 据库配置为基础用户自己的额外需要修改这些信息尽管你

44、在使用JDBC 这个编码遵从以下步骤 加载JDBC 来得到一个数据库连接。数据库得到一加载JDBC 来得到一个数据库连接。数据库得到一 。 例示。 使用连接、SQL 查询、参数和ResultSetHandler 来作为输入的查询方法输入使用参数。 使用连接、SQL 查询、参数和ResultSetHandler 类 MapListHandler 集(ResultSet )并返回MapListHandler 集(ResultSet )并返回 jaca.util.Map 因此结果jaca.util.Map 因此结果(resultset 所有这些java.util.Map 每一行都变成了所有这些jav

45、a.util.Map 中。 绑在一起放在一个java.util.List 中。 实例因此ResultSet实例因此ResultSet 的实例resultset 实的实例resultset 反复得到列表(List)反复得到列表(List) 中获得每一个Map 的中获得每一个Map 得到通过 list 的得到通过 list 5用 QueryRunner , 5用 QueryRunner , queryrunn 因为你可以把ResultSet 参数这里是一个queryrunn 因为你可以把ResultSet 有用可Bean 成有用可Bean 类Bean 的列表中。这时你可以指定一类Bean 中,如同

46、在这中,如同在这时 bean 可以列表中所显示的那样 ,然后就可从得到 be每一个 6.你通过反复从列表(Li,然后就可从得到 be每一个 实例中获取值 实例中获取值 类中的StudId 必须是int 类中的StudId 必须是int 表Studentstudent studid 列的类型是int 列表studid 列的类型是int 需要的唯一规则。 。坚持这个类型的匹配是我们需要遵从 类的属性和表Student 因为在这种情况下类的属性和表Student 的字段是完好的 完好映着的,只要将StuentBean 类作为一个参数就是一个技巧。字段值stuentbean 字段用和字段名一样的名字插

47、入到类的属性中然而 完好映着的,只要将StuentBean 类作为一个参数就是一个技巧。字段值stuentbean 二 beanBeanListHandler(java.lang.Class 类 BeanListHandler type, convert). RowProcessor type, convert). 接 的执行把结果集ResultSet的执行把结果集ResultSet )的各行转化s 在 StudentBean 这一案例中RowProcessor 中的BasicRowProcessor 用利用案例执行上了它能够执行这项任务然而在 StudentBean 这一案例中RowProc

48、essor 中的BasicRowProcessor 的构造器 中获得哪些student 当然,执行这一编码的输出取决于你从中获得哪些student 取决于哪些据 对我来说,我得到了以下这些输出 *Using MapListHandler* Id 1 Name One Id 2 Name Two *Using BeanListHandler* Id 1 Name One Id 2 Name Two Id 3 Name Three 除了到目前为止你已经看了的类以外,另外一些你需要研为止需要已经究的类是 :QueryLoader 是一个从一个文件加载查询:QueryLoader 是一个从一个文件加载

49、查询 个Map 的简单的类后queryload 文件查询当需要的时候从 Map 中选择一些查询 个Map 的简单的类后queryload 文件查询当需要的时候从 Map 查询也可以改变得 have 可以情况可能的简单 这个类对使用一个系 这个类对使用一个系 统方法来解决NULL 值问题是很有用的使用问题有用用一统方法来解决NULL 实例来限制一个常规的结果集(ResultSet ,然后详 resultset 常规实例细地说明在遇 NULL 值的情况下应该做些什么实例来限制一个常规的结果集(ResultSet ,然后详 resultset :用 StringTrimmedResultSet 和g

50、etObject() 方法返回的字符串。 所有getString()StringTrimmedResultSet 和getObject() 方法返回的字符串。 DbUtils 的项目中去使dbutil 到DbUtils 的项目中去使dbutil 分页技术的介绍 2.4 DisplayTag 分页技术的介绍 g概述 项目值得用 Displ源的定制标签库,它提供高级 web示模板,DisplayTag 可以M型中充的角色。这个标签库提供了许多易于使用的强大功能。 我能用g做什么? 实际上Displ显示表,给它一个对象列表,它可以处理表的列的 显示、排序、分页、裁剪、分组、智能链接、导出和使用定制x

51、h装饰表格 g的依赖r包 下面j是在使Displ须的: Commons-beanutils Commons-collections Commons-lang Commons-logging 尽量使用最新的包,这些可以apaomon中去下载。另外还需要 j2jsstanE表达式。iTtj面编译的时候也是必 的 MV合 we: struts+hibeat能包,这里就不一一列举了。此外我 还想说明的是在单元测试的时候有些包也是必须的例如juttpnt easyo等。请把相应的包加入到项目的 class直接拷贝到 /WEB-Ib g开发环境的搭建 强烈建议使J2SE5J2EE1上的版本,Servle容

52、器使Tomcat 50 上的版本。这样可以免去配DisplayTg tl文件。环境搭建好后,js页面 中加入如下声明: 2.系统B/结构 结构 2.5.1 B/S 结构 B/(Browser/Server 器/服务器模式是B 兴起后的一种网络结构模式WE 分 B/(Browser/Server 器/服务器模式是B 或Internet Explorer ,服务器安装Oracle 、SybaseInfor mix SQL Server mix SQL Server 同数据库进行数据交互。 3-1 /果图 结构的作用 2.5.2 B/S 结构的作用 B/最大的优点就是可以在任何地方进行操作而不用安装

53、任何专门的软件,只要 有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。 B/结构的使用越来越多特别是由需求推动AJ术的发展它的程序也能 在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性 能进行局部实时刷新。 2.5.3 B/S 2.5.3 B/S ()维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,B 的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果 需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,B 的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维 护。无论用户的规模有多大,有

54、多少分支机构都不会增加任何维护升级的工作量,所 有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实 远程维护、升级和共享。所以客户机越来越“瘦,而服务器越来越“胖”是将来 息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简 单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和 升级革命的方式是“瘦”客户机“胖”服务器。 ()成本降低,选择更多。大家都知wind在桌面电脑上几乎一统天下, 浏览器成为了标准配置但在服务器操作系统上win处于绝对的统治地位。 现在的趋势是凡使B构的应用管理软件,只需安装Lix器上即可, 而且安全性高

55、。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以 让大部分人使wins面操作系统电脑不受影响,这就使得最流行免费L in作系统快速发展起来Li操作系统是免费的以外,连数据库也是免费 的,这种选择非常盛行。 比如说很多人每天“新浪网只要安装了浏览器就可以了并不需要了“新 浪”的服务器用的是什么操作系统,而事实上大部分网站确实没有使winws 系统,但用户的电脑本身安装的大部分wins统。 ()应用服务器运行数据负荷较重。由于 BS构管理软件只安装在服务器端 (Ser,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服 务器(Ser完全通WW览器实现,极少部分事务逻辑在前端

56、(Broser 实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务 器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许 单位都备有数据库存储服务器,以防万一。 第三章基于 JSP+客系统的 总体设计 3.1 3.1 系统涉及到的用户角色分两种游客和博客主人 实现以下功能 能。如图实现以下功能 修改密码 删除博客内容 更改博客内容 博客主人 发表新博客 发表评论 查看博客 用户权 用户权 游客权限 3.1.1 游客权限 游客无须注册即可浏览注册用户发表的日志上传的附件 所示 日志发表评论,给注册用户留言。其功能结构如图3-2所示 浏 览 博 文 发

57、表 评 论 游客权限 图3-2 游客权限 博主权限 3.1.2 博主权限 博主可以通过登录,对自己的博客空间进行管理。主要包括以下几个模块 发表博文模块:博文包括博文主题、博文所属分类、博文; 博文管理模块:包括博文分类管理(添加新分类、删除分类 志的添加、删除、编辑,日志评论管理(查看评论、回复评论、删除评论 留言板管理模块:包括查看所有留言,删除留言 修改密码:必须验证旧密码才可以修改新密码 所示 功能结构如图3-3所示 博客 主人 修 改 博 文 博主权限 图3-3 博主权限 3.统流程 系统流程即该系统在使用过程的一些基本操作流程它详细介绍了一个用户从登 入网站使用网站服务退出登入等的

58、一序列流程使用户更清晰网站的服务和结构, 方便了用户的使用接下来主要从以下方面来介绍系统流程: 用户登入 作为博主必须登入之后才可以对博文等一序列信息进行编辑修改,具体登入的流 程如图所示: Yes No 添加博文 账号密码 No 正确验证数据库 Yes 登入成功 图 登入流程 博文是博主与他人进行信息交流的一种便捷方式博主可写上自己的心情日志 所示: 笔记等等,分享资源信息。具体添加流程如图3-5 所示: No Yes 图3-5 博文添加流程 图3-5 修改用户密码 密码是一种保护个人信息的有效途径当然博主登入的密码是可以修改的而且密码过 一定时间就要修改,这样可确保个人账号的安全和信息的保

59、密。密码修改的流程如图 3-6 所示: 博主登 入 Yes 登入超时 No 修改密码 输入密码No 输入的两次密 码是否相同 Yes 修改成功 图3-6 密码修改流程图3-6 博文管理流程 博文不是一次性写出的,它要求博文是可以修改的,流程图如图7所示 入 No 博文修改 No 败 3.据库设计 功 图 修改博文流程 3.3.1 数据库的选择 3.3.1 My音为my esss放源代码的关系 型数据库管理系统(RDMy库系统使用最常用的数据库管理语言- 化查询语言(S进行数据库管理。 由MyL放源代码的,因此任何人都可以General Pubic Licens 许可下下载并根据个性化的需要对其

60、进行修改。My其速度、可靠性和适应性 而备受关注。大多数人都认为在不需要事务化处理的情况下,My理内容最好 的选择。 基于以上原因,本课题使用的是 MySQL-5.1i软件 NavicatL操作。 3.3.2 数据库概念结构设计 3.3.2 概念结构设计就是将需求分析得到的用户需求抽象为信息结构,即概念模 型在这里采用E型博主的概念结构的E型设计如图3示 所示。 的概念结构的E型设计如图3-9 所示。 博文所属分类 主E-R主E-R 号 的型 3.3.3 数据库实体设计图 3.3.3 示 通过如上的数据的分析,设计数据库的实体如图3-10 示 PK idINTEGER usernamCHAR(

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论