Java简易图书管理系统

实体类beans

book

package com.hwq.beans;


//实体类
public class Book {
    private int id;
    private String name;
    private String author;
    private int number;
    private boolean isBorrowed;//是否被借出

    public Book() {
    }

    public Book(int id, String name, String author, int number) {
        this.id = id;
        this.name = name;
        this.author = author;
        this.number = number;

    }



    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getAuthor() {
        return author;
    }

    public void setAuthor(String author) {
        this.author = author;
    }

    public int getNumber() {
        return number;
    }

    public void setNumber(int number) {
        this.number = number;
    }

    public boolean isBorrowed() {
        return isBorrowed;
    }

    public void setBorrowed(boolean borrowed) {
        isBorrowed = borrowed;
    }

    @Override
    public String toString() {
        return "Book{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", author='" + author + '\'' +
                ", number=" + number +
                ", isBorrowed=" + isBorrowed +
                '}';
    }
}

BookSlip

借书还书

package com.hwq.beans;

import java.util.Date;

public class BookSlip {
    private int id;
    private int userid;
    private int bookid;
    private Date jdate;
    private Date hdate;

    public BookSlip() {
    }

    public BookSlip(int id, int userid, int bookid, Date jdate, Date hdate) {
        this.id = id;
        this.userid = userid;
        this.bookid = bookid;
        this.jdate = jdate;
        this.hdate = hdate;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public int getUserid() {
        return userid;
    }

    public void setUserid(int userid) {
        this.userid = userid;
    }

    public int getBookid() {
        return bookid;
    }

    public void setBookid(int bookid) {
        this.bookid = bookid;
    }

    public Date getJdate() {
        return jdate;
    }

    public void setJdate(Date jdate) {
        this.jdate = jdate;
    }

    public Date getHdate() {
        return hdate;
    }

    public void setHdate(Date hdate) {
        this.hdate = hdate;
    }

    @Override
    public String toString() {
        return "BookSlip{" +
                "id=" + id +
                ", userid=" + userid +
                ", bookid=" + bookid +
                ", jdate=" + jdate +
                ", hdate=" + hdate +
                '}';
    }
}

User

package com.hwq.beans;

public class User {
    private int id;
    private String name;

    private String sex;
    private String pwd;
    private int member;
    public User() {
    }

    public User(int id, String name, int member, String sex, String pwd) {
        this.id = id;
        this.name = name;
        this.member = member;
        this.sex = sex;
        this.pwd = pwd;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getMember() {
        return member;
    }

    public void setMember(int member) {
        this.member = member;
    }

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    @Override
    public String toString() {
        return "User{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", sex='" + sex + '\'' +
                ", pwd='" + pwd + '\'' +
                ", member=" + member +
                '}';
    }
}

控制层controller

BookController

package com.hwq.controller;


import com.hwq.beans.Book;
import com.hwq.beans.BookSlip;
import com.hwq.beans.User;
import com.hwq.service.BookService;
import com.hwq.service.impl.BookServiceimpl;

//import com.hwq.service.impl.BookSlipSerbiceimpl;

import java.util.List;
import java.util.Scanner;

//控制层
public class BookController {
        Scanner sc=new Scanner(System.in);
        BookService bookService=new BookServiceimpl();
//        BookSlipService bookSlipService=new BookSlipSerbiceimpl();

        //主方法
    public void show(User user){
        System.out.println("【1】查看图书,【2】添加图书,【3】修改图书,【4]删除图书,【5】返回上一层");
        System.out.println("请输入你想要的操作:");
        int a=sc.nextInt();
        if (a==1){
            showbook();
            show(null);
        }else if (a==2){
            addbooks();
            show(null);
        }else if (a==3){
            updatebooks();
            show(null);
        }else if (a==4){
            delbooks();
            show(null);
        }else if (a==5){
            new UserController().register(user);
        }else {
            System.out.println("输入有误!请重新输入");
            show(null);
        }
    }

