zoukankan      html  css  js  c++  java
  • java图书信息管理系统

    今天将为大家分析一个基于javaweb的图书信息管理系统,采用当前非常流行的B/S体系结构,以JAVA作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统。
    基于javaweb的图书信息管理系统项目使用框架为SSM(MYECLIPSE),选用开发工具为MYECLIPSE。基于javaweb的图书信息管理系统为一个 后台项目。
    为了完成基于javaweb的图书信息管理系统,我们首先需要对该系统进行需求分析。一个基于javaweb的图书信息管理系统应包含用户角色有管理员、学生。为了能让用户顺利登陆系统完成相关操作,需要为每种登陆角色设置账户和密码字段。

    总结得出基于javaweb的图书信息管理系统项目所有数据为:管理员(id)、学生(xuesheng)、图书(tushu)、公告(gonggao)

    基于javaweb的图书信息管理系统之管理员表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 管理员id
    username | VARCHAR(255) | | 账号
    password | VARCHAR(255) | | 密码

    基于javaweb的图书信息管理系统之学生表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 学生id
    mingzi | VARCHAR(255) | | 名字
    username | VARCHAR(255) | | 账号
    password | VARCHAR(255) | | 密码
    xinyong | VARCHAR(255) | | 信用
    zhuangtai | VARCHAR(255) | | 状态

    基于javaweb的图书信息管理系统之图书表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 图书id
    mingcheng | VARCHAR(255) | | 名称
    shuliang | VARCHAR(255) | | 数量
    shuoming | VARCHAR(255) | | 说明
    shangjiashijian | VARCHAR(255) | | 上架时间

    基于javaweb的图书信息管理系统之公告表

    字段名 | 类型 | 属性 | 描述
    id | INT(11) | PRIMARY KEY | 公告id
    biaoti | VARCHAR(255) | | 标题
    neirong | VARCHAR(255) | | 内容
    SET FOREIGN_KEY_CHECKS=0;
    
    -- ----------------------------
    
    -- ----------------------------
    
    -- Table structure for ggjyjavawebdtsxxglxt
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_id`;
    
    CREATE TABLE `t_id` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '管理员id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员';
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_xuesheng`;
    
    CREATE TABLE `t_xuesheng` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '学生id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`xinyong` VARCHAR(255) DEFAULT NULL COMMENT '信用',`zhuangtai` VARCHAR(255) DEFAULT NULL COMMENT '状态',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='学生';
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_tushu`;
    
    CREATE TABLE `t_tushu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '图书id',`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT '名称',`shuliang` VARCHAR(255) DEFAULT NULL COMMENT '数量',`shuoming` VARCHAR(5000) DEFAULT NULL COMMENT '说明',`shangjiashijian` VARCHAR(255) DEFAULT NULL COMMENT '上架时间',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='图书';
    
    -- ----------------------------
    
    DROP TABLE IF EXISTS `t_gonggao`;
    
    CREATE TABLE `t_gonggao` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '公告id',`biaoti` VARCHAR(255) DEFAULT NULL COMMENT '标题',`neirong` VARCHAR(5000) DEFAULT NULL COMMENT '内容',PRIMARY KEY (`id`)
    
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='公告';

    添加图书模块:

    系统中存在添加图书功能,通过点击添加图书可以跳转到该功能模块,在该功能模块中,填写对应的图书信息。图书包含信息名称,数量,说明,上架时间,填写完所有信息后,通过post方法将数据提交到tianjiatushu.action中,该地址将在服务器中tushuController类中的tianjiatushuact方法中进行响应。响应结果为,获取所有的图书信息,封装一个tushu类,使用tushuController类中定义的tushudao的insert方法,将图书数据插入到数据库的tushu表中。并给出用户提示信息,添加图书成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:

    通过tushudao的insert方法将页面传输的图书添加到数据库中 tushudao.insert(tushu);

    将添加图书成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加图书成功");

    返回图书管理界面

    return "forward:/tianjiatushu.action";

    查询图书模块:

    图书的查询模块实现方式为,在页面中发起tushuguanli.action请求。通过该请求,响应服务器tushuController类中的tushuguanli,在该方法中通过selectByexample进行数据的查询操作。将所有的图书信息查询后,保存到request中的tushuall中,在页面中进行展示,返回tushuguanli.jsp,该部分核心代码如下所示:

    生成图书样例类,通过example定义查询条件 TushuExample example = new TushuExample();

    通过tushudao的selectByExample方法查询出所有的图书信息 List tushuall = tushudao.selectByExample(example);

    将图书信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("tushuall", tushuall);

    返回图书管理界面

    return "forward:/tushuguanli.action";

    修改图书模块:

    在页面完成图书的修改信息填写后,将该部分数据传入xiugaitushu.action地址,并通过post进行提交。提交后在tushuController中通过xiugaitushu进行接收,将所有字段封装为一个图书实体。并将该实体传入tushudao中的updateByPrimaryKeySelective方法中,在该方法中定义了通过图书id更新其余图书的字段,该部分字段包括名称,数量,说明,上架时间,该部分核心代码如下所示:

    通过tushudao的修改方法根据id修改对应的图书 tushudao.updateByPrimaryKeySelective(tushu);

    将修改图书成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改图书信息成功");

    返回图书管理界面

    return "forward:/tushuguanli.action";

    删除图书模块:

    在页面中通过a标签,shanchutushu?id=将id传入到后台中,通过shanchutushu接收图书id。使用deleteByid的方法

    删除该图书,完成删除操作。定义删除成功提示信息,删除图书成功,并保存到request中,该部分代码如下:

    通过tushudao的删除方法根据id删除对应的图书 tushudao.deleteByPrimaryKey(id);

    将删除图书成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除图书成功");

    返回图书管理界面

    return "forward:/tushuguanli.action";

    源码下载

  • 相关阅读:
    微服务架构 ------ DockerCompose从安装到项目部署
    微服务架构 ------ Dockerfile定制镜像
    微服务架构 ------ Ubuntu下Docker的安装
    微服务架构 ------ 插曲 linux LVM磁盘扩容
    Ubuntu java环境变量配置
    微服务架构 ------ 插曲 hikari连接池的配置
    微服务架构 ------ 插曲 Mybatis逆向工程
    微服务架构 ------ 插曲 Linux平台 Ubuntu的安装
    微服务架构 ------ Day01 微服务架构优缺点
    k8s配置storage-class
  • 原文地址:https://www.cnblogs.com/hxlk/p/11672190.html
Copyright © 2011-2022 走看看