import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
import java.util.Scanner;
/*
需求:
图书管理系统
(1)实现图书的增删改查功能,并保存信息到数据库。
(2)退出系统,下次登录时,能够查看之前的图书信息。
分析:
(0)建库,建表
(1)创建图书实体类Book
(2)实现增删改查,通过SQL实现
*/
public class BookManager {
public static void main(String[] args) throws SQLException, ClassNotFoundException {
Scanner sc = new Scanner(System.in);
while (true) {
System.out.println("****************************");
System.out.println("****** 图书管理系统 ******");
System.out.println("****** 1.添加图书 ******");
System.out.println("****** 2.修改图书 ******");
System.out.println("****** 3.删除图书 ******");
System.out.println("****** 4.查询图书 ******");
System.out.println("****** 0.退出系统 ******");
System.out.println("****************************");
System.out.println("请输入操作序号:");
int choose = sc.nextInt();
switch (choose) {
case 1:
addBook();
break;
default:
System.out.println("您的输入有误!");
break;
}
}
}
//实现添加图书功能
private static void addBook() throws SQLException, ClassNotFoundException {
Scanner sc = new Scanner(System.in);
System.out.println("....添加图书....");//伪代码
System.out.println("请输入图书的编号:");
int bookId = sc.nextInt();
System.out.println("请输入图书的名称:");
String bookName = sc.next();
System.out.println("请输入图书的价格:");
float bookPrice = sc.nextFloat();
System.out.println("请输入图书的作者:");
String bookAuthor = sc.next();
System.out.println("请输入图书的出版社:");
String bookPublisher = sc.next();
//构建Book对象
Book book = new Book(bookId, bookName, bookPrice, bookAuthor, bookPublisher);
//加载驱动
Class.forName("com.mysql.jdbc.Driver");
//获取数据库连接
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "root";
Connection conn = DriverManager.getConnection(url, user, password);
//获取预编执行语句对象
String sql = "insert into work values(?,?,?,?,?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
//设置SQL参数
pstmt.setInt(1, book.getBookid());
pstmt.setString(2, book.getBookName());
pstmt.setFloat(3, book.getBookPrice());
pstmt.setString(4, book.getBookAuthor());
pstmt.setString(5, book.getBookPublisher());
//执行SQL
int row = pstmt.executeUpdate();
pstmt.close();
conn.close();
//提示
System.out.println("图书添加成功!");
}
}