    public void membershow(User user){

        System.out.println("【1】查看图书,【2】借书,【3】还书,【4]查看借书记录,【5】返回上一层");
        System.out.println("请输入你想要的操作:");
        int a=sc.nextInt();
        if (a==1){
            showbook1(user);
            membershow(user);
        }else if (a==2){
            jiebook(user);
            membershow(user);
        }else if (a==3){
            huanbook(user);
            membershow(user);
        }else if (a==4){
            jiebookjl(user);
            membershow(user);
        }else if (a==5){
            new UserController().register(user);
        }else {
            System.out.println("输入有误!请重新输入");
            membershow(null);
        }
    }
//查看借书记录
    private void jiebookjl(User user) {
        List<BookSlip> jbooklist=bookService.getjbookjl(user);
        for (BookSlip bookSlip:jbooklist){
            System.out.println(bookSlip);
        }
        membershow(user);

    }

    //会员还书
    private void huanbook(User user) {
        System.out.println("请输入你要还的书籍编号:");
        int bid=sc.nextInt();

        //判断图书是否需要归还
        int id =bookService.panduanjh(user,bid);
        //id判断是否需要归还
        if (id>0){
            //大于0可以还
            bookService.jhbooks(id,bid);
            System.out.println("还书成功!");
        }else {
            System.out.println("这本数你没有借!");
            membershow(user);
        }
    }

    //会员借书
    private void jiebook(User user) {
        System.out.println("请输入你要借的书籍编号:");
        int bid=sc.nextInt();
        //判断图书是否存在
        int i=bookService.panduan(bid);
        if (i==1){
            //可以借,再判断是否借了没有还
            int id =bookService.panduanjh(user,bid);
            if (id>0){
                System.out.println("这本数借了未还!");
                membershow(user);
            }else {
                bookService.addjhbooks(user,bid);
                System.out.println("借书成功!");
                membershow(user);
            }
        }else {
            System.out.println("图书不存在!");
            membershow(user);
        }

    }

    //会员查看图书
    void showbook1(User user) {
        List<Book> blist=bookService.getbooks();//BookService
        for (Book book:blist){
            System.out.println(book);
        }

//        membershow(user);


    }

//删除图书
    private void delbooks() {
        System.out.println("录入你的书籍编号:");
        int id=sc.nextInt();
            bookService.delbook(id);
            System.out.println("删除成功!");
            show(null);
    }

    //修改图书
    private void updatebooks() {
        Book book = new Book();
        System.out.println("录入你的书籍编号:");
        book.setId(sc.nextInt());
        //判断图书名字是否存在,存在则添加,不存在则提示不存在
        int b=bookService.getbooksid(book);
        if (b==0){
            Book book1=new Book();
            System.out.println("请输入你要修改后的图书名称:");
            book1.setName(sc.next());
            System.out.println("请输入你修改后的图书作者:");
            book1.setAuthor(sc.next());
            System.out.println("请输入你修改后的图书数量:");
            book1.setNumber(sc.nextInt());
            //一个判断的值,一个修改的值
            bookService.updatebooks(book,book1);
            System.out.println("修改完成!");
            show(null);
        }else {
            System.out.println("你要修改的图书不存在!");
            show(null);
        }

    }

    //添加图书
    private void addbooks() {


        Book book = new Book();
        System.out.println("录入你的书籍编号:");
        book.setId(sc.nextInt());
//判断图书编号是否存在,存在则添加,不存在则提示不存在
        int b=bookService.getbooksid(book);

        if (b==0){
            System.out.println("添加的图书编号已存在!");
            show(null);
        }else {
            System.out.println("录入你的书籍名称:");
            book.setName(sc.next());
            System.out.println("录入你的书籍作者:");

            book.setAuthor(sc.next());
            System.out.println("录入你的书籍的数量:");

            book.setNumber(sc.nextInt());
            //判断后台添加是否成功
            int a=bookService.addbooks(book);

            if (a==1){
                System.out.println("添加成功!");
                show(null);
            }else {
                System.out.println("添加失败!");
                show(null);
            }
        }



    }

    //管理员查看图书
    private void showbook() {
        List<Book> blist=bookService.getbooks();//BookService
        for (Book book:blist){
            System.out.println(book);
        }
        show(null);

    }
}

UserController

package com.hwq.controller;


import com.hwq.beans.User;
import com.hwq.service.UserService;
import com.hwq.service.impl.UserServiceimpl;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;

//控制层
public class UserController {
    Scanner sc=new Scanner(System.in);
    UserService userService= new UserServiceimpl();


