ideaSSM图书借阅管理系统VS开发mysql数据库web结构java编程计算机网页源码maven项目

一、源码特点

SSM 图书借阅管理系统是一套完善的信息管理系统,结合SSM框架和bootstrap完成本系统,对理解JSP java编程开发语言有帮助系统采用SSM框架(MVC模式开发),系统具有完整的源代码

和数据库,系统主要采用B/S模式开发。

前段主要技术 bootstrap.css jquery

后端主要技术 SpringMVC spring mybatis

数据库 mysql

开发工具 IDEA JDK1.8 TOMCAT 8.5

idea 图书借阅管理系统

二、功能介绍

系统主要角色包括管理员,读者

(1)管理员管理:对管理员信息进行添加、删除、修改和查看

(2)读者管理:对读者信息进行添加、删除、修改和查看

(3)公告管理:对公告信息进行添加、删除、修改和查看

(4)图书类型管理:对图书类型信息进行添加、删除、修改和查看

(5)图书管理:对图书信息进行添加、删除、修改和查看 导入

(6)预约图书管理:对预约图书信息进行添加、删除、修改和查看

(7)还书管理:对还书信息进行添加、删除、修改和查看

(8)异常还书管理:对异常还书信息进行添加、删除、修改和查看

(9)个人信息修改、登录

数据库设计

