admin 管理员组

文章数量: 1184232


2024年3月7日发(作者:access数据库程序化)

基于JSP的公共图书管理系统的设计与实现 文罩编号:1003—5850(2011)03—0056—03 基于JSP的公共图书管理系统的设计与实现 Design and Implementation of Public Library Management based on JSP 黄效文郑明春 (山东师范大学管理与经济学院 济南 250014) 【摘 要】使用JSP技术设计开发公共图书系统,可以使图书馆工作变得更加便利高效,资源共享更容易实现。 系统主要采用B/S结构和JSP+JavaBean+SQL Server技术作为网站开发工具。首先进行了系统分析,划分了 系统的主要功能,然后给出了系统设计的关键技术和系统的数据库设计,最后给出了系统的部分实现代码和测 试内容。 【关键词】公共图书馆管理,JSP,B/S,JavaBean 中图分类号:TP393 文献标识码:A ABSTRACT To design and develop Public library management system with JSP technology,SO that the library will become more convenient and efficient,share resources more easily realized.The system uses the B/S structure and JSP+JavaBean+SQL Server technology as development tool,the system analysis and the main function are given,then the essential technologies and database design is proposed,Finally,some implementing process and test results is provided. KEYWORDS public library management,JSP,B/S,JavaBean 为了提高查询质量和效率,最大限度地节约用户 能提供给当前用户修改本人密码的权限。 ②借还管理:借还管理模块的主要功能是管理员 对图书的借阅、图书的归还、图书超期归还的罚款管 的时问,利用B/S结构进行计算机管理已经成为一种 趋势,而使用B/S结构的图书管理系统,便于用户在 互联网上查询图书信息,突破了c/s结构的互联网范 理。借阅和归还时只需提供借阅证号和密码即可借阅 和归还。 围的查询。因此,开发一套能够为用户提供充足信息和 快捷查询手段的图书信息管理系统,将是非常必要而 又十分及时的。而基于JSP的公共图书管理系统正是 顺应这种需要设计和开发的。 ③图书管理:图书管理模块的主要功能是图书的 查询、修改图书信息、图书上架。其中图书的查询包括 基本查询和详细查询,详细查询中可按多个字段进行 查询,显示结果可按某个关键字进行升序或降序排列, 每页显示的结果也可控制;修改图书信息包括对图书 的图书编号、图书原名、图书中文名称、文献类型、 ISBN号、索书号、所属种类、数量、出版社、作者、译者 1系统功能分析 在该项目的实施过程中,通过对网站进行全面的 考查和调研,对其日常业务的具体流程进行详细了解。 可以得出公共图书管理系统分为三大模块:用户管理模 块、借还管理模块、图书管理模块。这3个模块之间相互 联系,构成一个统一的整体。其系统功能图(见图1)。 公共图书管理系统 等进行修改,如果该书已被社会淘汰,则可以删除该 书;图书上架是将图书按类别上架,图书编号不能重 复,如果输入的图书编号重复则系统会提示“该编号已 经存在,请重新输入”。 用户I 管理l f借还l i管理l f图书 l管理 2关键技术分析 本系统利用JSP语言结合sQL Server数据库,在 委碧}i l簧警{l li篓碧{ { 曩I l詈耆l if霎翥l{ i垂藿l l 图1系统功能图 Dreamweaver MX环境下,利用JDK1.6.o+ Tomcat5.0.28+Eclipse+Sysdeo Tomcat(Tomcat插 件)等进行数据库的连接,构造一个公共图书管理系 统。旨在利用传统的方式与现代的信息技术相结合、人 和机器相协调完成各种任务,为用户提供更加优质的 服务,为管理员提供更加高效的工作效率。 2.1 JSP技术 ①用户管理:用户管理模块的主要功能是管理员 对用户信息的管理,包括用户的添加、修改、删除。同时 每个用户可以自己修改自己的密码。用户密码修改功 * 2010—11—25收到,2011—01—22改回 JSP是一种动态网页技术,其实质是通过在传统 ** 黄效文,男,1983年生,硕士研究生,研究方向:网络信息安全、Overlay网络。 

第24卷第3期 电脑开发与应用 的HTML网页文件中加入Java程序片断和一些JSP 标记,即可构成一个常规的JSP网页(其扩展名为 .和Java语言一样,是独立于平台和数据库的。它为数 据库应用开发人员和数据库前台工具开发人员提供了 一jsp)L1]。web服务器在遇到JSP网页的请求时,首先 种标准的应用程序设计接口,使开发人员可以用纯 JDBC在继承ODBC接口与具体数据库无关的设 执行其中的Java程序片断,通过这些Java程序片断 可以操作数据库、发送E—Mail、传送数据信息以及重 定向网页等等。然后服务器将执行完这些Java程序片 端后所产生的结果信息封装到原HTML网页中,以 HTML的格式返回给用户。这样用户就可以通过浏览 Java语言编写完整的数据库应用程序。 计理念的基础上,进一步利用了Java语言的平台无关 性,可以轻松利用JDBC的API对数据库进行操作, 从而编写出真正不依赖于具体数据库、具体操作平台 的代码。同时JDBC的API就是Java基础类库中的 java.sql包,任何一个需要访问数据库的Java应用程序 都需要导人这个包。利用JDBC,可以使用简单直接的 器得到所需的结果信息。JSP与客户端交互的工作原 理图(见图2): 方法完成简单的数据库任务,如基本查询,生成和修改。 2.3 B/S结构 图2 jsp与客户端交互的工作原理图 2.1.1 JsP B/S(浏览器/服务器)结构是一种以Web技术为 基础的新型系统平台模式。B/S结构是对c/s结构的 种变化或者改进的结构[5]。在这种结构下,用户工作 一jspE 是Java Server Pages的简称。是服务器端 的一种基于Java语言的网页技术。JSP发布于1999 年6月,是由Sun Microsystems公司倡导,多家公司 合作建立的一种功能强大的动态网页技术标准,用于 创建可支持跨平台及跨Web服务器的动态网页。 2.1.2 Servlet 界面是通过Web浏览器来实现,极少部分事务逻辑在 前端(Browser)实现,但是主要事务逻辑在服务器端 (Server)实现,形成所谓三层结构。第一层为浏览器, 第二层为Web服务器,第三层为数据库服务器。事实 证明,B/S体系结构已经成为软件开发的首选体系结 构,特别是在JAVA这样的跨平台语言出现之后,采 用B/S结构管理软件更是方便、快捷、高效。 Servlet是运行在JSP服务器端,用来生成Web 页面的一种Java程序。JSP技术的核心是Servlet L3]。 Servlet是在服务器端执行的JAVA程序,它支持 HTTP协议并处理请求和回应服务器加载Servlet 后,对于一个请求会有一个Servlet线程处理。JSP引 擎通常架构在Servlet引擎之上,其本身就是一个 Servlet,作用是把JSP文件转译成Servlet源代码,再 调用JAVA编译器,编译成Servlet。当Web服务器支 3数据库设计 一个成功的信息管理系统,是建立在许多条件之上 的,而数据库是其中一个非常重要的条件和关键技术。 根据E—R图即可进行数据库的逻辑设计。数据库 的逻辑设计即把得到的满足第三范式的关系转化为特 持JSP引擎时,JSP引擎就会依照JSP的语法,将JSP 文件转换成Servlet源代码文件,接着Servlet会被编 译成JAVA的可执行字节码,再由JVM(JAVA Virtual Machine)解释执行;对于以后的请求,由于 JAVA字节码已经存在,就直接响应请求。 2.1.3 JavaBean 定的数据库管理系统下的数据表,以设计效率高、冗余 度低的数据结构为原则,主要设计了5张表。 @admin:管理员信息表。包含的主要字段有:用 户名、密码。 ②user:用户信息表。包含的主要字段有:借阅证 号、密码、姓名、性别、联系方式、允许册数、登记时间。 ③bookmessage:图书信息表。包含的主要字段 有:图书编号、图书原名、图书中文名称、文献类型、 ISBN号、索书号、所属种类、数量、剩余数量、出版社、 作者、译者。 borrow:图书借阅表。包含的主要字段有:用户 JavaBean是描述Java的软件组件模型,有点类似 于Microsoft的COM组件概念,是一个可以复用的软 件模型[4]。在Java模型中,通过JavaBean可以无限扩 充Java程序的功能,通过JavaBean的组合可以快速 生成新的应用程序。对于程序员来说,最好的一点就是 JavaBean可以实现代码的重复利用,另外对于程序的 易维护性等等也有很重大的意义。 2.2 JDBC技术 名、图书编号、图书名称、借书时间、还书时间、续借。 @punishment:罚款信息表。包含的主要字段有: 借阅证号、图书编号、超期天数、缴纳金额、归还日期。 本系统采用JDBC数据引擎,JDBC(Java Database Connectivity,Java数据库连接)是一种可用 于执行SQI 语句的Java API,是JDK2.0的一部分, 4系统实现与测试 系统采用DB ConnectionManager的Java类管理 

・58・ (总226) 基于JsP的公共图书管理系统的设计与实现 if(xuejie一=0、 2011焦 连接池对象,其中每一个连接池保持一组JDBC数据 库连接对象,可以为任何Servlet所使用。连接池具有 以下功能:装载和注册JDBC驱动程序;根据在属性文 件中定义的属性创建连接池对象;实现连接池名字与 其实例之间的映射;跟踪客户程序对连接池的引用,保 证在最后一个客户程序结束后安全关闭所有连接池_6]。 4.1 图书信息表的主要操作实现 {sqlstr= update jieyue set归还时间=” +str+ ,续借 一1 where图书编号一” +num+ and用户名= -"1-name+ ;//定义SQL语句 if(stmt.executeUpdate(sqlstr)一=1) {out.print( 续借成功1”);//页面打印”续借成功! %> <input type一”button”value一”返 name “ ①图书查询部分代码如下: <%request.setCharacterEncoding(”GBK ); //设置页面显示字符格式为GBK String sqlstr; if(request.getParameter(”strSearchType ).equals( checkl )) sqlstr一 select*from hookmessage where图书中文名 称like”+str7+”and文献类型like +str2+ ; else if(request.getParameter(”strSearchType”).equals(” check2")) sqlstr一”select*from bookmessage where作者like + str7+”and文献类型like +str2+ ; else if(request.getParameter( strSearchType”).equals( check3”)) sqlstr一 select*from bookmessage where索引号like +str7+ and文献类型like +str2+””; else if(request.getParameter( strSearchType ).equals(” check4 )) sqlstr= select*from bookmessage where出版社like” +str7+”and文献类型like”+str2+””; else sqlstr= select*from bookmessage where ISBN号like 十str7十 and文献类型like”+str2+ } //进行模糊查询 > ②图书续借部分代码如下: <%try{ Class.forName( sun.jdbe.odbc.JdbcOdbcDriver ); //数据库连接的驱动 }catch(ClassNotFoundException se){ out.print(se.getMessage()); //数据库连接异常的捕获,并输出.) try{ corm—DriverManager.getConnection( jdbc:odbc: denglu”);//通过数据源连接数据库 stmt—conn.createStatement() String sqlstr=”select*from jieyue where图书编号一 +num+”’and用户名一”+name+” ; //定义数据库操作的SQL语句 rs—sturt.executeQuery(sqlstr);//取出结果集 rs.next();//结果集的游标下指一行 String date=rs.getString(”归还时间”); int xuejie—rs.getlnt(”续借”);//从结果集中取出变量 delmess”onclick=”history.go(一1);”> //返回到上一页面即刚刚操作过的页面 <%) else {out.print( 失败 ); > <input type一“button“name一 Reset value ” 返回 onclick一”history.go(一1)”> //返回到上一页面即刚刚操作过的页面 <%)) else{ out.print( 已经续借了一次,不能再次续借”);%> 4.2测试 ①页面能否基于相关的输入或输出命令适当打 开?页面与页面之间的链接有无错误? ②有关的下拉菜单、对话框、按钮、图标和其他控 制窗口使用是否正常? ⑧显示的页面程序是否正常运行,读数据库时是 否有出错? ④业务流程是否合理,是否适合用户的操作? 5结束语 利用JSP这一服务器端的编程技术结合连接池 访问并操作后台数据库,本系统可以进行图书的出借 和归还;而且在该系统中实现了按照多个字段对图书 进行查找;还可以浏览某个主题层次结构中的所有图 书。简化了用户端的操作要求,基本实现了系统的设计 要求。 参考文献 [1] 何雄.JSP网络程序设计[M].北京:人民邮电出版 社,2000. rz-1 蒋文蓉.JSP程序设计EM].北京:高等教育出版社, 2005. E3] 陈海山.深入JAVA Servlet网络编程[M].北京:清 华大学出版社,2002. E4] 王夕宁,王晓平.JSp通用模块及典型系统开发实例 导航EM].北京:人民邮电出版社,2006. [5] 龚玲编.计算机网络与web技术EM].北京:机械 工业出版社,2005. [6] 史志国.基于JSP的教务管理系统设计[j].长春工业 大学学报(自然科学版),2008,29(3):306-310. 


本文标签: 图书 数据库 用户 系统