文档库 最新最全的文档下载
当前位置:文档库 › Java 课程设计报告之个人博客系统

Java 课程设计报告之个人博客系统

Java 课程设计报告之个人博客系统
Java 课程设计报告之个人博客系统

目录

中文文摘 (3)

关键词 (3)

ABSTRACT (4)

Keywords (4)

第一章绪论 (5)

1.1个人博客系统简介 (5)

1.2 课题研究背景和意义 (6)

1.3 个人博客系统的技术要点 (7)

1.3.1 采用JSP技术 (7)

1.3.2 Java Servilet 技术介绍 (7)

1.4 本文的主要工作 (7)

第二章基于JSP+JDBC的个人博客系统的技术基础 (9)

2.1 J2EE 技术平台介绍 (9)

2.2 JSP技术介绍 (10)

2.3 DB Util 数据库管理工具的介绍 (11)

2.3.1 DbUtils (12)

2.3.2 ResultSetHandler (13)

2.3.3 QreryRunner (13)

2.4 DisplayTag 分页技术的介绍 (16)

2.4.1 DisplayTag概述 (16)

2.4.2 我能用DisplayTag做什么? (16)

2.4.3 DisplayTag的依赖jar包 (16)

2.4.4 DisplayTag开发环境的搭建 (17)

2.5系统B/S结构 (17)

2.5.1 B/S结构 (17)

2.5.2 B/S结构的作用 (17)

2.5.3 B/S架构软件的优势与劣势 (18)

第三章基于 JSP+JDBC 的个人博客系统的总体设计 (19)

3.1系统功能需求 (19)

3.1.1 游客权限 (19)

3.1.2 博主权限 (20)

3.2 系统流程 (21)

3.2.1 用户登入 (21)

3.2.2 添加博文 (22)

3.2.3 修改用户密码 (23)

3.2.4 博文管理流程 (23)

3.3 数据库设计 (24)

3.3.1 数据库的选择 (24)

3.3.2 数据库概念结构设计 (25)

3.3.3 数据库实体设计图 (25)

3.4 开发环境 (26)

第四章基于 JSP+JDBC 的个人博客系统的设计与实现 (27)

4.1 软件开发工具简介 (27)

4.1.1 MyEclipse7.0软件开发工具 (27)

4.1.2 Dreamweaver CS4 (27)

4.1.3 Apache Tomcat 5.5 (28)

4.1.4 MySQL5.1 MySQL的概述 (29)

4.2 系统总体设计 (29)

4.3 系统实现 (33)

4.3.1 博客系统登入的界面 (33)

4.3.2 管理员登入界面 (33)

4.3.3 博主管理界面 (34)

第五章总结和展望 (40)

5.1 总结 (40)

5.2 今后工作 (41)

参考文献 (42)

致谢 (43)

中文文摘

随着互联网技术的高速发展,生活节奏的加快,博客被越来越多的人选择作为学习和交流的工具。博客的内容丰富多彩,有对其他网站的超链接和评论,有个人构思,还有新闻日志、照片、诗歌和散文等。博客具有自主性、开放性、互动性和共享性的特点,是一个很好的交流的渠道,思想展现的舞台和学术探讨的园地。

本系统是一个实用的个人博客网站,集博客、留言板、链接于一身。未注册用户(访客)可以浏览文章,发表评论及留言。也可以通过注册成为该系统的注册用户,注册用户可以管理自己的博客、留言板、友情链接等,同时还可以发表新日志,上传附件等。

本文对博客系统进行整体分析,明确了系统的可行性和用户需求;根据模块化原理,规划设计了系统功能模块;在数据库设计部分,详细说明了系统数据库的结构和数据库的完整性、安全性措施;程序设计则采用面向对象的程序设计思想,提出系统的程序设计思路,对前台与后台功能的程序实现进行了详细论述;系统测试部分,具体分析测试过程中出现的主要问题,并提出了解决方案,实现系统功能。最后,对系统作以客观、全面的评价,并对进一步改进提出了建议。

关键词博客,日志,评论,留言

ABSTRACT

With the rapid development of Internet technology and high speed of life rhythm, Blog has being chosen by more and more people as the tool of study and communication. The content of Blog is very rich and colourful: some has hyperlink and comment of other website, some about personal thinking, news, music, article and so on. Because of the character of independence, open, interaction and share of Blog, it is regarded as an outlet of good exchange channel, the stage of personal thought displaying, and the garden area of knowledge studying.

This system is a practical Blog website which has Blog, photo album, message 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 Blog, photo album, message board, link of friendship etc. At the same time, they can also post new log, picture etc.

In this text,it analysis the blog system by feasibility and the demand of the user. Under the modular theory, planning and design of the system functional modules; In the database design, a detailed description of the database structure and database integrity, security measures; Programming is used object-oriented programming design, system design ideas, background for the future and function of the program in detail; System testing, Analysis of the specific course of testing the key issues and proposed solutions to achieve system function. Finally, the system in an objective, comprehensive evaluation, as well as further improvements made.

Keywords Blog,log,comment,message

第一章绪论

互联网技术的发展使得博客及博客文化成为热点。博客以其自主性、开放性、共享性的特点,是满足了人们个人自由表达和出版,知识过滤与积累,深度交流沟通的网络新方式。本章主要介绍该系统的开发背景及意义、系统的开发软件。

1.1个人博客系统简介

Blog,是Weblog的简称。Weblog,其实是Web和Log的组合词。Web,指World Wide Web,当然是指互连网了;Log的原义则是“航海日志”,后指任何类型的流水记录。合在一起来理解,Weblog就是在网络上的一种流水记录形式或者简称“网络日志”。Blogger 或Weblogger,是指习惯于日常记录并使用Weblog工具的人。虽然在大陆早些时候或者台湾等地,对此概念的译名不尽相同(有的称为“网志”,有的称之为“网录”等等),但目前已基本统一到“博客”一词上来。该词最早是在2002年8月8日由著名的网络评论家王俊秀和方兴东共同撰文提出来的。博客也好,网志也罢,仅仅是一种名称而已,它的本义还是逃不过Weblog的范围。只是,通常我们所说的“博客”,既可用作名词Blogger或weblogger——指具有博客行为的一类人;也可以作动词用(相当于英文中的Weblog或blog),指博客采取的具有博客行为反映、是第三方可以用视觉感受到的行为,即博客们所撰写的Blog。因此,“他/她是一位博客,他/她天天在博客”及“博客博什么客?”在中文语法与逻辑上都是正确。只是不同场合的用法不同罢了。

Blog究竟是什么?说了半天,其实一个Blog就是一个网页,它通常是由简短且经常更新的帖子(Post)所构成,这些张贴的文章都按照年份和日期倒序排列。Blog的内容和目的有很大的不同,Blog的内容和目的有很大的不同,从对其他网站的超级链接和评论,有关公司、个人、构想的新闻到日记、照片、诗歌、散文,甚至科幻小说的发表或张贴都有。许多Blogs记录着blog个人所见、所闻、所想,还有一些Blogs则是一群人基于某个特定主题或共同利益领域的集体创作。撰写这些Weblog或Blog的人就叫做Blogger或Blog writer。

博客存在的方式,一般分为三种类型:一是托管博客,无须自己注册域名、租用空间和编制网页,博客们只要去免费注册申请即可拥有自己的博客空间,是最“多快好省”的方式。如英文的https://www.wendangku.net/doc/4c5258785.html,、https://www.wendangku.net/doc/4c5258785.html,及多种语言的博客室(https://www.wendangku.net/doc/4c5258785.html,)等都提

