mybatis
Mybatis是一个数据持久层框架(dao层),数据持久化,将数据从内存中存储到硬盘中。
1.功能实现
展示图书,通过书名模糊搜索,查询相关书列表
买书功能,买书信息插入购买记录表,total_price(总价)=price(书籍价格)*buy_num(购买数量),图书表中库存对应减少
借书功能,借出信息插入借出表,borrow_date(借出时间)插入为现在的时间,相应图书库存减少1
还书功能,还书信息插入归还表,borrow_date为借出时间,back_date插入为现在的时间,delay_money(滞纳金)=((back_date-borrow_date)default_date(此类书默认借出期限))*delay_per_day(超期每日应缴滞纳金)
2.建表
例表,整理表与表之间的关系。
2.1建表:
CREATE DATABASE IF NOT EXISTS Book ;
USE Book;
#图书表:
CREATE TABLE `Book` (
`book_id` INT(11) NOT NULL AUTO_INCREMENT,
`book_name` VARCHAR(20) NOT NULL,
`price` INT(5) NOT NULL,
`store` INT(100) NOT NULL,
`des` VARCHAR(50) NOT NULL,
`book_type` VARCHAR(50) NOT NULL,
PRIMARY KEY (`book_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8
#借出表:
CREATE TABLE `Borrow` (
`book_id` INT(180) NOT NULL AUTO_INCREMENT,
`borrow_id` INT(180) NOT NULL,
`borrow_date` DATE DEFAULT NULL,
`delay_money` INT(180) NOT NULL,
PRIMARY KEY (`book_id`),
CONSTRAINT `Borrow_ibfk_1` FOREIGN KEY (`book_id`) REFERENCES `Book` (`book_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8
#归还表:
CREATE TABLE `Back` (
`book_id` INT(180) NOT NULL AUTO_INCREMENT,
`borrow_id` INT(180) NOT NULL,
`back_date` DATE DEFAULT NULL,
`delay_money` INT(180) DEFAULT NULL,
PRIMARY KEY (`book_id`),
CONSTRAINT `Back_ibfk_1` FOREIGN KEY (`book_id`) REFERENCES `Book` (`book_id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8
#购买记录表:
CREATE TABLE `Buy_record` (
`book_id` INT(180) NOT NULL AUTO_INCREMENT,
`buy_id` INT