    //主方法
public void register(User user){
    System.out.println("【1】登录,【2】注册,【3】退出");
    System.out.println("请输入你要进行的操作:");
    int a=sc.nextInt();
    if (a==1){
        enter();
    }else if (a==2){
        login();
    }else if (a==3){
        System.exit(0);
    }
}
//注册
    private void login() {
        User user=new User();
        System.out.println("请输入你要注册的账号:");
        user.setName(sc.next());
        //判断账号是否冲突
        int i= userService.getusername(user.getName());
        if (i==1){
            System.out.println("你输入的账号已存在!");
            register(null);
        }
        System.out.println("请输入你要注册的密码:");
        user.setPwd(sc.next());
        userService.adduser(user);
        System.out.println("注册成功!");
        register(null);
    }

    //登录
    private void enter() {

        User user=new User();
        System.out.println("请输入账号:");
        user.setName(sc.next());
        System.out.println("请输入密码:");
        user.setPwd(sc.next());
        User us =userService.enter(user);


        if (us==null){
            System.out.println("你输入的账号密码有误!");
            register(null);
        }else {
            System.out.println("恭喜你登陆成功!");
            if (us.getMember()==1){
                new BookController().show(us);
            }else {
                new BookController().membershow(us);
            }

        }
    }
}

数据层dao

BookDao

package com.hwq.dao;

import com.hwq.beans.Book;
import com.hwq.beans.BookSlip;
import com.hwq.beans.User;
import com.hwq.util.JDBCUtil;

import java.sql.*;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;

/**
 * 可连接数据库    处理数据
 */





//数据层
public class BookDao {

    static List<Book> blist=new ArrayList<>();
    //static只能被statis访问

    static {
        blist.add(new Book(1,  "完美世界",  "张双玉",10)) ;
        blist.add(new Book(2,  "遮天",      "张双玉",10)) ;
        blist.add(new Book(3,  "斗破苍穹",  "张双玉",10)) ;
        blist.add(new Book(4,  "火影忍者",  "张双玉",10)) ;
        blist.add(new Book(5,  "妖精的尾巴","张双玉",10)) ;
        blist.add(new Book(6,  "死神",        "张双玉",10)) ;
    }
//查看所有图书
    public List<Book> getbooks() {
        List<Book> list=new ArrayList<>();
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql = "select * from book ";
            //预加载sql
            ps = conn.prepareStatement(sql);
            //执行sql  查询执行sql后会返回一个结果集
            rs = ps.executeQuery();
            //遍历   .next()  判断是否有下一条数据
            while (rs.next()){
                Book book=new Book();
                book.setId(rs.getInt("id"));
                book.setName(rs.getString("name"));
                book.setAuthor(rs.getString("author"));
                book.setNumber(rs.getInt("bnum"));
                list.add(book);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,rs);
        }
        return list;
    }

//添加图书
    public int addbooks(Book book) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {

            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="insert  into book values (null ,?,?,?)";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(3,book.getNumber());
            ps.setString(1,book.getName());
            ps.setString(2,book.getAuthor());
            int a=ps.executeUpdate();
            return a;
        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn, ps, null);
        }
        return 0;
    }
//查询图书编号是否存在
    public int getbooksid(Book book) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {

            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="select * from book where id=?";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);

            //有了预加载sql,sql里面有问号的时候一定要处理

            ps.setInt(1,book.getId());

            rs=ps.executeQuery();
            //遍历
            while (rs.next()){
                return 0;
            }

        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,rs);
        }
        return 1;
    }
//修改图书
    public void updatebooks(Book book, Book book1) {
        Connection conn=null;
        PreparedStatement ps =null;

        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="update book set name=?,author=?,bnum=? where id=?";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(3,book1.getNumber());
            ps.setString(1,book1.getName());
            ps.setString(2,book1.getAuthor());
            ps.setInt(4,book.getId());
            ps.executeUpdate();
        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,null);
        }

    }
//删除
    public void delbook(int id) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="delete from book where id=?";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(1,id);
            ps.execute();
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,null);
        }
    }