供这样的服务;二是自建独立网站的博客,有自己的域名、空间和页面风格,需要一定的条件。如方兴东建立的“博客中国”站(https://www.wendangku.net/doc/4c5258785.html,);三是附属博客,将自己的博客作为某一个网站的一部分(如一个栏目、一个频道或者一个地址)。这三类之间可以演变,甚至可以兼得,一人拥有多种博客网站。

1.2 课题研究背景和意义

近几年来,博客及博客文化正成为互联网的热点,并被视为继e-mail、bbs和icq之后出现的第四种网络交流方式。

在网络上发表Blog的构想始于1998年,但到了2000年才真正开始流行。而2000年博客开始进入中国,并迅速发展,但都业绩平平。直到2004年木子美事件,才让中国民众了解到了博客,并运用博客。2005年,国内各门户网站,如新浪、搜狐,原不看好博客业务,也加入博客阵营,开始进入博客春秋战国时代。起初,Bloggers将其每天浏览网站的心得和意见记录下来,并予以公开,来给其他人参考和遵循。但随着Blogging快速扩张,它的目的与最初已相去甚远。目前网络上数以千计的Bloggers发表和张贴Blog的目的有很大的差异。不过,由于沟通方式比电子邮件、讨论群组更简单和容易,Blog已成为家庭、公司、部门和团队之间越来越盛行的沟通工具,因为它也逐渐被应用在企业内部网络(Intranet)。

博客正在改变社会交流方式。目前,全球参与博客的人数已经达到千万之众,而且每几秒钟,都有一名新的博客用户加盟进来。

很多记者、律师、教授、学者、专家,甚至法官和议员都有了自己的博客网站,形成了独特的博客文化。美国总统候选人乐于开设博客站点,作为竞选的重要手段。企业界也正在把博客方式引入企业内部网和公司网站,用于非正式的知识管理和网络营销等。政府部门和教育领域都在尝试利用博客构建内部知识管理和沟通交流的新体系,可以让职员发表评论,积累知识,链接有意思的网络资源,促进彼此的交流沟通。

显然,博客的发展对应了全球范围内知识社会来临的背景。对于中国,这样一个组织机构信息化仍处于初级阶段的国家,博客这种充分发挥个人主导性和积极性的非正式知识管理工具和其深度沟通交流的功能,对于我们国家的知识传播、知识扩散和有效提升组织的学习和创新能力,具有更特殊的意义。博客用户的快速增长以及组织机构对它的广泛应用,有助于推动中国向学习型社会演进。

本系统根据现实的情况以及博客互动性的特点进行设计开发,旨在为用户提供一个交流的平台,促进用户间的深度沟通;并根据博客共享性的特点,促进用户之间的知识交流,使其成为一个学习的园地。

1.3 个人博客系统的技术要点

1.3.1 采用JSP技术

在传统的网页HTML文件(*.htm,*.html)中加入Java程序片段(Scriptlet)和JSP标记(tag),就构成了JSP网页(*.jsp)。Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序片段,然后将执行结果以HTML格式返回给客户。程序片段可以操作数据库、重新定向网页以及发送 email 等等,这就是建立动态网站所需要的功能。所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果,对客户浏览器的要求最低,可以实现无Plugin,无ActiveX,无Java Applet,甚至无Frame。

JSP的优点:

·对于用户界面的更新,其实就是由 Web Server进行的,所以给人的感觉更新很快。

·所有的应用都是基于服务器的,所以它们可以时刻保持最新版本。

·客户端的接口不是很繁琐,对于各种应用易于部署、维护和修改。

1.3.2 Java Servilet 技术介绍

当Web刚开始被用来传送服务时,服务提供者就已经意识到了动态内容的需要。Applet是为了实现这个目标的一种最早的尝试,它主要关注使用客户端平台来交付动态用户体验。与此同时,开发人员也在研究如何使用服务器平台实现这个目标。开始的时候,公共网关接口(Common Gateway Interface ,CGI)脚本是生成动态内容的主要技术。虽然使用得非常广泛,但CGI脚本技术有很多的缺陷,这包括平台相关性和缺乏可扩展性。为了避免这些局限性,Java Servlet 技术因应而生,它能够以一种可移植的方法来提供动态的、面向用户的内容。

一个servlet就是Java编程语言中的一个类,它被用来扩展服务器的性能,服务器上驻留着可以通过“请求-响应”编程模型来访问的应用程序。虽然servlet可以对任何类型的请求产生响应,但通常只用来扩展Web服务器的应用程序。Java Servlet技术为这些应用程序定义了一个特定于HTTP的 servlet类。javax.servlet和javax.servlet.http包为编写servlet提供了接口和类。所有的servlet都必须实现Servlet接口,该接口定义了生命周期方法。当实现一个通用的服务时,您可以使用或扩展由Java Servlet API提供的GenericServlet类。HttpServlet 类提供了一些方法,诸如doGet和doPost,以用于处理特定于HTTP的服务。

1.4 本文的主要工作

本文主要从以下介绍了个人博客系统和设计实现:

1、第一章绪论:详细介绍了个人博客系统,分析博客系统的需求和技术概要;

2、第二章基于JSP+JDBC的个人博客系统的技术基础:从技术层面介绍了博客系统可能使用到的技术和平台,从而使用户对个人博客有更深层次理解;

3、第三章基于JSP+JDBC的个人博客系统的总体设计:首先从需求分析,构思网站的总体

思路,画出流程图和数据库表结构,为下一步的系统设计做准备;

4、第四章基于JSP+JDBC的个人博客系统的设计与实现:首先介绍一下该系统使用的开发软件和平台,在第三章的基础之上具体设计系统的表层的框架和底层数据库的表结构。从底层往上层逐步实现系统的需求功能。最后再美化页面。

5、第五章总结和展望:总结了这次课程设计过程中学到的东西和遇到问题是怎样解决的,并分析一下今后对该系统的完善。

6、列出本文参考的文献

7、致谢

第二章基于JSP+JDBC的个人博客系统的技术基础

2.1 J2EE 技术平台介绍

本系统主要运用J2EE技术开发。J2EE是一套全然不同于传统应用开发的技术架构,包含许多组件,主要可简化且规范应用系统的开发与部署,进而提高可移植性、安全与再用价值。

J2EE核心是一组技术规范与指南,其中所包含的各类组件、服务架构及技术层次,均有共通的标准及规格,让各种依循J2EE架构的不同平台之间,存在良好的兼容性,解决过去企业后端使用的信息产品彼此之间无法兼容,导致企业内部或外部难以互通的窘境。

这种基于组件,具有平台无关性的J2EE结构使得J2EE程序的编写十分简单,因为业务逻辑被封装成可复用的组件,并且J2EE服务器以容器的形式为所有的组件类型提供后台服务. 因为你不用自己开发这种服务, 所以你可以集中精力解决手头的业务问题。J2EE为搭建具有可伸缩性、灵活性、易维护性的商务系统提供了良好的机制:

保留现存的IT资产: 由于企业必须适应新的商业需求,利用已有的企业信息系统方面的投资,而不是重新制定全盘方案就变得很重要。这样,一个以渐进的(而不是激进的,全盘否定的)方式建立在已有系统之上的服务器端平台机制是公司所需求的。J2EE架构可以充分利用用户原有的投资,如一些公司使用的BEA Tuxedo、IBM CICS, IBM Encina,、Inprise VisiBroker以及Netscape Application Server。这之所以成为可能是因为J2EE拥有广泛的业界支持和一些重要的’企业计算’领域供应商的参与。每一个供应商都对现有的客户提供了不用废弃已有投资,进入可移植的J2EE领域的升级途径。由于基于J2EE平台的产品几乎能够在任何操作系统和硬件配置上运行,现有的操作系统和硬件也能被保留使用。

高效的开发: J2EE允许公司把一些通用的、很繁琐的服务端任务交给中间件供应商去完成。这样开发人员可以集中精力在如何创建商业逻辑上,相应地缩短了开发时间。高级中间件供应商提供以下这些复杂的中间件服务: 状态管理服务—让开发人员写更少的代码,不用关心如何管理状态,这样能够更快地完成程序开发。持续性服务—让开发人员不用对数据访问逻辑进行编码就能编写应用程序,能生成更轻巧,与数据库无关的应用程序,这种应用程序更易于开发与维护。分布式共享数据对象CACHE服务—让开发人员编制高性能的系统,极大提高整体部署的伸缩性。

支持异构环境: J2EE能够开发部署在异构环境中的可移植程序。基于J2EE的应用程序不依赖任何特定操作系统、中间件、硬件。因此设计合理的基于J2EE的程序只需开发一次就可部署到各种平台。这在典型的异构企业计算环境中是十分关键的。J2EE标准也允许客户订购与J2EE兼容的第三方的现成的组件,把他们部署到异构环境中,节省了由自己制订整个方案所需的费用。

可伸缩性: 企业必须要选择一种服务器端平台,这种平台应能提供极佳的可伸缩性去满足那些在他们系统上进行商业运作的大批新客户。基于J2EE平台的应用程序可被部署到各种操作系统上。例如可被部署到高端UNIX与大型机系统,这种系统单机可支持64至256个处理器。(这是NT服务器所望尘莫及的)J2EE领域的供应商提供了更为广泛的负载平衡

策略。能消除系统中的瓶颈,允许多台服务器集成部署。这种部署可达数千个处理器,实现可高度伸缩的系统,满足未来商业应用的需要。

稳定的可用性: 一个服务器端平台必须能全天候运转以满足公司客户、合作伙伴的需要。因为INTERNET是全球化的、无处不在的,即使在夜间按计划停机也可能造成严重损失。若是意外停机,那会有灾难性后果。J2EE部署到可靠的操作环境中,他们支持长期的可用性。一些J2EE部署在WINDOWS环境中,客户也可选择健壮性能更好的操作系统如Sun Solaris、IBM OS/390。最健壮的操作系统可达到99.999%的可用性或每年只需5分钟停机时间。这是实时性很强商业系统理想的选择。

2.2 JSP技术介绍

本系统主要用JSP开发的。JSP(JavaServer Pages)是由Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。JSP技术有点类似ASP技术,它是在传统的网页HTML文件(*.htm,*.html)中插入Java程序段(Scriptlet)和JSP标记(tag),从而形成JSP文件(*.jsp)。

用JSP开发的Web应用是跨平台的,即能在Linux下运行,也能在其他操作系统上运行。 JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。

Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。

JSP与Java Servlet一样,是在服务器端执行的,通常返回该客户端的就是一个HTML 文本,因此客户端只要有浏览器就能浏览。

JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。

JSP页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。Java Servlet 是JSP的技术基础,而且大型的Web应用程序的开发需要Java Servlet和JSP配合才能完成。JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。

自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。

为了快速方便地进行动态网站的开发,JSP在以下几个方面做了改进,使其成为快速建立跨平台的动态网站的首选方案。

2.2.1将内容的生成和显示进行分离

用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面,并使用JSP标识或者小脚本来生成页面上的动态内容(内容是根据请求变化的,例如请求账户信息或者特定的一瓶酒的价格等)。生成内容的逻辑被封装在标识和JavaBeans组件中,并且捆绑在脚本中,所有的脚本在服务器端运行。由于核心逻辑被封装在标识和JavaBeans 中,所以Web管理人员和页面设计者,能够编辑和使用JSP页面,而不影响内容的生成。

在服务器端,JSP引擎解释JSP标识和脚本,生成所请求的内容(例如,通过访问JavaBeans组件,使用JDBC技术访问数据库或者包含文件),并且将结果以HTML(或者XML)页面的形式发送回浏览器。这既有助于作者保护自己的代码,又能保证任何基于HTML的Web 浏览器的完全可用性。

2.2.2可重用组件

绝大多数JSP页面依赖于可重用的、跨平台的组件(JavaBeans或者Enterprise JavaBeans组件)来执行应用程序所要求的复杂的处理。开发人员能够共享和交换执行普通操作的组件,或者使得这些组件为更多的使用者和客户团体所使用。基于组件的方法加速了总体开发过程,并且使得各种组织在他们现有的技能和优化结果的开发努力中得到平衡。2.2.3采用标识

Web页面开发人员不会都是熟悉脚本语言的编程人员。JSP技术封装了许多功能,这些功能是在易用的、与JSP相关的XML标识中进行动态内容生成所需要的。标准的JSP标识能够访问和实例化JavaBeans组件,设置或者检索组件属性,下载Applet,以及执行用其他方法更难于编码和耗时的功能。

2.2.4 适应平台

几乎所有平台都支持Java,JSP+JavaBeans几乎可以在所有平台下通行无阻。从一个平台移植到另外一个平台,JSP和JavaBeans甚至不用重新编译,因为Java字节码都是标准的与平台无关的。

2.2.5 数据库连接

Java中连接数据库的技术是JDBC,Java程序通过JDBC驱动程序与数据库相连,执行查询、提取数据等操作。Sun公司还开发了JDBC-ODBC bridge,利用此技术Java程序可以访问带有ODBC驱动程序的数据库,目前大多数数据库系统都带有ODBC驱动程序,所以Java 程序能访问诸如Oracle、Sybase、MS SQL Server和MS Access等数据库。

此外,通过开发标识库,JSP技术可以进一步扩展。第三方开发人员和其他人员可以为常用功能创建自己的标识库。这使得Web页面开发人员能够使用熟悉的工具和如同标识一样的执行特定功能的构件来进行工作。

JSP技术很容易整合到多种应用体系结构中,以利用现存的工具和技巧,并且能扩展到支持企业级的分布式应用中。作为采用Java技术家族的一部分,以及Java 2(企业版体系结构)的一个组成部分,JSP技术能够支持高度复杂的基于Web的应用。由于JSP页面的内置脚本语言是基于Java的,而且所有的JSP页面都被编译成为Java Servlets,所以JSP 页面具有Java技术的所有好处,包括健壮的存储管理和安全性。作为Java平台的一部分,JSP拥有Java编程语言“一次编写,各处运行”的特点。

2.3 DB Util 数据库管理工具的介绍

JDBC码是Java译码的一个部分,它给已写的编码带来了数量惊人的重复。另外,JDBC 码几乎会经常性的带来一些低级错误经常性低级几乎。写出好的JDBC编码并不难,但是很

痛苦。

DbUtils组件是一个精密而简单的组件,它并不做什么复杂的事dbutil 精密什么而仅仅只是使很多的JDBC任务对开发者来说变得稍容易一点一点开发来说。尽管这时候很多持久框架和包都可以用来使数据持久变数据可以尽管得更容易,然而JDBC仍然是大多数Java 和J2ee开发者赖以生存的工具。因此,任何能让使用JDBC工作更容易工具使用赖以的东西都是好消息。

DbUtils可以免费下载,它不依赖于任何其它的通用组件而只是dbutil 依赖下面这些:

?Java Development Kit (JDK) 1.2 (or later)

?JDBC 2.0 (or later)

DbUtils文档并不是最好的,但是足以使你的工作正常进行。在下一节,你会看到DbUtils 中最有用的类以及一些关于它们的dbutil 一些用法的例子。你应该能够很容易地使用这些编码和例子,然后能够马上在你自己的项目中开始使用DbUtils。我将会集中dbutil 能够开始精力于两个类(https://www.wendangku.net/doc/4c5258785.html,mons.dbutils.DbUtils 和https://www.wendangku.net/doc/4c5258785.html,mons.dbutils.QueryRunner)和一个接口queryrunn dbutil common (https://www.wendangku.net/doc/4c5258785.html,mons.dbutils.ResultSethandler).在我给你们一些关于它们的用法的例子之dbutil common apach前,让我们深入DbUtils里面来仔细看看它给我们提供了些什么dbutil 我们提供。

2.3.1 DbUtils

DbUtils是一个为做一些诸如关闭连接、装载JDBC驱动程序之类的dbutil 装载之类常规工作提供有用方法的类,它里面所有的方法都是静态常规方法所有的。

这个类里的重要方法有:

close:DbUtils类提供了三个重载的关闭方法。这些方法检查所提供dbutil 检查方法的参数是不是NULL,如果不是的话,它们就关闭连接、声明参数声明如果和结果集(ResultSet)。CloseQuietly: CloseQuietly这一方法不仅能在连接、声明或者结果集(ResultSet)为NULL情resultset 声明方法况下避免关闭,还能隐藏一些在程序中抛出的SQLEeception。如果你sqleecept 一些避免不想捕捉这些异常的话,这对你是非常有用的。在重载CloseQuietly有用捕捉这些方法时,特别有用的一个方法是closeQuietly(Connection conn,Statement stmt,ResultSet rs),这是因statement resultset connect为在大多数情况下,连接、声明和结果集(ResultSet)是你要用resultset 大多数声明的三样东西,而且在最后的块你必须关闭它们。使用这一使用最后东西方法,你最后的块就可以只需要调用这一方法即可。CommitAndCloseQuietly(Connection conn):这一方法用来提交连接,然后

关闭连接,并且在关闭连方法并且提交接时不向上抛出在关闭时发生的一些SQL异常。LoadDriver(String driveClassName):这一方法装载并注册JDBC驱动程序,如果成功就返回TRUE。使装载方法注册用这种方法,你不需要去捕捉这个异常ClassNotFoundException。使用loadDrive方法,loaddriv 需要使用编码就变得更容易理解,你也就得到了一个很好的Boolean返回boolean 得到编码值,这个返回值会告诉你驱动类是不是已经加载成功了。告诉已经成功

2.3.2 ResultSetHandler

正如它的名字所提示的,这一接口执行处理一个jaca.sql.ResultSet,resultset 接口处理将数据转变并处理为任何一种形式,这样有益于其应用而形式这样数据且使用起来更容易。这一组件提供了ArrayHandler, ArrayListHandler, BeanHandler, BeanListHandler, MapHandler, MapListHandler, and ScalarHandler等arrayhandl beanhandl maphandl执行程序。

ResultSetHandler接口提供了一个单独的方法:Object handle(java.sql.ResultSet .rs)。因此任何ResultSetHandler 的执行需要一个结果集(ResultSet)作为resultset 需要执行参数传入,然后才能处理这个结果集,再返回一个对象。参数处理传入因为返回类型是https://www.wendangku.net/doc/4c5258785.html,ng.Object,所以除了不能返回一个原始的Javaobject 原始除了类型之外,其它的返回类型并没有什么限制。如果你发现发现之外其它这七个执行程序中没有任何一个提供了你想要的服务,你执行提供没有可以自己写执行程序并使用它。

2.3.3 QreryRunner

这个类使执行SQL查询简单化了,它与ResultSetHandler串联在一起有效地简单化联在有效履行着一些平常的任务,它能够大大减少你所要写的编码能够编码任务。QueryRunner类提供了两个构造器:其中一个是一个空构造器,另queryrunn 构造提供一个则拿一个javax.sql.DataSource 来作为参数。因此,在你不用为一个datasourc javax 参数方法提供一个数据库连接来作为参数的情况下,提供给构数据库参数方法造器的数据源(DataSource) 被用来获得一个新的连接并将继续进行下datasourc 继续进行去。

这一类中的重要方法包括以下这些:

query(Connection conn, String sql, Object[] params, ResultSetHandler rsh):这一方法执行一个选择查询,在这个查询中,对象阵列的方法阵列执行值被用来作为查询的置换参数。这一方法内在地处理PreparedStatement 和参数内在方法ResultSet 的创建和关闭。ResultSetHandler对把从 ResultSet得来的数据转变成一个更resultset 数据创建容易的或是应用程序特定的格式来使用。

query(String sql, Object[] params, ResultSetHandler rsh):这几乎与第一种方法一样;唯一的不同在于它不将数据库数据库几乎一样连接提供给方法,并且它

是从提供给构造器的数据源(DataSource) 或datasourc 数据构造使用的setDAtaSource 方法中重新获得的。query(Connection conn, String sql, ResultSetHandler rsh):这执行一个不要参数的选择查询。update(Connection conn, String sql, Object[] params):这一方法被用来执行一个插入、更新或删除操作。对象阵操作删除更新列为声明保存着置换参数。

现在让我们来看一个例子,在这里你可以从一个数据库中数据库这里我们获得一些数据。比如说,我正在使用MySQL 数据库.你还需要下比如说数据库 mysql载MYSQL JDBC驱动程序。我正在使用的MySQL数据库在本地主机,端数据库 mysql 使用口号为3306上运行。这个数据库地名字叫做test。你将要用到数据库 3306 test的Student表的结构如下:

Columns Type

------- ----

StudId int

Name varchar

在列表A中,你将会从Student表中得到一些信息,而且你可以student 得到信息按照你自己的额外需要修改这些信息。尽管你在使用JDBC,需要使用自己但要注意你几乎没写JDBC 编码。(你可能要改变在例子中所规几乎注意可能定的用户名和密码,这是以你的具体的数据库配置为基础用户名数据库配置的。)

这个编码遵从以下步骤:

1.加载JDBC驱动程序类,并用DriverManager来得到一个数据库连接。数据库得到一个

2.例示 QueryRunner 类。

3.使用连接、SQL查询、参数和ResultSetHandler来作为输入的查询方法输入使用参数。你使用一个类https://www.wendangku.net/doc/4c5258785.html,mons.dbutils.handlers.MapListHandler,一个类MapListHandler来获得一个结果handler dbutil common集(ResultSet)并返回一个jaca.util.Map的实例java.util.List。因此结果集(resultset 实例因此ResultSet)的每一行都变成了一个java.util.Map,所有这些java.util.Map的实例resultset 实例所有绑在一起放在一个java.util.List 中。

4. 反复得到列表(List)的值就是通过在列表(List)中获得每一个Map得到通过 list的值。

5.用QueryRunner 来执行一个没有参数的方法。在这里你要用BeanListHandler ,它queryrunn 参数这里是一个非常有用的ResultSetHandler ,因为你可以把ResultSet 转变成一个指定的resultset 有用可以Bean的列表中。这时你可以指定一个Bean类到Bean StudentBean中,如同在这时 bean 可以列表B中所显示的那样。

6. 你通过反复从列表(List)中得到多个bean,然后就可从得到 bean 通过每一个StudentBean实例中获取值。

注释:在列表B中,StudentBean 类中的StudId 必须是int,这是因为表Studentstudent studid 列表的StudId列的类型是int。坚持这个类型的匹配是我们需要遵从studid 坚持需要的唯一规则。

因为在这种情况下,StudentBean 类的属性和表Student 的字段是完好的对student 这种完好映着的,只要将StuentBean 类作为一个参数就是一个技巧。字段值stuentbean 参数字段用和字段名一样的名字插入到类的属性中。然而,如果你字段名一样名字想要更多地控制bean的创建,则类BeanListHandler提供了第二个构造器:构造第二beanBeanListHandler(https://www.wendangku.net/doc/4c5258785.html,ng.Class type, RowProcessor convert). 接口Rowprocessor的执行把结果集(ResultSet)的各行转化resultset convert class成一个对象组。在 StudentBean这一案例中,RowProcessor中的BasicRowProcessor 的执行被利用利用案例执行上了,它能够执行这项任务。然而,你可以写一个新的执能够可以任务行并把它提供给BeanListHandler的构造器。

当然,执行这一编码的输出取决于你从表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

除了到目前为止你已经看了的类以外,另外一些你需要研为止需要已经究的类是:https://www.wendangku.net/doc/4c5258785.html,mons.dbutils.QueryLoader:QueryLoader是一个从一个文件加载查询到一个Map的简单的类。然后queryload 文件查询,当需要的时候,你从 Map 中选择一些查询。在没有专门去需要一些选择接触代码的情况下,一个文件中的Having查询也可以改变得尽have 可以情况可能的简单。

https://www.wendangku.net/doc/4c5258785.html,mons.dbutils.wrappers.SqlNullCheckedResultSet:这个类对使用一个系统方法来解决NULL值问题是很有用的。使用问题有用用一个 SqINullCheckedResultSet 的实例来限制一个常规的结果集(ResultSet),然后详resultset 常规实例细地说明在遇NULL值的情况下应该做些什么。https://www.wendangku.net/doc/4c5258785.html,mons.dbutils.wrappers.StringTrimmedResultSet:用类StringTrimmedResultSet 来约束一个结果集,这样一来,你就可以修整所有这样一来约束所有getString()和getObject()方法返回的字符串。

DbUtils 组件很好也很小巧,很值得在所有用到JDBC的项目中去使dbutil 项目值得用。

2.4 DisplayTag 分页技术的介绍

2.4.1 DisplayTag概述

DisplayTag是一套开源的定制标签库,它提供高级web显示模板,DisplayTag 可以在MVC模型中充当V的角色。这个标签库提供了许多易于使用的强大功能。

2.4.2 我能用DisplayTag做什么?

实际上,DisplayTag可以用来显示表,给它一个对象列表,它可以处理表的列的显示、排序、分页、裁剪、分组、智能链接、导出和使用定制的xhtml样式装饰表格。

2.4.3 DisplayTag的依赖jar包

下面的jar包是在使用DisplayTag开发时必须的:

Commons-beanutils

Commons-collections

Commons-lang

Commons-logging

尽量使用最新的包,这些可以在apache的commons项目中去下载。另外还需要j2ee的jstl和standard包用于EL表达式。iText包在jsp页面编译的时候也是必须的。如果你要构建一个流行的MVC开发组合web应用,例如:struts+hibernate+spring,你可能还需要相应的包,这里就不一一列举了。此外我还想说明的是在单元测试的时候有些包也是必须的,例如:junit、httpunit、dbuint、easyMock等等。请把相应的包加入到项目的classpath下或者直接拷贝到/WEB-INF/lib目录下。

2.4.4 DisplayTag开发环境的搭建

强烈建议使用J2SE5.0、J2EE1.4以上的版本,Servlet容器使用Tomcat 5.0以上的版本。这样可以免去配置DisplayTag的tld文件。环境搭建好后,在jsp页面中加入如下声明:

<%@ taglib uri=https://www.wendangku.net/doc/4c5258785.html, prefix=”display” %>

2.5系统B/S结构

2.5.1 B/S结构

B/S结构(Browser/Server,浏览器/服务器模式),是WEB兴起后的一种网络结构模式,WE B浏览器是客户端最主要的应用软件。这种模式统一了客户端,将系统功能实现的核心部分集中到服务器上,简化了系统的开发、维护和使用。客户机上只要安装一个浏览器(Brows er),如Netscape Navigator或Internet Explorer,服务器安装Oracle、Sybase、Infor mix或 SQL Server等数据库。浏览器通过Web Server 同数据库进行数据交互。

图3-1 B/S结果图

2.5.2 B/S结构的作用

B/S最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件,只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易。

B/S结构的使用越来越多,特别是由需求推动了AJAX技术的发展,它的程序也能在客户端电脑上进行部分处理,从而大大的减轻了服务器的负担;并增加了交互性,能进行局部实时刷新。

2.5.3 B/S架构软件的优势与劣势

(1)维护和升级方式简单。目前,软件系统的改进和升级越来越频繁,B/S架构的产品明显体现着更为方便的特性。对一个稍微大一点单位来说,系统管理人员如果需要在几百甚至上千部电脑之间来回奔跑,效率和工作量是可想而知的,但B/S架构的软件只需要管理服务器就行了,所有的客户端只是浏览器,根本不需要做任何的维护。无论用户的规模有多大,有多少分支机构都不会增加任何维护升级的工作量,所有的操作只需要针对服务器进行;如果是异地,只需要把服务器连接专网即可,实现远程维护、升级和共享。所以客户机越来越“瘦”,而服务器越来越“胖”是将来信息化发展的主流方向。今后,软件升级和维护会越来越容易,而使用起来会越来越简单,这对用户人力、物力、时间、费用的节省是显而易见的,惊人的。因此,维护和升级革命的方式是“瘦”客户机,“胖”服务器。

(2)成本降低,选择更多。大家都知道windows在桌面电脑上几乎一统天下,浏览器成为了标准配置,但在服务器操作系统上windows并不是处于绝对的统治地位。现在的趋势是凡使用B/S架构的应用管理软件,只需安装在Linux服务器上即可,而且安全性高。所以服务器操作系统的选择是很多的,不管选用那种操作系统都可以让大部分人使用windows作为桌面操作系统电脑不受影响,这就使得最流行免费的L inux操作系统快速发展起来,Linux除了操作系统是免费的以外,连数据库也是免费的,这种选择非常盛行。

比如说很多人每天上“新浪”网,只要安装了浏览器就可以了,并不需要了解“新浪”的服务器用的是什么操作系统,而事实上大部分网站确实没有使用windows操作系统,但用户的电脑本身安装的大部分是windows操作系统。

(3)应用服务器运行数据负荷较重。由于B/S架构管理软件只安装在服务器端(Server)上,网络管理人员只需要管理服务器就行了,用户界面主要事务逻辑在服务器(Server)端完全通过WWW浏览器实现,极少部分事务逻辑在前端(Browser)实现,所有的客户端只有浏览器,网络管理人员只需要做硬件维护。但是,应用服务器运行数据负荷较重,一旦发生服务器“崩溃”等问题,后果不堪设想。因此,许多单位都备有数据库存储服务器,以防万一。

第三章 基于 JSP+JDBC 的个人博客系统的总体设计

3.1系统功能需求

系统涉及到的用户角色分两种:游客和博客主人。下面分别介绍各类用户角色的主要功能。如图3-1实现以下功能: 博客主人

删除博客内容

更改博客内容

发表新博客

查看博客

游客发表评论

修改密码

图3-1 用户权限

3.1.1 游客权限

游客无须注册,即可浏览注册用户发表的日志、上传的附件,并且还可对自己感兴趣的日志发表评论,给注册用户留言。其功能结构如图3-2所示:

游客

浏览博文发表评论

图3-2 游客权限

3.1.2 博主权限

博主可以通过登录,对自己的博客空间进行管理。主要包括以下几个模块:

发表博文模块:博文包括博文主题、博文所属分类、博文;

博文管理模块:包括博文分类管理(添加新分类、删除分类),个人日志管理(个人日志的添加、删除、编辑),日志评论管理(查看评论、回复评论、删除评论);

留言板管理模块:包括查看所有留言,删除留言;

修改密码:必须验证旧密码才可以修改新密码;

功能结构如图3-3所示:

java课程设计报告书

《Java程序设计》课程设计报告2015—2016学年第二学期 设计题目:《数字连连看》 学生:黄杰 学号: 2 专业班级:软件工程1402 指导教师:国权 2016 年7 月2 日

目录 1.JAVA程序设计书 3 1.1《简易连连看》 3 1.1.1具体要求 3 1.2本系统设计的知识点 3 2.功能设计 3 2.1算法设计 3 2.2部分模块流程图 4 3.代码设计 5 4.界面及运行效果,测试工具与测试效果14 5.设计总结 16 5.1.程序调试情况:16 5.2.本人在程序设计中感想: 16 6.致 16 主要参考文献16

: 1.1Java程序课程设计任务书 1.1《简易连连看游戏》 本程序基本实现了小游戏连连看的功能,玩家找出游戏中2个相同图案的方块,如果它们之间的连接线不多于3根直线,则将其连接起来,就可以成功将图案相同的方块消除,否则不会消失,当游戏中已没有满足条件的图案时,点击重列,可重新排序,游戏结束会跳出所得分数,该游戏的特点是与自己竞争,超过自己之前所创纪录。 1.1.1具体要求(包括技术要求等): <1>. 该游戏界面为方格类型,由纵6横7的直线平行垂直交叉组成,分别是6行5列方块拼接,共有30格小方块。方块上随机分布一些数字,数字的要至少两两相同,位置随机打乱。 <2>. 当将相同数字的方块连接,但要满足只能至少单边无阻碍呈直线趋势连接,否则无效,若连接一对成功就消失于界面,继续游戏,直到游戏结束,并能返回所得分数。 <3>. 重列按钮(帮助)的功能:游戏过程中,遇到困难难以寻找下一符合要求的一对数字,可按左下按钮重置重新排列方可继续游戏。 <4>. 退出按钮:击左下方的“退出游戏”按钮,即可结束游戏。 1.2本系统涉及的知识点: 循环,javaGUI组件,函数,数组,分支等 2.功能设计 2.1算法设计 本系统需要实现的功能要求: 图一,数字按钮功能模块 图二,三个功能按钮模块

个人博客系统项目毕业设计论文

本科毕业设计论文名称:个人博客系统考生姓名: 考生地市:滨州市 档案号: 联系地址:山东省滨州学院邮编:256600

个人博客系统 摘要 对个人而言,博客可以调动个人的积极性,充分发挥个人的创造性。近些年,国内博客开始迅猛发展起来,从最初的只有几千个使用者到现在的各式各样的博客,圈子。博客系统致力于为广大用户提供优质的互动交流平台,提高网站的知名度与访问量,从而获得为企业提供更多产品介绍及展示的机会,提升自己网站的价值。 论文首先论述了系统的开发背景与设计目标,并对系统开发所采用的技术进行相应的简单介绍。在系统分析中,对系统的模型进行简单分析,明确系统的操作流程,并对系统进行可行性分析,确定在目前的条件下,开发博客信息管理系统就是可行的。在需求分析结果的基础上,对系统的功能模块进行划分。接着对系统中的数据库进行模型设计,包括数据流图、实体联系图及数据表结构。在系统的设计与实现中,确定系统的开发思想以及开发环境,并对系统中的Java Bean与Servlet代码进行设计。最后给出了系统中模块的详细设计与实现,并对系统模块涉及到的关键源代码进行了详细的分析。 经过调试运行后表明,系统可以满足用户创建个人博客的各项要求。 关键字:博客,MVC,知识共享,信息管理系统

目录 第一章系统概述 (4) 1、1 概述 (4) 1、2系统的开发背景 (4) 1、3个人博客的发展现状 (4) 1、4课题研究的意义 (5) 1、5系统的开发目标 (5) 第二章系统分析 (6) 2、1系统需求分析 (6) 2、2、1注册博友 (7) 2、2、2 普通用户 (8) 2、3系统分析 (9) 2、4、1技术可行性 (10) 第三章开发环境的说明与安装 (11) 3、1开发语言的选择 (11) 3、1、1 JAVA简介 (11) 3、1、2 Web应用程序开发环境—JSP技术 (11) 3、2 数据库的选择 (12) 3、2、1 Web应用程序开发环境—SQLserver数据库 (12) 3、3开发工具的选择 (13) 第四章系统设计 (14) 4、1开发框架技术介绍 (14) 4、2数据库设计E-R图 (15) 4、3 功能模块介绍 (16) 4、3、1 博客注册登录管理模块 (16) 4、3、2 博客及文章检索查询模块 (16) 4、3、3博客页面显示模块 (17) 4、3、4 博客个人维护管理模块 (17) 4、4系统分析 (17) 4、4、1系统架构说明 (18) 4、4、2实现DAO 层 (19) 4、4、4 部署DAO 层 (20) 第五章数据库设计 (20) 5、1定义(数据词典) (20) 5、2主要表结构如下 (20) 第六章主要功能的实现 (21) 6、1 登录控制: (21) 6、2 用户登录 (22) 6、3注册用户 (23) 6、4 Ajax 读取txt格式数据 (27) 6、5 系统架构与数据库的连接 (28) 第七章系统评价 (29) 附:主要参考资料: (30)

文件加密与解密—Java课程设计报告

JAVA课程设计题目:文件的加密与解密 姓名: 学号: 班级: 日期:

目录 一、设计思路 (3) 二、具体实现 (3) 三、运行调试与分析讨论 (8) 四、设计体会与小结 (11) 五、参考文献 (12) 六、附录 (12)

一、设计思路 自从Java技术出现以业,有关Java平台的安全性用由Java技术发展所引发的安全性问题,引起了越来越多的关注。目前,Java已经大量应用于各个领域,研究Java的安全性对于更好地利用Java具有深远的意义。使用Java的安全机制设计和实现安全系统更具有重要的应用价值。 本课程设计,主要实践Java安全中的JCE模块,包括密钥生成,Cipher对象初始化、加密模式、填充模式、底层算法参数传递,也涉及文件读写与对象输入输出流。 二、具体实现 本系统通过用户界面接收三个参数:明文文件、密文文件、口令。采用DES加密算法,密码分组链(Cipher Block Chaining,CBC)加密模式,PKCS#5-Padding的分组填充算法。因为CBC涉及到底层算法参数的解密密钥的传递,所以将明文文件中的字节块以密封对象(Sealed Object)的方式加密后,用对象流输出到密文文件,这样就将密文、算法参数、解密密钥三都密封到一个对象中了。口令的hash值作为产生密钥的参数。设计流程图如下所示: 文件加密与解密设计流程图

本系统中,包含Default,Shares,SecretKey,EncAndDec四个包共6个类组成。定义的几个参数:MAX_BUF_SIZE为每次从文件中读取的字节数,也是内存缓冲区的大小;加密算法为DES;加密模式是密码分组链(CBC)模式;分组填充方式是PKCS#5Padding。包和类结构图如下所示: 本课程设计,包和类结构图: 以下为包中的类的方法实现说明 Package Shares类结构图

Java课程设计报告模板

Java课程设计报告 模板

浙江科技学院 《Java程序设计》课程设计报告 设计题目:学生信息管理系统 姓名:邱焕明 学号: 所属院系:信息学院 专业:软件工程 小组成员:邱焕明 设计时间: -1-6 指导教师:虞建东

一、课程设计目的 (1)实验目的:结合开发的系统,给出学生信息管理系统 二、课程设计完成的任务 三、设计过程 (一)需求分析 1、基础资料管理 基础资料管理包括对院系、班级和学期的设置。该模块可实现以下功能: 添加、修改、删除和显示院系代码、院系名称和电话号码。 添加、修改、删除和显示班级代码、班级名称、学生人数和所属院系名。 添加、修改、删除和显示学期代码、学期名称。 2、学生信息管理 学生信息管理包括对学生档案和学籍的管理。该模块可实现以下功能: 添加、修改、查询和显示学生的基本信息、所属班级和院系。 记录学生学籍、学生离校信息和学生调动信息。 3、课程信息管理 课程信息管理包括对课程设置和班级选课的管理。该模块可实

现以下功能: 添加、修改、删除和显示课程代码、课程名称、学分和院系名称。 添加、删除和提交班级所选课程。 4、成绩信息管理 成绩信息管理包括对成绩录入和成绩分析的管理。该模块可实现以下功能: 录入班级课程成绩,以不同形式(列表统计、图表分析)显示班级课程成绩。 (二)系统设计概念、流程初定义 1、实体名:院系 2、实体名:班级 3、实体名:学生 4、实体名:课程 (三)系统内容规划 1、班级信息表 表3-1 班级信息表 2、课程信息表 表3-2 课程信息表

(四)系统总体设计 内 (五)系统详细设计 (六)系统测试 列名 数据类型 长度 备注 课程代码 char 10 主键 课程名称 varchar 50 无 学 分 tinyint 1 无 所属院系 varchar 50 无

个人博客管理系统 毕业设计论文

个人博客管理系统论文 前言 博客(Blog)的全名应该是Web log,中文意思是“网络日志”,后来缩写为Blog,而博客(Blogger)就是写Blog的人。从理解上讲,博客是“一种表达个人思想、网络链接、内容,按照时间顺序排列,并且不断更新的出版方式”。简单的说博客是一类人,这类人习惯于在网上写日记。 博客(Blog)是继Email、BBS、IM之后出现的第四种网络交流方式,是网络时代的个人“读者文摘”,是以超级链接为武器的网络日记,是代表着新的生活方式和新的工作方式,更代表着新的学习方式。具体说来,博客(Blogger)这个概念解释为使用特定的软件,在网络上出版、发表和张贴个人文章的人。 简言之,Blog就是以网络作为载体,简易迅速便捷地发布自己的心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台。 一个Blog其实就是一个网页,它通常是由简短且经常更新的帖子所构成,这些张贴的文章一般都是按照年份和日期倒序排列。Blog的内容和目的有很大的不同,从对其他网站的超级链接和评论,有关公司、个人构想到日记、照片、诗歌、散文,甚至科幻小说的发表或张贴都有。许多Blogs是个人心中所想之事情的发表,个别Blogs则是一群人基于某个特定主题或共同利益领域的集体创作。 随着Blog快速扩张,它的目的与最初的浏览网页心得已相去甚远。目前网络上数以千计的Bloggers发表和张贴Blog的目的有很大的差异。不过,由于沟通方式比电子邮件、讨论群组以及BBS和论坛更简单和容易,Blog已成为家庭、公司、部门和团队之间越来越盛行的沟通工具。 Blogger即指撰写Blog的人。Blogger在很多时候也被翻译成为“博客”一词,而撰写Blog这种行为,有时候也被翻译成“博客”。因而,中文“博客”一词,既可作为名词,分别指代两种意思Blog(网志)和Blogger(撰写网志的人),也可作为动词,意思为撰写网志这种行为,只是在不同的场合分别表示不同的意思罢了。 最早,是由Jorn Barger在1997年12月提出博客这个名称。但是在1998

Java课程设计

武汉科技大学城市学院 课程设计报告 课程设计名称JAVA程序设计课程设计 题目 A C M 院系信息工程学部 专业软件工程 班级 姓名 指导教师 2017 年 6 月23 日

课程设计评分表

JA V A编程课程设计指导书 学时:1周,学分:1 1.课程设计目的:JAVA编程课程设计属于软件开发类课程设计。该课程设计培养学生熟练应用当前主流的JAVA软件开发语言,检验软件的设计、编码与测试,具备较强的JAVA语言软件开发能力。 2.课程设计方式: (1)JAVA编程课程设计方式采取ACM测试的方式,利用所学的面向对象程序设计(JAVA)知识,培养学生具有分析应用问题的能力,能够独立完成应用程序的编制与调试工作。 (3)每个同学必须完成8-12道题,每题写出解题报告,解题报告内容:○1.题目标题○2.题目描述○3.解题思路○4.源码○5.小结 3.课程设计平台: eclipse或Myeclipse 4.课程设计考核方式 (1)学生独立提交软件设计作品和“课程设计报告书”,指导教师根据学生组提交的软件设计作品和“课程设计报告书”的质量,为学生组评定“优”“良”“中”“及格”或“不及格”; (2)根据各组学生所选题目的难易程度以及验收结果,为学生评定“优”“良”“中”“及格”或“不及格”。 “课程设计报告书”包括:课程设计项目名称,课程设计任务, 课程设计任务(功能)说明及功能模块图,数据库设计,各模块功能说明,使用的算法描述(如果需使用算法),各模块界面设计,各模块中关键代码段功能说明与代码行注释,测试说明,参考文献等。 5.参考文献 [1] 张思民. Java语言程序设计(第2版)[M].北京:清华大学出版社,2012.1 [2] 姜华. Java项目实战教程[M]. 北京:清华大学出版社,2012.9 [3] 陈喧. Java程序设计教程[M]. 北京:清华大学出版社,2011.5 [4] [美]Echel,B .Java编程思想(第四版)[M].北京:机械工业出版社,2007 [5] Michael Main. 数据结构:Java语言描述(第二版)(国外经典计算机科学教材)[M]. 北京:中国电力出版社,2007

Java课程设计报告

湖北大学 本科课程设计 题目 ATM 自助机模拟程序姓名 学号 专业年级 指导教师 职称

目录 第一章系统描述 (2) 1 前言 (2) 2 系统功能需求 (2) 第二章系统分析与设计 (3) 1 功能模块划分 (3) 2 功能模块的描述 (3) 3 系统设计流程图 (4) 4 测试数据及期望结果 (6) 第三章系统详细设计 (7) 1 主界面开发设计 (7) 2 功能选择界面开发设计 (7) 3 取款界面开发设计 (7) 4 存款界面开发设计 (8) 5 转账界面开发设计 (8) 6 查询界面开发设计 (9) 7 修改密码界面开发设计 (9) 8 界面开发设计使用函数 (9) 第四章系统测试 (11) 第五章源程序部分清单 (21) 第六章实验心得 (30) 参考文献 (31)

第一章系统描述 1 前言 Java技术是一门简单的,面向对象的,分布式的,解释型的,健壮安全的,结构中立的,可移植的,性能优异、多线程的动态语言,它也是一个平台,它基于Java虚拟机技术,借助这个东西建立了跨平台的优势。Java编程语言与众不同之处在于:Java程序既是编译型的,又是解释型的。 Java平台是一种纯软件平台,它有三个版本Java SE、Java EE、Java ME。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。 本课程设计采用Eclipse作为开发工具,并采用Window Builder下的SWT Designer来实现相应的功能。着重通过模拟实现当前非常快捷又使用的ATM机来加深对java开发设计的了解,从而进一步提高自己对java图像界面的设计及相关知识的认识。 2 系统功能需求 当输入给定的卡号和密码(初始卡号和密码为123456)时,系统能登录ATM 柜员机系统,用户可以按照以下规则进行: (1)查询余额:初始余额为10000元。 (2)ATM取款:每次取款金额为100的倍数,一次取款不能超过1000,总额不 超过5000元,支取金额不允许透支,有快捷取款和用户自定义取款。 (3)ATM存款:每次存款金额为100的倍数,一次存款不能超过1000,不能出 现负存款。 (4)ATM转账:只有在两次输入账号相同且输入转账金额正确的情况下才允许 转账,不允许透支。 (5)修改密码:新密码长度不小于6位,不允许出现6位完全相同的情况,只 有旧密码正确,新密码符合要求,且两次输入相同的情况下才可以成功修改密码。

毕业设计---个人博客系统设计与实现

毕业设计(论文)中文摘要

毕业设计(论文)外文摘要

目录 1 绪论 ......................................................... - 1 - 1.1博客概况.. (1) 1.1.1 博客的产生............................................ - 1 - 1.1.2 博客的现状............................................ - 2 - 1.2博客的发展、需求与前景 (2) 1.3本论文任务概述 (2) 1.4本论文章节安排 (3) 2 系统设计与实现 ............................................... - 3 - 2.1需求分析.. (3) 2.1.1 功能需求.............................................. - 3 - 2.1.2 项目计划安排.......................................... - 3 - 2.2系统开发环境. (4) 2.2.1开发环境简介 .......................................... - 4 - 2.2.2 Visual Studio 2008开发环境简介 ....................... - 5 - 2.2.3 SQL Server 2005数据库简介 ............................ - 5 - 2.3相关技术简介. (5) 2.3.1 C#语言简介............................................ - 5 - 2.3.2 https://www.wendangku.net/doc/4c5258785.html, 简介.......................................... - 6 - 2.3.3 https://www.wendangku.net/doc/4c5258785.html, 简介.......................................... - 6 - 2.3.4 Silverlight技术简介 .................................. - 7 - 2.3.5 WCF简介 .............................................. - 7 - 2.3.6 jQuery库简介 ......................................... - 8 - 2.4系统设计与实现.. (8) 2.4.1 分层架构核心思想...................................... - 8 - 2.4.2 实体介绍.............................................. - 9 - 2.4.3 数据库设计........................................... - 10 - 2.4.4 实体类的设计与实现................................... - 12 - 2.4.5 接口设计............................................. - 12 - 2.4.6 IoC 容器及依赖注入机制的设计......................... - 14 - 2.4.7 数据访问层的实现..................................... - 17 - 2.4.8 业务逻辑层的实现..................................... - 24 - 2.4.9 表示层的实现......................................... - 26 - 2.4.10 视频模块的实现...................................... - 28 - 3 系统功能演示 ................................................ - 30 - 3.1系统功能演示 (30) 3.2小结 (36)

Javawebapp课程设计报告

《电子商务网站》课程设计报告 项目题目电子拍卖平台系统分析与设计 学生姓名 班级/ 学号 专业\ 指导教师 2011年10月制

1、系统概述 本系统实现的是一个网上拍卖系统,可以实现在线登录,注册;卖家上货,买家出价竞拍;拍卖商品列表、商品拍卖信息和商品搜索等功能,普通的Internet用户可以通过该系统注册成为会员后可以上传自己拍卖的产品和竞拍卖价的商品。 2、网站结构分析与设计 2.1目标设计 竞拍网站所要实现的功能如下。 会员注册:会员注册信息和会员登录验证 会员管理:会员资金管理 买家信息管理 卖家信息管理 2.2系统功能分析设计 竞拍网共分为三个模块:会员注册模块、会员个人管理模块和商品列表和搜索模块。其功能模块划分如图所示:

2.3数据库结构设计 根据系统功能的设计要求和模块划分,表结构设计如下:

2.4 数据库需求分析 数据项和数据结构如下。 会员信息表:自动编号、用户名、密码和身份证号码、资金、日期 商品信息表:自动编号、商品名、上传人、商品详情 卖家信息表:会员编号、商品编号、商品价格、截止时间 商品竞拍成功信息列表:商品名、用户名、竞拍时间、起初价格、最终价格、最成交时间 2.5、开发环境 开发工具:myeclipse 服务器软件:tomcat 数据库:MySQL 3.网站详细设计. 3.1网站流程设计

3.2数据库功能设计 三个存储过程: Onsell:展示拍卖信息,返回当时拍卖的所有信息; Buyingshow:展示某个商品详细信息 Buying:当用户竟拍是执行. 3.3 JA VA控制层设置 POJO包:与每一项功能相对应,设置对象类 DAO包:所有连接数据库的代码 Servlet:所有前台页面的操作过程. 3.4前台设计 以JSP为主,辅助以JS的主流技术,实现网页的动态效果和数据的动态接收,这里是项目最困难的地方. 4.网站的实施 前台\后台\控制分布实施: 4.1,初步软件结构实施 其中DAO包里全部是与数据库有关的连接数据库模式。 POJO包里全部是业务需要的数据结构类。 SERVLET包里全部是逻辑控制的控制模式。

java课程设计报告书

《Java程序设计》课程设计报告 2015—2016学年第二学期 设计题目:《数字连连看》 学生:黄杰 学号: 2 专业班级:软件工程1402 指导教师:国权 2016 年 7 月 2 日 目录 1.JAVA程序设计书 3 1.1《简易连连看》3 1.1.1具体要求 3 1.2本系统设计的知识点 3

2.功能设计 3 2.1算法设计 3 2.2部分模块流程图 4 3.代码设计 5 4.界面及运行效果,测试工具与测试效果14 5.设计总结 16 5.1.程序调试情况:16 5.2.本人在程序设计中感想: 16 6.致 16 主要参考文献16

: 1.1Java程序课程设计任务书 1.1《简易连连看游戏》 本程序基本实现了小游戏连连看的功能,玩家找出游戏中2个相同图案的方块,如果它们之间的连接线不多于3根直线,则将其连接起来,就可以成功将图案相同的方块消除,否则不会消失,当游戏中已没有满足条件的图案时,点击重列,可重新排序,游戏结束会跳出所得分数,该游戏的特点是与自己竞争,超过自己之前所创纪录。 1.1.1具体要求(包括技术要求等): <1>. 该游戏界面为方格类型,由纵6横7的直线平行垂直交叉组成,分别是6行5列方块拼接,共有30格小方块。方块上随机分布一些数字,数字的要至少两两相同,位置随机打乱。 <2>. 当将相同数字的方块连接,但要满足只能至少单边无阻碍呈直线趋势连接,否则无效,若连接一对成功就消失于界面,继续游戏,直到游戏结束,并能返回所得分数。 <3>. 重列按钮(帮助)的功能:游戏过程中,遇到困难难以寻找下一符合要求的一对数字,可按左下按钮重置重新排列方可继续游戏。 <4>. 退出按钮:击左下方的“退出游戏”按钮,即可结束游戏。 1.2本系统涉及的知识点: 循环,javaGUI组件,函数,数组,分支等 2.功能设计 2.1算法设计 本系统需要实现的功能要求: 图一,数字按钮功能模块 图二,三个功能按钮模块

基于MVC的个人博客系统设计与实现毕业设计

本科毕业设计(论文)题目:基于MVC的个人博客系统设计与实现

毕业设计(论文)原创性声明和使用授权说明 原创性声明 本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。 作者签名:日期: 指导教师签名:日期: 使用授权说明 本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。 作者签名:日期:

学位论文原创性声明 本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。 作者签名:日期:年月日 学位论文版权使用授权书 本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。 涉密论文按学校规定处理。 作者签名:日期:年月日 导师签名:日期:年月日

java课程设计实验报告

Java课程设计实验报告实验题目:打字游戏小程序 专业:计算机科学与技术系 班级:1202班 成员:

Java课程设计(打字游戏小程序) 一、课程设计目的 经过一学期的java学习,能灵活运用书中和实验中所学习的各类知识和技巧,并且能在程序开发中得以很好的运用和发挥。在以后的学习和工作中,可以从中获取很好的经验,并且锻炼自己开发程序和创新的意识。 二、课程设计内容 1.课程设计简介 设计的是一个打字的小游戏,屏幕上不断地有英文字母下落,键盘输入字母,屏幕上与输入的字母形同的就会消失,并计分,如果有没有消去的字母掉到屏幕底,将扣分。 2.设计说明 因为要进行键盘操作,所以引用了event包,还要注册事件监听。字母是随机产生的,又要用。注册了线程。还要对窗口定义坐标,防止字母出现在同一位子。并且通过一位数组来给随机出现的字母做坐标定义。主要通过一位数组来控制字母的坐标,并且通过字母坐标的改变来对整个游戏的流程进行控制。 3.设计流程图 4.实现功能 随机产生字母,运用了键盘操作当按对屏幕中出现的字母时,该字母全部消失,并且在分数上相应的增加或减少。 5.详细设计(源代码) 1) packageDownCharGame; import import import /** *下落的字母实体类 *@authorshenbf * */ publicclassCharEntity{ raw(g); } etY()>=480){ etX((int)()*580)+30); chs[i].setY(0);

chs[i].setColor(newColor((int)()*256), (int)()*256),(int)()*256))); chs[i].setCh((char)(65+(int)()*26))); } chs[i].down(); } repaint();tart(); } publicvoidkeyTyped(KeyEvente){ } publicvoidkeyPressed(KeyEvente){ } publicvoidkeyReleased(KeyEvente){ etCh()||key==chs[i].getCh()+32){ etY()

JAVA-课程设计报告

《JA V A程序设计》 课程设计报告 设计题目:学生信息管理系统学院名称:信息工程学院 专业班级:13计本1 姓名: 学号:

目录 一需求分析。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 二概要设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 三详细设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 3.1 数据库设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 3.2 模块及窗体设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 3.2.1 数据库模块设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。3 3.2.2 用户登录识别模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。5 3.2.3用户信息管理模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。6 (1)密码修改。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。6 (2)用户信息添加和删除。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。8 3.2.4 学生息管理模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。10 (1)添加信息。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。10 (2)信息查看。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。11 (3)信息修改。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。12 (4)删除信息。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。14 3.2.5 系统管理模块。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 3.2.6 主窗体菜单设计。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 四软件测试。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 五总结。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。15 参考资料:.......................................................17

Java课程设计报告书

华东交通大学理工学院课程设计报告书( 2010-- 2011年度第 2 学期) 所属课程名称 Java面向对象程序设计题目设计一个多功能计算器分院电信分院 专业班级 09信管<1>班 学号 20090210450106 蔡炜指导教师黄建华 2011年06月23日

华东交通大学理工学院 课程设计(论文)任务书专业09信管班级 <1>班姓名蔡炜 一、课程设计(论文)题目设计一个多功能计算器 二、课程设计(论文)工作:自 2011 年06 月 13日起至2011年 06 月 23日止。 三、课程设计(论文)的内容要求: 本应用程序继承自框架类(JFrame),此程序使用Frame布局管理器BorderLayout,将单行文本框加入到“North”区域,包含各种按钮的面板Panel p加入到”Center”区域。包含各种按钮的面板Panel p 采用4行5列的网格布局,然后将数字按钮和运算符按钮以及控制按钮添加到面板中。同时注册按钮事件监听器。如:Button b=new Button(); b.addActionListener(事件监听器); 事件监听器中的事件处理方法void actionPerformed(ActionEvent evt)完成主要的按钮事件的处理。事件处理分以下几种情况:数字按钮事件(”0”,”1”,”2”…”8”,”9”)、运算符按钮事件(”+”,”-“,”*”,”/”,”%”)、正负号按钮事件(”+/-“)、小数点按钮事件(”.”)、等号按钮事件(”=”)、求倒按钮事件(”1/x”)、清零按钮事件(“C”)。

在事件处理触发按钮事件时,要进一步分析,是重新开始计算时触发的按钮事件还是计算中间触发的按钮事件。 计算器完成的是一个数学表达式,如:3+2,所以可以采用一个链表(LinkedList类)来存储数字或字符,如3,+,2分别存储在链表中,最后运算时,可以一一取出来进行运算。 学生签名: ( ) 2011 年06 月 23 日 课程设计(论文)评阅意见 评阅人职称 20 年月日

个人博客系统项目毕业设计论文

个人博客系统项目毕业 设计论文 Standardization of sany group #QS8QHH-HHGX8Q8-GNHHJ8-HHMHGN#

本科毕业设计论文名称:个人博客系统考生姓名: 考生地市:滨州市 档案号: 联系地址:山东省滨州学院邮编:256600

个人博客系统 摘要 对个人而言,博客可以调动个人的积极性,充分发挥个人的创造性。近些年,国内博客开始迅猛发展起来,从最初的只有几千个使用者到现在的各式各样的博客,圈子。博客系统致力于为广大用户提供优质的互动交流平台,提高网站的知名度和访问量,从而获得为企业提供更多产品介绍及展示的机会,提升自己网站的价值。论文首先论述了系统的开发背景和设计目标,并对系统开发所采用的技术进行相应的简单介绍。在系统分析中,对系统的模型进行简单分析,明确系统的操作流程,并对系统进行可行性分析,确定在目前的条件下,开发博客信息管理系统是可行的。在需求分析结果的基础上,对系统的功能模块进行划分。接着对系统中的数据库进行模型设计,包括数据流图、实体联系图及数据表结构。在系统的设计与实现中,确定系统的开发思想以及开发环境,并对系统中的Java Bean和Servlet代码进行设计。最后给出了系统中模块的详细设计与实现,并对系统模块涉及到的关键源代码进行了详细的分析。经过调试运行后表明,系统可以满足用户创建个人博客的各项要求。 关键字:博客,MVC,知识共享,信息管理系统

目录 第一章系统概述 (1) 概述 (1) 系统的开发背景 (1) 个人博客的发展现状 (1) 课题研究的意义 (2) 系统的开发目标 (2) 第二章系统分析 (3) 系统需求分析 (3) 注册博友 (4) 普通用户 (5) 系统分析 (6) (7) 第三章开发环境的说明与安装 (8) 开发语言的选择 (8) JAVA简介 (8) Web应用程序开发环境—JSP技术 (8) 数据库的选择 (9) Web应用程序开发环境—SQLserver数据库 (9) 开发工具的选择 (10) 第四章系统设计 (11) 开发框架技术介绍 (11)

java课程设计实验报告

一实验目的 加深学生对课堂讲授内容的理解,从计算机语言的基本概念、程序设计的基本方法、语法规则等方面加深理解,打好程序设计、开发软件的良好基础。在上机实验中,提高学生对Java语言各部分内容的综合使用能力,逐步掌握Java语言程序设计的规律与技巧。在对Java 程序的调试过程中,提高学生分析程序中出现的错误和排除这些错误的能力。通过上机实践,加深学生对计算机软件运行环境,以及对操作系统与计算机语言支持系统相互关系的了解。 二、实验要求 (1)问题描述准确、规范; (2)程序结构合理,调试数据准确、有代表性; (3)界面布局整齐,人机交互方便; (4)输出结果正确; (5)正确撰写实验报告。 三、设计内容 1、计算器 计算器要有GUI界面,用户可以输入所需计算的数值,可以进行加、减、乘、除四种最基本的运算和混合运算,可以求一个数值的平方及倒数,可以进行阶乘运算,要能运算小数,并且不会产生精度损失,在必要情况下,可以进行四舍五入的运算。允许正负数间的运算。要求使用Applet实现该计算器,当用浏览器运行程序时,点击网页中的按钮,则计算器弹出,浮在网页上,再次点击按钮时,计算器消失。 2、文本编辑器 可以设置文本的字体、大小、颜色等基本参数,可以读取计算机中TXT文件,可以生成一个新的TXT文件。其他功能参照windows的文本编辑器。

四.实验步骤 (1)上机实验之前,为课程设计的内容作好充分准备。对每次上机需要完成的任务进行认真的分析,画出程序流程图,手工写出符合任务要求的程序清单,准备出调试程序使用的数据,以便提高上机实验的效率。 (2)按照实验目的和实验内容进行上机操作。录入程序,编译调试,反复修改,直到使程序正常运行,得出正确的输出结果为止。 (3)根据实验结果,写出实验报告。 五. 源代码及运行结果 1.计算器源代码 import .*; import .*; import .*; public class jisuanqi extends WindowAdapter { , "=", "+","n!" ,"关闭" }; static double a, sum=1; static String s, str ;rame(); } public void frame() { etBackground; txt = new TextField(""); (false);ddActionListener(new buttonlistener());ddActionListener(new close()); (this); (new BorderLayout());.计算器运行界面(1)计算器主界面

JAVA课程设计报告

计算机科学技术与工程系 《Java课程设计》 课 程 设 计 报 告 题目:简易媒体播放器 班级:0633081 姓名:063308123郭伟 063308164张志朋 063308125靳浩兵063308168周小晨指导教师:陈红军、赵军民 设计日期:2010.01.11-15 专业:计算机网络技术

目录 1 、引言................................ 错误!未定义书签。 2 、设计依据 ........................... 3错误!未定义书签。 2.1设计平台 ..............................................................错误!未定义书签。 2.2设计思想 ..............................................................错误!未定义书签。 3、主要框架图、......................... 错误!未定义书签。 4、详细设计 (4) 5 、软件调试分析......................... 错误!未定义书签。 6 、源程序代码.......................... 6错误!未定义书签。 7、执行结果 (15) 8、学习心得 ........................... 15错误!未定义书签。 9、参考文献 ........................... 16错误!未定义书签。

1、引言: 旨在考察在经过一个学期的学习,对JA V A知识的理解与应用。同时把所学的理论知识用于实战编程,进而培养同学们的动手能力和团结协作的团队意识。综合应用java语言的相关知识,独立设计中型的Java应用程序。通过本课程设计,使学生巩固《JA V A课程设计》课程学习的内容,掌握工程软件设计的基本方法,强化上机动手能力,闯过编程关。 2、设计依据: 1、设计平台 Eclipse是开发源码项目,由于其开放源码,任何人都可以免费使用,并可以在此基础上开发各自的插件,eclipse不只作为一个JA V A IDE的开发平台,而且是作为一个平台框架,各种各样的插件都可以安装在它上面,从而形成各种各样的工具,它有开源软件,使用插件功能,可以完成比较复杂的开发等优点。此Java程序设计就是在Eclipse环境平台下开发的。 Java API文档: Java API文档包含了Java的大部分类,方面查询不熟悉的类,所以它是一款不错的帮助文档! 2、设计思想 根据一学期对JA V A知识的学习,在Eclipse平台下,导入JMF包通过不断查询API 文档,编写媒体播放器在现有类的基础上组织一个新类。有时,我们也将组织称作“包含”关系。播放器主要针对面向对象,并且实现序列化接口,多线程等知识。 对象的组织具有极大的灵活性。新类的“成员对象”通常设为“私有”(Private),使用这个类的客户程序员不能访问它们。这样一来,我们可在不干扰客户代码的前提下,从容地修改那些成员。也可以在“运行期”更改成员,这进一步增大了灵活性。后面要讲到的“继承”并不具备这种灵活性,因为编译器必须对通过继承创建的类加以限制。 由于继承的重要性,所以在面向对象的程序设计中,它经常被重点强调。作为新加入这一领域的程序员,或许早已先入为主地认为“继承应当随处可见”。沿这种思路产生的设计将是非常笨拙的,会大大增加程序的复杂程度。相反,新建类的时候,首先应考虑“组织”对象;这样做显得更加简单和灵活。利用对象的组织,我们的设计可保持清爽。一旦需要用到继承,就会明显意识到这一点。 3、程序主要框架图

相关文档