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

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

相关推荐
江城开朗的豌豆3 分钟前
JavaScript篇:偷懒也有理!事件代理让我少写一半代码
前端·javascript·面试
程序员JerrySUN15 分钟前
Linux 内核内存管理子系统全面解析与体系构建
java·linux·运维
云浪18 分钟前
掌握 CSS 倾斜函数
前端·css
ai产品老杨25 分钟前
实现自动化管理、智能控制、运行服务的智慧能源开源了。
前端·javascript·vue.js·前端框架·ecmascript
唐诗26 分钟前
优化 Nextjs 开发的个人博客首页,秒开!
前端·next.js
飞川撸码28 分钟前
web vue 项目 Docker化部署
前端·vue.js·docker·运维开发
风象南30 分钟前
SpringBoot的5种签到打卡实现方案
java·spring boot·后端
默默无闻的白夜30 分钟前
【Vue】初学Vue(setup函数,数据响应式, 脚手架 )
前端·javascript·vue.js
萌萌哒草头将军35 分钟前
⚡⚡⚡Rstack 家族即将迎来新成员 Rstest🚀🚀🚀
前端·javascript·vue.js
1candobetter35 分钟前
JAVA后端开发——多租户
java·开发语言