//查看借书记录
    public List<BookSlip> getjbookjl(User user) {
        List<BookSlip> list=new ArrayList<>();
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql = "select * from jbook where uid=? ";
            //预加载sql
            ps = conn.prepareStatement(sql);
            ps.setInt(1,user.getId());

            //执行sql  查询执行sql后会返回一个结果集
            rs = ps.executeQuery();
            //遍历   .next()  判断是否有下一条数据
            while (rs.next()){
               BookSlip bookSlip=new BookSlip();
               bookSlip.setId(rs.getInt("id"));
               bookSlip.setUserid(rs.getInt("uid"));
               bookSlip.setBookid(rs.getInt("bid"));
               bookSlip.setJdate(rs.getTimestamp("jdate"));
               bookSlip.setHdate(rs.getTimestamp("hdate"));
               list.add(bookSlip);
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,rs);
        }
        return list;

    }
//根据id查询图书是否存在
    public int panduan(int bid) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="select * from book where id=?";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(1,bid);
            rs=ps.executeQuery();
            while (rs.next()){
                return 1;
            }
        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,rs);
        }
        return 0;

    }
//判断图书是否借了未还
    public int panduanjh(User user, int bid) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="select * from jbook where uid=? and bid=? and hdate is null ";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(1,user.getId());
            ps.setInt(2,bid);
            rs=ps.executeQuery();
            while (rs.next()){
                return rs.getInt("id");
            }
        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,rs);
        }
        return 0;
    }
//添加借书记录
    public void addjhbooks(User user, int bid) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="insert into jbook(id,uid,bid,jdate) values (null ,?,?,?)";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(1,user.getId());
            ps.setInt(2,bid);
            Date date = new Date();
            ps.setTimestamp(3,new Timestamp(date.getTime()));
            ps.execute();
        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,null);
        }
    }
//图书的数量减一
    public void delbooksum(int bid) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="update book set bnum=bnum-1 where id=?";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(1,bid);
            ps.execute();
        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,null);
        }
    }
//还书
    public void jhbooks(int id) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="update jbook set hdate=? where id=?";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(2,id);
            ps.setTimestamp(1,new Timestamp(new Date().getTime()));
            ps.execute();
        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,null);
        }
    }
//图书数量+1
    public void zengbooksum(int bid) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            //驱动管理器运行,获取链接Connection
            conn= JDBCUtil.getConnection();
            String sql ="update book set bnum=bnum+1 where id=?";
            //通常我们用PreparedStatement  预加载sql对象  ?占位符
            ps = conn.prepareStatement(sql);
            //有了预加载sql,sql里面有问号的时候一定要处理
            ps.setInt(1,bid);
            ps.execute();
        }  catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,null);
        }
    }
}

UserDao

package com.hwq.dao;

import com.hwq.beans.Book;
import com.hwq.beans.User;
import com.hwq.util.JDBCUtil;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;

public class UserDao {

    public User enter(User user) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            conn= JDBCUtil.getConnection();
            String sql = "select * from user_v where name=? and pwd=?";
            //预加载sql
            ps = conn.prepareStatement(sql);

            //执行sql  查询执行sql后会返回一个结果集

            ps.setString(1,user.getName());
            ps.setString(2,user.getPwd());
            rs = ps.executeQuery();
            //遍历   .next()  判断是否有下一条数据
            while (rs.next()){
                User user1 = new User();
                user1.setId(rs.getInt("id"));
                user1.setName(rs.getString("name"));
                user1.setPwd(rs.getString("pwd"));
                user1.setMember(rs.getInt("role"));
                return user1;
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,rs);
        }
        return null;
    }

    public int getusername(String name) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            conn= JDBCUtil.getConnection();
            String sql = "select * from user_v where name=?";
            //预加载sql
            ps = conn.prepareStatement(sql);

            //执行sql  查询执行sql后会返回一个结果集

            ps.setString(1,name);

            rs = ps.executeQuery();
            //遍历   .next()  判断是否有下一条数据
            while (rs.next()){

                return 1;
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,rs);
        }

        return 0;

    }

    public int adduser(User user) {
        Connection conn=null;
        PreparedStatement ps =null;
        ResultSet rs =null;
        try {
            conn= JDBCUtil.getConnection();
            String sql = "insert into user_v values (null ,?,?,?)";
            //预加载sql
            ps = conn.prepareStatement(sql);

            //执行sql  查询执行sql后会返回一个结果集

            ps.setString(1,user.getName());
            ps.setString(2,user.getPwd());
            ps.setInt(3,2);
            ps.execute();

        } catch (SQLException e) {
            e.printStackTrace();
        }finally {
            JDBCUtil.close(conn,ps,null);
        }
        return 1;
    }
}

业务层service

BookService

package com.hwq.service;

import com.hwq.beans.Book;
import com.hwq.beans.BookSlip;
import com.hwq.beans.User;

import java.util.List;

/**
 *
 */






//业务层
public interface BookService {
    List<Book> getbooks();

    int addbooks(Book book);

    int getbooksid(Book book);

    void updatebooks(Book book, Book book1);

    void delbook(int id);
//查看借书记录
    List<BookSlip> getjbookjl(User user);
//判断图书是否存在
    int panduan(int bid);
//判断图书是否借了未还
    int panduanjh(User user, int bid);
//借书
    void addjhbooks(User user, int bid);
//还书
    void jhbooks(int id,int bid);
}

UserService

package com.hwq.service;

import com.hwq.beans.User;

import java.util.List;

public interface UserService {


    User enter(User user);

    int getusername(String name);

    int adduser(User user);
}

BookServiceimpl

package com.hwq.service.impl;

import com.hwq.beans.Book;
import com.hwq.beans.BookSlip;
import com.hwq.beans.User;
import com.hwq.dao.BookDao;
import com.hwq.service.BookService;

import java.util.List;

public class BookServiceimpl implements BookService {


    BookDao bookDao=new BookDao();




    @Override
    public List<Book> getbooks() {
        List<Book> blist=bookDao.getbooks();
        return blist;
    }

    @Override
    public int addbooks(Book book) {
        return bookDao.addbooks(book);
    }

    @Override
    public int getbooksid(Book book) {
        return bookDao.getbooksid(book);
    }

    @Override
    public void updatebooks(Book book, Book book1) {
        bookDao.updatebooks(book,book1);
    }

    @Override
    public void delbook(int id) {
        bookDao.delbook(id);
    }

    @Override
    public List<BookSlip> getjbookjl(User user) {
        return bookDao.getjbookjl(user);
    }

    @Override
    public int panduan(int bid) {
        return bookDao.panduan(bid);
    }

    @Override
    public int panduanjh(User user, int bid) {
        return bookDao.panduanjh(user,bid);
    }

    @Override
    public void addjhbooks(User user, int bid) {
        bookDao.addjhbooks(user, bid);//添加借书记录
        bookDao.delbooksum(bid);//图书的数量-1
    }

    @Override
    public void jhbooks(int id,int bid) {
        bookDao.jhbooks(id);//还书
        bookDao.zengbooksum(bid);//图书的数量+1
    }


}

UserServiceimpl

package com.hwq.service.impl;

import com.hwq.beans.User;
import com.hwq.dao.UserDao;
import com.hwq.service.UserService;

import java.util.List;

public class UserServiceimpl implements UserService {
    UserDao userDao=new UserDao();


    @Override
    public User enter(User user) {
        return userDao.enter(user);
    }

    @Override
    public int getusername(String name) {
        return userDao.getusername(name);
    }

    @Override
    public int adduser(User user) {
        return userDao.adduser(user);
    }


}

测试类

Text

package com.hwq.text;

import com.hwq.controller.BookController;
import com.hwq.controller.UserController;

public class Text {

    public static void main(String[] args) {
        System.out.println("欢迎来到***图书管理!");
        new UserController().register(null);
    }
}

uitl

Jdbcutil

package com.hwq.util;

import java.sql.*;

public class JDBCUtil {
    static  String url = "jdbc:mysql://127.0.0.1:3306/book"//地址;
    static String user = "root"//数据库账号;
    static String password = "123456"//数据库密码;


    static {
        //加载驱动
        try {
            Class.forName("com.mysql.cj.jdbc.Driver");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }

    //获取连接
    public static Connection getConnection(){
        Connection conn=null;
        try {
            conn= DriverManager.getConnection(url,user,password);
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return conn;
    }


    public static  void close(Connection conn, PreparedStatement ps, ResultSet rs){

        try {
            if(conn!=null){
                conn.close();
            }
            if(ps!=null){
                ps.close();
            }
            if(rs!=null){
                rs.close();
            }
        } catch (SQLException e) {
            e.printStackTrace();
        }
    }
}

代码运行还需要使用jar包

mysql-connector-j-8.2.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值