基于JSP与MySQL的图书管理系统设计
使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。
Hibernate 中提供了两级Cache,第一级别的缓存是Session级别的缓存,它是属于事务范围的缓存。这一级别的缓存由hibernate管理的,一般情况下无需进行干预;第二级别的缓存是SessionFactory级别的缓存,它是属于进程范围或群集范围的缓存。这一级别的缓存可以进行配置和更改,并且可以动态加载和卸载。 Hibernate还为查询结果提供了一个查询缓存,它依赖于第二级缓存。
Hibernate对象关系映射提供延迟的与非延迟的对象初始化。非延迟加载在读取一个对象的时候会将与这个对象所有相关的其他对象一起读取出来。这有时会导致成百的(如果不是成千的话)select语句在读取对象的时候执行。这个问题有时出现在使用双向关系的时候,经常会导致整个数据库都在初始化的阶段被读出来了。当然,你可以不厌其烦地检查每一个对象与其他对象的关系,并把那些最昂贵的删除,但是到最后,我们可能会因此失去了本想在ORM工具中获得的便利。
一个明显的解决方法是使用Hibernate提供的延迟加载机制。这种初始化策略只在一个对象调用它的一对多或多对多关系时才将关系对象读取出来。这个过程对开发者来说是透明的,而且只进行了很少的数据库操作请求,因此会得到比较明显的性能提升。这项技术的一个缺陷是延迟加载技术要求一个Hibernate会话要在对象使用的时候一直开着。这会成为通过使用DAO模式将持久层抽象出来时的一个主要问题。为了将持久化机制完全地抽象出来,所有的数据库逻辑,包括打开或关闭会话,都不能在应用层出现。最常见的是,一些实现了简单接口的DAO实现类将数据库逻辑完全封装起来了。一种快速但是笨拙的解决方法是放弃DAO模式,将数据库连接逻辑加到应用层中来。这可能对一些小的应用程序有效,但是在大的系统中,这是一个严重的设计缺陷,妨碍了系统的可扩展性。
2.3 MySQL简介
2.3.1 MYSQL概述
MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQLAB公司,在2008年1月16号被Sun公司收购。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
MySQL最初的开发者的意图是用mSQL和他们自己的快速低级例程(ISAM)去连接表格。不管怎样,在经过一些测试后,开发者得出结论:mSQL并没有他们需要的那么快和灵活。这导致了一个使用几乎和mSQL一样的API接口的用于他们的数据库的新的SQL接口的产生,这样,这个API被设计成允许为用于mSQL而写的第三方代码更容易移植到MySQL。
- 9 -
毕业设计(论文)
2.3.2 MySQL特性
1.使用C和C++编写,并使用了多种编译器进行测试,保证源代码的可移植性 2.支持AIX、FreeBSD、HP-UX、Linux、Mac OS、Novell Netware、OpenBSD、OS/2 Wrap、Solaris、Windows等多种操作系统
3.为多种编程语言提供了API。这些编程语言包括C、C++、Eiffel、Java、Perl、PHP、Python、Ruby和Tcl等。
4.支持多线程,充分利用CPU资源
5.优化的SQL查询算法,有效地提高查询速度
6.既能够作为一个单独的应用程序应用在客户端服务器网络环境中,也能够作为一个库而嵌入到其他的软件中提供多语言支持,常见的编码如中文的GB 2312、BIG5,日文的Shift_JIS等都可以用作数据表名和数据列名
7.提供TCP/IP、ODBC和JDBC等多种数据库连接途径 8.提供用于管理、检查、优化数据库操作的管理工具 9.可以处理拥有上千万条记录的大型数据库
2.4 B/S简介
B/S结构(Browser/Server结构)结构即浏览器和服务器结构。它是随着Internet技术的兴起,对C/S结构的一种变化或者改进的结构。在这种结构下,用户工作界面是通过WWW浏览器来实现,极少部分事务逻辑在前端(Browser)实现,但是主要事务逻辑在服务器端(Server)实现,形成所谓三层3-tier结构。这样就大大简化了客户端电脑载荷,减轻了系统维护与升级的成本和工作量,降低了用户的总体成本(TCO)。以目前的技术看,局域网建立B/S结构的网络应用,并通过Internet/Intranet模式下数据库应用,相对易于把握、成本也是较低的。它是一次性到位的开发,能实现不同的人员,从不同的地点,以不同的接入方式(比如LAN, WAN, Internet/Intranet等)访问和操作共同的数据库;它能有效地保护数据平台和管理访问权限,服务器数据库也很安全 。B/S架构管理软件更是方便、快捷、高效。B/S结构最大的优点就是可以在任何地方进行操作而不用安装任何专门的软件。只要有一台能上网的电脑就能使用,客户端零维护。系统的扩展非常容易,只要能上网,再由系统管理员分配一个用户名和密码,就可以使用了。甚至可以在线申请,通过公司内部的安全认证(如CA证书)后,不需要人的参与,系统可以自动分配给用户一个账号进入系统。
2.5 TOMCAT简介
- 10 -
基于JSP与MySQL的图书管理系统设计
Tomcat是一个免费的开源的Serlvet容器,它是Apache基金会的Jakarta项目中的一个核心项目,由Apache,Sun和其它一些公司及个人共同开发而成。由于有了Sun的参与和支持,最新的Servlet和Jsp规范总能在Tomcat中得到体现。由于Java的跨平台特性,基于Java的Tomcat也具有跨平台性。
本系统采用tomcat作为服务器,在tomcat6.0环境下对系统进行测试。
2.6 本章小结
本章主要对本系统所使用语言、数据库及涉及到的技术做以简单讲解。旨在
使用户更好的理解本系统和更快熟悉本系统。通过了解JSP语言的优点、Struts技术在网络信息系统中的应用以及Hibernate提高编程效率方面的应用来理解本系统的优势。
- 11 -
毕业设计(论文)
3 图书管理系统分析与总体设计
3.1系统需求简介
通过计算机对图书进行管理,不仅为图书馆的管理注入了新的生机,而且在运营过程中节省了大量的人力、物力、财力和时间,可以提高图书馆的效率,还为图书馆在读者群中树立了一个全新的形象,为图书馆日后发展奠定了一个良好的基础。通过对一些大型图书馆的实际考察、分析、并结合图书馆的要求以及实际的市场调查,要求本系统具有以下功能:
网站设计页面要求美观大方、个性化、功能全面,操作简单。 要求实现基础信息的管理平台。 要求对所有读者进行管理。
要求实现图书借阅排行、了解当前畅销书。 商品分类详尽,可按不同类别查看图书信息。
提供快速的图书信息、图书借阅检索功能功能,保证数据查询的灵活性。 实现图书借阅、图书续借、图书归还的功能。
实现综合条件查询,如按用户指定条件查询、按日期时间段查询、综合条件查询等。
要求图书借阅、续借、归还时记下每一笔记录的操作员。 实现对图书借阅、续借、归还过程中的全程数据信息跟踪。
提供借阅到期提醒功能,使管理员可以及时了解到已经到达归还日期的图书借阅信息。
提供灵活、方便的权限设置功能,使整个系统的管理分工明确。 具有易操作性和易维护性。
3.2 系统功能结构
根据学校图书馆管理系统的特点,可以将其分为系统设置、读者管理、图书档案管理、图书归还、系统查询等5个部分,其中各个部分的功能模块如图所示:
- 12 -
基于JSP与MySQL的图书管理系统设计
系统结构图
3.2.1 系统流程图
系统流程图
硬件平台:
CPU:Pentium 4 1.8GHZ 内存:512MB及以上 软件平台:
- 13 -
3.2.2 系统平台选择
相关推荐: