图书管理系统的功能(方法的目录)
1、进入到图书管理的这个模块。
/**
* 图书管理
* @param loginR
*/
private static void bookManager(Reader loginR)
{
int flag =
0;
do {
System.out.println("1、修改
2、删除 3、添加 4、查看 5、查看所有图书");
int type = sc.nextInt();
if(type==5)
{
queryAllBook();
}else if(type==4)
{
System.out.println("输入一个要修改的图书的编号");
int bid = sc.nextInt();
queryBookId(bid);
}else if(type==3)
{
addBook();
}else if(type==1)
{
updateBook();
}else if(type==2)
{
System.out.println("请输入你删除的图书编号");
int bid = sc.nextInt();
String sql = "delete
from book_tb where b_id = "+bid;
jt.updateData(sql);
jt.closeRes();
System.out.println("删除成功!");
}
System.out.println("是否退出图书管理?0/1");
flag =sc.nextInt();
}while(flag==0);
}
2、添加图书。
/**
* 添加图书
*/
private static void
addBook() {
System.out.println("请输入图书的信息,名称,作者,库存");
String name = sc.next();
String author = sc.next();
int number = sc.nextInt();
String sql = "insert
into book_tb (b_name,b_author,b_number) values(?,?,?)";
List params = new ArrayList();
params.add(name);
params.add(author);
params.add(number);
boolean isok=jt.updateData(sql, params);
jt.closeRes();
}
3、查看图书。
/**
* 查看指定的图书
*/
private static void
queryBookId(int bid)
{
String sql = "select
* from book_tb where b_id = "+bid;
ResultSet rs = jt.query(sql);
try {
if(rs.next())
{
System.out.println(rs.getInt(1)+"---"+rs.getString(2)+"---"+rs.getInt(6));
}
} catch (SQLException e)
{
e.printStackTrace();
System.out.println("查看图书失败"+sql);
} finally{
jt.closeRes();
}
}
4、修改图书的信息。
/**
* 修改图书
*/
private static void updateBook()
{
System.out.println("输入一个要修改的图书的编号");
int bid = sc.nextInt();
queryBookId(bid);
//
System.out.println("输入要修改图书字段信息:出版社,价格");
String press = sc.next();
double price = sc.nextDouble();
String sql = "update
book_tb set b_press=? ,b_price = ? where b_id = ?";
List params = new ArrayList();
params.add(press);
params.add(price);
params.add(bid);
boolean isok = jt.updateData(sql, params);
jt.closeRes();
System.out.println("修改成功!");
}
5、删除图书。
6、借书,就是针对于我们一个中间表进行操作。在这个表格中的一条记录就代表了一个读者借了一本书。
如果说一个读者有多条信息,在这个中间表中,那就说明他借了多本(种)书。
/**
* 借书
*/
private static void
jieshu(Reader loginR)
{
int flag =
0;
do {
//
借书
System.out.println("输入你要借书的id");
int bid = sc.nextInt();
Book book = queryBookId(bid);
if(book.getNumber()>0)
{
String sql
= "insert into read_book_tb values("+bid+","+loginR.getId()+")";
String sql2 = "update
book_tb set b_number=b_number-1 where b_id ="+bid;
List sqls = new ArrayList();
sqls.add(sql);
sqls.add(sql2);
jt.updateBatch(sqls);
jt.closeRes();
System.out.println("借书成功");
}else {
System.out.println("库存不足");
}
System.out.println("是否继续借书0/1");
flag = sc.nextInt();
}while(flag==0);
}