ssh搭建图书管理系统之数据库编写

最近实验课要写一个图书馆管理系统,因为太忙所以不会很详细地一步步地记录搭建的全过程。

做完这个系统你可能为什么要这样做那样做,因为老师要求的谢谢。

1.数据表的设计,各个字段都是字面意思。

2.详细设计。

-- MySQL Script generated by MySQL Workbench
-- Sun May 14 00:38:02 2017
-- Model: New Model    Version: 1.0
-- MySQL Workbench Forward Engineering


SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';


-- -----------------------------------------------------
-- Schema libraryms
-- -----------------------------------------------------


-- -----------------------------------------------------
-- Schema libraryms
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `libraryms` DEFAULT CHARACTER SET utf8 ;
USE `libraryms` ;


-- -----------------------------------------------------
-- Table `libraryms`.`user`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `libraryms`.`user` (
  `admin` TINYINT NOT NULL,
  `user_name` VARCHAR(8) NOT NULL,
  `user_pass` VARCHAR(16) NOT NULL,
  `user_unit` VARCHAR(20) NULL COMMENT '用户所属院系',
  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `loadcount` INT NULL DEFAULT 0 COMMENT '登录次数',
  PRIMARY KEY (`id`))
ENGINE = InnoDB;




-- -----------------------------------------------------
-- Table `libraryms`.`press`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `libraryms`.`press` (
  `name` VARCHAR(15) NOT NULL,
  `phone` VARCHAR(11) NULL,
  `postcode` VARCHAR(6) NULL COMMENT '出版社编号',
  `location` VARCHAR(20) NULL,
  PRIMARY KEY (`name`))
ENGINE = InnoDB;




-- -----------------------------------------------------
-- Table `libraryms`.`bigtype`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `libraryms`.`bigtype` (
  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `typename` VARCHAR(45) NOT NULL,
  PRIMARY KEY (`id`))
ENGINE = InnoDB
COMMENT = '图书大类';




-- -----------------------------------------------------
-- Table `libraryms`.`smalltype`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `libraryms`.`smalltype` (
  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `typename` VARCHAR(45) NULL,
  `bigtype_id` INT UNSIGNED NOT NULL,
  PRIMARY KEY (`id`),
  INDEX `fk_smalltype_bigtype1_idx` (`bigtype_id` ASC),
  CONSTRAINT `fk_smalltype_bigtype1`
    FOREIGN KEY (`bigtype_id`)
    REFERENCES `libraryms`.`bigtype` (`id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB
COMMENT = '图书小类';




-- -----------------------------------------------------
-- Table `libraryms`.`books`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `libraryms`.`books` (
  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
  `book_name` VARCHAR(20) NOT NULL,
  `book_num` VARCHAR(45) NOT NULL COMMENT '图书编号',
  `book_position` VARCHAR(10) NOT NULL,
  `press_name` VARCHAR(15) NOT NULL,
  `smalltype_id` INT UNSIGNED NOT NULL,
  PRIMARY KEY (`id`),
  INDEX `fk_books_press1_idx` (`press_name` ASC),
  UNIQUE INDEX `book_name_UNIQUE` (`book_name` ASC),
  INDEX `fk_books_smalltype1_idx` (`smalltype_id` ASC),
  CONSTRAINT `fk_books_press1`
    FOREIGN KEY (`press_name`)
    REFERENCES `libraryms`.`press` (`name`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_books_smalltype1`
    FOREIGN KEY (`smalltype_id`)
    REFERENCES `libraryms`.`smalltype` (`id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;




-- -----------------------------------------------------
-- Table `libraryms`.`borrow`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `libraryms`.`borrow` (
  `borrow_date` DATETIME(4) NOT NULL,
  `return_date` DATETIME(4) NULL,
  `book_id` INT UNSIGNED NOT NULL,
  `user_id` INT UNSIGNED NOT NULL,

//千万别想着拿 `book_id`和 `user_id`作为联合主键呀这是不行的。
  `id` INT UNSIGNED NOT NULL AUTO_INCREMENT,
  INDEX `fk_borrow_books_idx` (`book_id` ASC),
  INDEX `fk_borrow_user1_idx` (`user_id` ASC),
  PRIMARY KEY (`id`),
  CONSTRAINT `fk_borrow_books`
    FOREIGN KEY (`book_id`)
    REFERENCES `libraryms`.`books` (`id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION,
  CONSTRAINT `fk_borrow_user1`
    FOREIGN KEY (`user_id`)
    REFERENCES `libraryms`.`user` (`id`)
    ON DELETE NO ACTION
    ON UPDATE NO ACTION)
ENGINE = InnoDB;




SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;

 

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
好的,为了实现基于SSH框架的图书信息管理系统,需要先进行以下几个步骤: 1. 搭建SSH框架 首先需要搭建SSH框架,包括Spring、Hibernate和Struts。这里不再详细介绍,可以参考相关教程进行搭建。 2. 配置数据库连接 在SSH框架中,需要配置数据库连接信息,包括数据库类型、数据库地址、用户名、密码等。可以在项目中的配置文件中进行配置,比如在Spring的配置文件中配置数据库连接信息。 3. 创建图书信息表 接下来需要创建图书信息表,包括图书编号、图书名称、作者、出版社、出版日期等字段。可以使用MySQL数据库管理工具进行创建。 4. 创建JavaBean 根据图书信息表的字段,创建对应的JavaBean,包括图书编号、图书名称、作者、出版社、出版日期等属性,并生成对应的get/set方法。 5. 创建DAO接口和实现类 根据业务需求,创建图书信息的DAO接口和实现类,包括添加图书信息、删除图书信息、修改图书信息、查询图书信息等方法。 6. 创建Service层 在Service层中,调用DAO层提供的方法,完成图书信息的业务逻辑处理。比如添加图书信息时,需要先判断图书编号是否已存在,如果已存在则提示用户,否则调用DAO层添加图书信息。 7. 创建控制器 在控制器中,接收用户的请求,调用Service层提供的方法,完成图书信息的增删改查等操作,并返回对应的视图。 以上是实现基于SSH框架的图书信息管理系统的大致步骤,具体实现过程中,还需要根据业务需求进行具体的实现。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值