Java项目开发实例图书信息管理系统开发文档及源码.docx
- 文档编号:10564405
- 上传时间:2023-02-21
- 格式:DOCX
- 页数:147
- 大小:626.70KB
Java项目开发实例图书信息管理系统开发文档及源码.docx
《Java项目开发实例图书信息管理系统开发文档及源码.docx》由会员分享,可在线阅读,更多相关《Java项目开发实例图书信息管理系统开发文档及源码.docx(147页珍藏版)》请在冰豆网上搜索。
Java项目开发实例图书信息管理系统开发文档及源码
图书信息管理系统
一、系统功能概述:
根据图书信息管理系统的特点,可以将本系统分为2大功能模块,分别为:
基础数据维护、系统数据维护。
本系统各个部分及其包括的具体功能模块如下图所示:
二、数据库设计:
图书信息表:
字段名
说明
类型
长度及备注
ISBN
国际标准书号
Varchar(13)
主键
typeId
图书类型id
Int
Bookname
书名
Varchar(40)
Writer
作者
Varchar(21)
Translater
译者
Varchar(30)
可以为空
Publisher
出版社
Varchar(50)
Date
出版日期
Smalldatetime
Price
价格
money
图书类别表:
字段名
说明
类型
长度及备注
TypeName
图书类型
Varchar(20)
Id
自动编号
Int
主键
用户信息表:
字段名
说明
类型
长度及备注
Id
自动编号
Int
主键
Name
姓名
Varchar
(2)
Sex
性别
Varchar
(2)
Age
年龄
int
Identitycard
证件号码
Varchar
(2)
Workdate
办证日期
datetime
Tel
电话号码
Varchar
(2)
Yajin
押金
Int
Password
密码
Nvarchar(10)
admin
管理员
Nchar(10)
读者信息表:
字段名
说明
类型
长度及备注
Name
姓名
Varchar(10)
Sex
性别
Varchar
(2)
Age
年龄
int
identityCard
证件号码
Varchar(30)
Date
日期
Smalldatetime
manNum
最大书量
Int
Tel
电话号码
Varchar(15)
keepMoney
押金
Miney
Zj
证件类型
Int
Zy
职业
Varchar(50)
ISBN
国际标准书号
Varchar(13)
bztime
办证时间
datetime
三、系统源代码:
Com.zhang.dao:
Dao.java//数据库的连接与操作类
packagecom.zhang.dao;
importjava.sql.Connection;
importjava.sql.Date;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.util.ArrayList;
importjava.util.List;
importcom.zhang.model.BookInfo;
importcom.zhang.model.BookType;
importcom.zhang.model.Operator;
importcom.zhang.model.Reader;
importcom.zhang.model.User;
publicclassDao{
protectedstaticStringdbClassName="com.microsoft.sqlserver.jdbc.SQLServerDriver";
protectedstaticStringdbUrl="jdbc:
sqlserver:
//localhost:
1433;"
+"DatabaseName=db_lib;SelectMethod=Cursor";
protectedstaticStringdbUser="sa";
protectedstaticStringdbPwd="zhangyong";
protectedstaticStringsecond=null;
privatestaticConnectionconn=null;
//创建数据库连接
privateDao(){
try{
if(conn==null){
Class.forName(dbClassName).newInstance();
conn=DriverManager.getConnection(dbUrl,dbUser,dbPwd);
System.out.println("数据库连接成功!
");
}
else
return;
}catch(Exceptionee){
ee.printStackTrace();
}
}
//执行查询
privatestaticResultSetexecuteQuery(Stringsql){
try{
if(conn==null)
newDao();
returnconn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE).executeQuery(sql);
}catch(SQLExceptione){
e.printStackTrace();
returnnull;
}finally{
}
}
//执行更新
privatestaticintexecuteUpdate(Stringsql){
try{
if(conn==null)
newDao();
returnconn.createStatement().executeUpdate(sql);
}catch(SQLExceptione){
System.out.println(e.getMessage());
//if(e.getMessage().equals("[Microsoft][SQLServer2000DriverforJDBC][SQLServer]DELETE语句与COLUMNREFERENCE约束'FK_TB_BORRO_REFERENCE_TB_BOOKI'冲突。
该冲突发生于数据库'db_library',表'tb_borrow',column'bookISBN'。
"))
return-1;
}finally{
}
}
//关闭数据库
publicstaticvoidclose(){
try{
conn.close();
}catch(SQLExceptione){
e.printStackTrace();
}finally{
conn=null;
}
}
/*
*管理员登录方法
*/
publicstaticOperatorcheck(Stringname,Stringpassword){
inti=0;
Operatoroperater=newOperator();
Stringsql="select*fromtb_operatorwherename='"+name
+"'andpassword='"+password+"'andadmin=1";
ResultSetrs=Dao.executeQuery(sql);
try{
while(rs.next()){
Stringnames=rs.getString
(1);
operater.setId(rs.getString("id"));
operater.setName(rs.getString("name"));
operater.setGrade(rs.getString("admin"));
operater.setPassword(rs.getString("password"));
if(names!
=null){
i=1;
}
}
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returnoperater;
}
/*
*查询类别方法
*/
//查询图书目录
publicstaticListselectBookCategory(){
Listlist=newArrayList();
Stringsql="select*fromtb_bookType";
ResultSetrs=Dao.executeQuery(sql);
try{
while(rs.next()){
BookTypebookType=newBookType();
bookType.setId(rs.getString("id"));
bookType.setTypeName(rs.getString("typeName"));
list.add(bookType);
}
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returnlist;
}
publicstaticListselectBookCategory(StringbookType){
Listlist=newArrayList();
Stringsql="selectdaysfromtb_bookTypewheretypeName='"+bookType+"'";
ResultSetrs=Dao.executeQuery(sql);
try{
while(rs.next()){
BookTypetype=newBookType();
type.setDays(rs.getString("days"));
list.add(type);
}
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returnlist;
}
/*
*图书类别表相关操作
*
*/
//插入图书类型
publicstaticintInsertBookType(StringbookTypeName){
inti=0;
try{
Stringsql="insertintotb_bookType(typeName)values('"+bookTypeName+"')";
i=Dao.executeUpdate(sql);
}catch(Exceptione){
e.printStackTrace();
}
returni;
}
//更新图书类别
publicstaticintUpdatebookType(Stringid,StringtypeName){
inti=0;
try{
Stringsql="updatetb_bookTypesettypeName='"+typeName+"'whereid='"+id+"'";
//System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returni;
}
//删除图书类别
publicstaticintDelbookType(Stringid){
inti=0;
try{
Stringsql="deletefromtb_bookTypewhereid='"+id+"'";
//System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returni;
}
/*
*图书信息表相关操作
*/
/*
*插入图书信息方法
*/
//插入图书信息
publicstaticintInsertbook(StringISBN,StringtypeId,Stringbookname,Stringwriter,Stringtranslator,Stringpublisher,Datedate,Doubleprice){
inti=0;
try{
Stringsql="insertintotb_bookInfo(ISBN,typeId,bookname,writer,translator,publisher,date,price)values('"+ISBN+"','"+typeId+"','"+bookname+"','"+writer+"','"+translator+"','"+publisher+"','"+date+"',"+price+")";
//System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exceptione){
System.out.println(e.getMessage());
}
Dao.close();
returni;
}
/*
*查询图书相关信息
*
*/
publicstaticListselectBookInfo(){
Listlist=newArrayList();
Stringsql="select*fromtb_bookInfo";
ResultSetrs=Dao.executeQuery(sql);
try{
while(rs.next()){
BookInfobookinfo=newBookInfo();
bookinfo.setISBN(rs.getString("ISBN"));
bookinfo.setTypeid(rs.getString("typeid"));
bookinfo.setBookname(rs.getString("bookname"));
bookinfo.setWriter(rs.getString("writer"));
bookinfo.setTranslator(rs.getString("translator"));
bookinfo.setPublisher(rs.getString("publisher"));
bookinfo.setDate(rs.getDate("date"));
bookinfo.setPrice(rs.getDouble("price"));
list.add(bookinfo);
}
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returnlist;
}
publicstaticListselectBookInfo(StringISBN){
Listlist=newArrayList();
Stringsql="select*fromtb_bookInfowhereISBN='"+ISBN+"'";
ResultSetrs=Dao.executeQuery(sql);
try{
while(rs.next()){
BookInfobookinfo=newBookInfo();
bookinfo.setISBN(rs.getString("ISBN"));
bookinfo.setTypeid(rs.getString("typeid"));
bookinfo.setBookname(rs.getString("bookname"));
bookinfo.setWriter(rs.getString("writer"));
bookinfo.setTranslator(rs.getString("translator"));
bookinfo.setPublisher(rs.getString("publisher"));
bookinfo.setDate(rs.getDate("date"));
bookinfo.setPrice(rs.getDouble("price"));
list.add(bookinfo);
}
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returnlist;
}
/*
*修改图书信息方法
*/
//更新图书信息
publicstaticintUpdatebook(StringISBN,StringtypeId,Stringbookname,Stringwriter,Stringtranslator,Stringpublisher,Datedate,Doubleprice){
inti=0;
try{
Stringsql="updatetb_bookInfosetISBN='"+ISBN+"',typeId='"+typeId+"',bookname='"+bookname+"',writer='"+writer+"',translator='"+translator+"',publisher='"+publisher+"',date='"+date+"',price="+price+"whereISBN='"+ISBN+"'";
//System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returni;
}
///*
//*删除图书信息方法
//*/
publicstaticintDelbook(StringISBN){
inti=0;
try{
Stringsql="deletefromtb_bookInfowhereISBN='"+ISBN+"'";
//System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returni;
}
/*
*对读者信息表执行的相关操作
*/
//增加读者信息
publicstaticintInsertReader(Stringname,Stringsex,Stringage,StringidentityCard,Datedate,StringmaxNum,Stringtel,DoublekeepMoney,Stringzj,Stringzy,Datebztime,StringISBN){
inti=0;
try{
Stringsql="insertintotb_reader(name,sex,age,identityCard,date,maxNum,tel,keepMoney,zj,zy,bztime,ISBN)values('"+name+"','"+sex+"','"+age+"','"+identityCard+"','"+date+"','"+maxNum+"','"+tel+"',"+keepMoney+",'"+zj+"','"+zy+"','"+bztime+"','"+ISBN+"')";
System.out.println(sql);
i=Dao.executeUpdate(sql);
}catch(Exceptione){
e.printStackTrace();
}
Dao.close();
returni;
}
publicstaticListselectReader(){
Listlist=newArrayList();
Stringsql="select*fromtb_reader";
ResultSetrs=Dao.executeQuery(sql);
try{
while(rs.next()){
Readerreader=newReader();
//reader.setId(rs.getString("id"));
reader.setName(rs.getString("name"));
reader.setSex(rs.getString("sex"));
reader.setAge(rs.getString("age"));
reader.setIdentityCard(rs.getString("identityCard"));
reader.setDate(rs.getDate("date"));
reader.setMaxNum(rs.getString("maxNum"));
reader.setTel(rs.getString("tel"));
reader.setKeep
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 项目 开发 实例 图书 信息管理 系统 文档 源码