复制代码
CREATE TABLE `gly` (
`glyid` int(11) NOT NULL auto_increment,
`yhm` VARCHAR(40) default NULL COMMENT '用户名',
`mm` VARCHAR(40) default NULL COMMENT '密码',
`xm` VARCHAR(40) default NULL COMMENT '姓名',  PRIMARY KEY  (`glyid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `duzhe` (
`dzid` int(11) NOT NULL auto_increment,
`yhm` VARCHAR(40) default NULL COMMENT '用户名',
`mm` VARCHAR(40) default NULL COMMENT '密码',
`xm` VARCHAR(40) default NULL COMMENT '姓名',
`lxdh` VARCHAR(40) default NULL COMMENT '联系电话',
`lxdz` VARCHAR(40) default NULL COMMENT '联系地址',  PRIMARY KEY  (`dzid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `gonggao` (
`ggid` int(11) NOT NULL auto_increment,
`bt` VARCHAR(40) default NULL COMMENT '标题',
`nr` VARCHAR(40) default NULL COMMENT '内容',
`fbsj` VARCHAR(40) default NULL COMMENT '发布时间',  PRIMARY KEY  (`ggid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `tslx` (
`tslxid` int(11) NOT NULL auto_increment,
`lx` VARCHAR(40) default NULL COMMENT '类型',  PRIMARY KEY  (`tslxid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `tushu` (
`tsid` int(11) NOT NULL auto_increment,
`tsmc` VARCHAR(40) default NULL COMMENT '图书名称',
`lx` VARCHAR(40) default NULL COMMENT '类型',
`zz` VARCHAR(40) default NULL COMMENT '作者',
`cbs` VARCHAR(40) default NULL COMMENT '出版社',
`js` VARCHAR(40) default NULL COMMENT '介绍',
`kc` VARCHAR(40) default NULL COMMENT '库存',  PRIMARY KEY  (`tsid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `yyts` (
`yytsid` int(11) NOT NULL auto_increment,
`lsh` VARCHAR(40) default NULL COMMENT '流水号',
`ts` VARCHAR(40) default NULL COMMENT '图书',
`yh` VARCHAR(40) default NULL COMMENT '用户',
`tjsj` VARCHAR(40) default NULL COMMENT '提交时间',
`yysj` VARCHAR(40) default NULL COMMENT '预约时间',
`ghsj` VARCHAR(40) default NULL COMMENT '归还时间',
`zt` VARCHAR(40) default NULL COMMENT '状态',  PRIMARY KEY  (`yytsid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `haishu` (
`hsid` int(11) NOT NULL auto_increment,
`yy` VARCHAR(40) default NULL COMMENT '预约',
`hssj` VARCHAR(40) default NULL COMMENT '还书时间',
`yh` VARCHAR(40) default NULL COMMENT '用户',
`sm` VARCHAR(40) default NULL COMMENT '说明',
`zt` VARCHAR(40) default NULL COMMENT '状态',  PRIMARY KEY  (`hsid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
CREATE TABLE `ychs` (
`ychsid` int(11) NOT NULL auto_increment,
`yy` VARCHAR(40) default NULL COMMENT '预约',
`lx` VARCHAR(40) default NULL COMMENT '类型',
`clsm` VARCHAR(40) default NULL COMMENT '处理说明',
`cfsm` VARCHAR(40) default NULL COMMENT '处罚说明',
`czsj` VARCHAR(40) default NULL COMMENT '操作时间',  PRIMARY KEY  (`ychsid`)
) ENGINE=InnoDB DEFAULT CHARSET=gb2312;

代码设计

复制代码
  @Resource
    private haishuDao haishudao;
    @RequestMapping(value="/addpage")
    public String addpage(haishu bean, HttpServletRequest request){
	/**
	还书添加页面
	*/

        Map<String,Object> map= new HashMap<String,Object>();

        System.out.println("addPageok");
        return "haishu/haishuadd";
    }

    @RequestMapping(value="/add")
    public String add(haishu bean, HttpServletRequest request){
        /**
	还书添加处理方法
	**/
        Map<String,Object> map= new HashMap<String,Object>();//初始变量

	

		String hsid=(String)request.getParameter("hsid");//还书编号

		String yy=(String)request.getParameter("yy");//预约

		String hssj=(String)request.getParameter("hssj");//还书时间

		String yh=(String)request.getParameter("yh");//用户

		String sm=(String)request.getParameter("sm");//说明

		String zt=(String)request.getParameter("zt");//状态
		DBO db=new DBO();
		String sql="";
		ResultSet rs=null;
        try{
			sql="update yyts set zt='已归还',ghsj='"+ StaticMethod.getStringDate()+"' where  lsh='"+yy+"'";

			db.update(sql);
			sql="update tushu  set kc=kc+1 where tsid in (select ts from yyts where lsh='"+yy+"')";
			db.update(sql);
			haishudao.add(bean);//调用添加方法
			System.out.println("add");
			request.setAttribute("msg", "<script>alert('操作成功');</script>");//操作提示
		}catch(Exception e){
        	e.printStackTrace();
		}finally {
        	db.close();
		}




        return "haishu/list";
    }


    /**删除 还书
     *
     */
    @RequestMapping(value="/del")
    public String  del(HttpServletRequest request,Map<String,Object> map){
	
        //	Map<String,Object> map= new HashMap<String,Object>();//初始化对象
        String a=(String)request.getParameter("keyid");//request 方式获得主键id
        int id=Integer.parseInt(a);
        request.setAttribute("msg", "<script>alert('删除成功');</script>");
        haishudao.delete(id);//调用 删除方法
        return listpage(map,request);
    }

    /**
     * 查询haishu信息 返回list结果 前台获取
     */
    @RequestMapping(value="/listpage")
    public String listpage(Map<String,Object> map,HttpServletRequest request){
        List<Map> list= new ArrayList<Map>();//初始化对象
        Map  map1= new HashMap();

      
	String hsid=(String)request.getParameter("hsid");//还书编号
	if(hsid!=null&&!hsid.equals("")){
	map1.put("hsid",hsid);//还书编号
	}
	String yy=(String)request.getParameter("yy");//预约
	if(yy!=null&&!yy.equals("")){
	map1.put("yy",yy);//预约
	}
	String hssj=(String)request.getParameter("hssj");//还书时间
	if(hssj!=null&&!hssj.equals("")){
	map1.put("hssj",hssj);//还书时间
	}
	String yh=(String)request.getParameter("yh");//用户
	if(yh!=null&&!yh.equals("")){
	map1.put("yh",yh);//用户
	}
	String sm=(String)request.getParameter("sm");//说明
	if(sm!=null&&!sm.equals("")){
	map1.put("sm",sm);//说明
	}
	String zt=(String)request.getParameter("zt");//状态
	if(zt!=null&&!zt.equals("")){
	map1.put("zt",zt);//状态
	}

        list=haishudao.getAll(map1);//传入 方法参数 返回gly结果集
        System.out.println("listsize="+list.size());

        map.put("list", list);//传递参数
        return "haishu/haishulist";
    }
	/**
	还书详情信息
	*/
    @RequestMapping(value="/detail")
    public String detail(Map<String,Object> map,HttpServletRequest request){

        String keyid=(String)request.getParameter("keyid");//request 方式获得主键id
         haishu bean=new haishu();//初始化对象
        bean=haishudao.gethaishuByID(Integer.parseInt(keyid));//根据id返回 haishu对象数据


		request.setAttribute("hsid", bean.getHsid());//还书编号

		request.setAttribute("yy", bean.getYy());//预约

		request.setAttribute("hssj", bean.getHssj());//还书时间

		request.setAttribute("yh", bean.getYh());//用户

		request.setAttribute("sm", bean.getSm());//说明

		request.setAttribute("zt", bean.getZt());//状态

       


        return "haishu/haishudetail";
    }

三、注意事项

具体功能如视频所示

1、管理员账号:admin密码:admin 数据库配置文件src\main\resources\jdbc.properties

2、开发环境为IDEA开发,数据库为mysql,使用java语言开发。

3、数据库文件名是jspibook.sql 系统名称book

4、地址:login.jsp

四 系统实现

代码下载

https://download.csdn.net/download/qq_41221322/89059197

需要源码 其他的定制服务 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

相关推荐
.鸣12 小时前
set和map
java·学习
ha_lydms12 小时前
5、Spark函数_s/t
java·大数据·python·spark·数据处理·maxcompute·spark 函数
纸上的彩虹12 小时前
半年一百个页面,重构系统也重构了我对前端工作的理解
前端·程序员·架构
be or not to be13 小时前
深入理解 CSS 浮动布局(float)
前端·css
黄河滴滴13 小时前
java系统变卡变慢的原因是什么?从oom的角度分析
java·开发语言
侠客行031713 小时前
Mybatis二级缓存实现详解
java·mybatis·源码阅读
LYFlied13 小时前
【每日算法】LeetCode 1143. 最长公共子序列
前端·算法·leetcode·职场和发展·动态规划
老华带你飞13 小时前
农产品销售管理|基于java + vue农产品销售管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
小徐_233314 小时前
2025 前端开源三年,npm 发包卡我半天
前端·npm·github
Edward1111111114 小时前
tomcat_servlet
java·servlet·tomcat