SSM图书管理系统开发mysql数据库web结构java编程计算机网页源码eclipse项目

一、源码特点

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

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

ssm图书管理系统

前段主要技术 bootstrap.css jquery

后端主要技术 SSM

数据库 mysql

开发工具 eclipse JDK1.8 TOMCAT 8.5

二、功能介绍

本系统模块实现功能如下:

前台功能:

首页浏览

图书浏览

公告浏览

图书借阅、查看借阅信息

用户信息注册、登录、个人信息修改

后台功能:

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

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

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

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

(5)借阅管理:对借阅信息进行删除、修改和查看

(6)消息管理:对消息信息进行删除、修改和查看

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

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

数据库设计

	CREATE TABLE `yonghu` (
	`yhid` 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 '联系地址',
	`zt` VARCHAR(40) default NULL COMMENT '状态',  PRIMARY KEY  (`yhid`)
	) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
	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 `tsfl` (
	`tsflid` int(11) NOT NULL auto_increment,
	`fl` VARCHAR(40) default NULL COMMENT '分类',
	`zt` VARCHAR(40) default NULL COMMENT '状态',  PRIMARY KEY  (`tsflid`)
	) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
	CREATE TABLE `tushu` (
	`tsid` int(11) NOT NULL auto_increment,
	`tsmc` VARCHAR(40) default NULL COMMENT '图书名称',
	`fl` VARCHAR(40) default NULL COMMENT '分类',
	`js` VARCHAR(40) default NULL COMMENT '介绍',
	`zt` VARCHAR(40) default NULL COMMENT '状态',
	`tp` VARCHAR(40) default NULL COMMENT '图片',
	`sm` VARCHAR(40) default NULL COMMENT '说明',
	`jyts` VARCHAR(40) default NULL COMMENT '借阅天数',  PRIMARY KEY  (`tsid`)
	) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
	CREATE TABLE `jieyue` (
	`jyid` int(11) NOT NULL auto_increment,
	`ls` VARCHAR(40) default NULL COMMENT '流水',
	`ts` VARCHAR(40) default NULL COMMENT '图书',
	`yh` VARCHAR(40) default NULL COMMENT '用户',
	`jysj` VARCHAR(40) default NULL COMMENT '借阅时间',
	`ghsj` VARCHAR(40) default NULL COMMENT '归还时间',
	`zt` VARCHAR(40) default NULL COMMENT '状态',  PRIMARY KEY  (`jyid`)
	) ENGINE=InnoDB DEFAULT CHARSET=gb2312;
	CREATE TABLE `xiaoxi` (
	`xxid` int(11) NOT NULL auto_increment,
	`bt` VARCHAR(40) default NULL COMMENT '标题',
	`nr` VARCHAR(40) default NULL COMMENT '内容',
	`fbsj` VARCHAR(40) default NULL COMMENT '发布时间',
	`jsyh` VARCHAR(40) default NULL COMMENT '接收用户',  PRIMARY KEY  (`xxid`)
	) 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;

控制类

 */

	@Resource gonggaoDao gonggaodao;
	@RequestMapping(value="/addPage")
	public String addPage(gonggao gonggao,HttpServletRequest request){
		Map<String,Object> map= new HashMap<String,Object>();
		
		System.out.println("addPageok");
		return "gonggao/gonggaoadd";
	}
	
	@RequestMapping(value="/add")
	public String add(gonggao gonggao,HttpServletRequest request){
		Map<String,Object> map= new HashMap<String,Object>();
		//String name=(String)request.getParameter("name");

		map.put("ggid", gonggao.getGgid());//公告编号

		map.put("bt", gonggao.getBt());//标题

		map.put("nr", gonggao.getNr());//内容

		map.put("fbsj", gonggao.getFbsj());//发布时间



		String ggid=(String)gonggao.getGgid();//公告编号

		String bt=(String)gonggao.getBt();//标题

		String nr=(String)gonggao.getNr();//内容

		String fbsj=(String)gonggao.getFbsj();//发布时间

		gonggaodao.save(map);
		
		
		request.setAttribute("msg", "<script>alert('添加成功');</script>");
		System.out.println("addok");
		return "gonggao/gonggaoadd";
	}
	
	/**删除 
	 * 
	 */
	@RequestMapping(value="/del")
	public String  del(Integer id,HttpServletRequest request,Map<String,Object> map){
	//	Map<String,Object> map= new HashMap<String,Object>();
		String a=(String)request.getParameter("keyid");
		id=Integer.parseInt(a);
		request.setAttribute("msg", "<script>alert('删除成功');</script>");
		gonggaodao.del(id);
		return selectall(null,map,request);
	}
	/**
	 * 修改gonggao信息
	 */
	@RequestMapping(value="/update")
	public String update(gonggao gonggao,HttpServletRequest request,Map<String,Object> map1){
		Map<String,Object> map= new HashMap<String,Object>();
		map.put("ggid", gonggao.getGgid());//公告编号

		map.put("bt", gonggao.getBt());//标题

		map.put("nr", gonggao.getNr());//内容

		map.put("fbsj", gonggao.getFbsj());//发布时间



		String ggid=(String)gonggao.getGgid();//公告编号

		String bt=(String)gonggao.getBt();//标题

		String nr=(String)gonggao.getNr();//内容

		String fbsj=(String)gonggao.getFbsj();//发布时间

		request.setAttribute("msg", "<script>alert('修改成功');</script>");
		gonggaodao.update(map);
		return selectall(null,map1,request);
	}
	/**
	 * 查询gonggao信息
	 */
	@RequestMapping(value="/modify")
	public String modify(Integer id,Map<String,Object> map,HttpServletRequest request){
		String keyid=(String)request.getParameter("keyid");
		List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();
		list=gonggaodao.select(Integer.parseInt(keyid));
		request.setAttribute("ggid", list.get(0).get("ggid"));//公告编号

		request.setAttribute("bt", list.get(0).get("bt"));//标题

		request.setAttribute("nr", list.get(0).get("nr"));//内容

		request.setAttribute("fbsj", list.get(0).get("fbsj"));//发布时间

		
		return "gonggao/gonggaomodify";
	}
	
	@RequestMapping(value="/detail")
	public String detail(Integer id,Map<String,Object> map,HttpServletRequest request){
		String keyid=(String)request.getParameter("keyid");
		List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();
		list=gonggaodao.select(Integer.parseInt(keyid));
		request.setAttribute("ggid", list.get(0).get("ggid"));//公告编号

		request.setAttribute("bt", list.get(0).get("bt"));//标题

		request.setAttribute("nr", list.get(0).get("nr"));//内容

		request.setAttribute("fbsj", list.get(0).get("fbsj"));//发布时间

		return "gonggao/gonggaodetail";
	}
	
	/**
	 * 查询gonggao信息
	 */
	@RequestMapping(value="/selectall")
	public String selectall(Integer id,Map<String,Object> map,HttpServletRequest request){
		List<Map<String,Object>> list= new  ArrayList<Map<String,Object>>();
	Map<String,Object> map1= new HashMap<String,Object>();

	String ggid=(String)request.getParameter("ggid");//公告编号
	if(ggid!=null&&!ggid.equals("")){
	map1.put("ggid",ggid);//公告编号
	}
	String bt=(String)request.getParameter("bt");//标题
	if(bt!=null&&!bt.equals("")){
	map1.put("bt",bt);//标题
	}
	String nr=(String)request.getParameter("nr");//内容

mybatis

<!-- 添加用户信息 -->
<insert id="insertgonggao"  parameterType="java.util.Map">
 insert  into  gonggao(bt,nr,fbsj)  values(#{bt},#{nr},#{fbsj})
</insert>

<delete id="delgonggao" parameterType="int">
 delete  from  gonggao where ggid=#{ggid}
</delete>

<update id="updategonggao" parameterType="java.util.Map">
update gonggao set bt=#{bt},nr=#{nr},fbsj=#{fbsj} where ggid=#{ggid}
</update>

<!--  查询返回的是 list<map> -->
<!-- resultType 就是返回查询结果的类型,而如果是resultMap=则返回的就是你定义的javabean  -->
<select  id="selectgonggao"  parameterType="int" resultType="java.util.Map">
  select  * from gonggao where ggid=#{ggid}
</select>

<!-- resultType 就是返回查询结果的类型,而如果是resultMap=则返回的就是你定义的javabean  -->
<select  id="selectall"  parameterType="java.util.Map" resultType="java.util.Map">
  select  * from gonggao where 1=1
        <if test=" null != bt and bt!=''" >
        and bt like concat(concat('%',#{bt}),'%')
        </if>
        <if test=" null != nr and nr!=''" >
        and nr like concat(concat('%',#{nr}),'%')
        </if>
        <if test=" null != fbsj and fbsj!=''" >
        and fbsj like concat(concat('%',#{fbsj}),'%')
        </if>

</select>

三、注意事项

1、管理员账号:admin密码:admin 数据库配置文件DBO.java

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

3、数据库文件名是jspssmbook.sql 系统名称ssmbook

4、地址:http://127.0.0.1:8080/ssmbook/qt/index.jsp

四 系统实现

源码获取 下方联系卡片↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓↓

相关推荐
Python私教2 小时前
model中能定义字段声明不存储到数据库吗
数据库·oracle
吾日三省吾码2 小时前
JVM 性能调优
java
弗拉唐3 小时前
springBoot,mp,ssm整合案例
java·spring boot·mybatis
oi774 小时前
使用itextpdf进行pdf模版填充中文文本时部分字不显示问题
java·服务器
mqiqe4 小时前
Python MySQL通过Binlog 获取变更记录 恢复数据
开发语言·python·mysql
工业甲酰苯胺4 小时前
MySQL 主从复制之多线程复制
android·mysql·adb
BestandW1shEs4 小时前
谈谈Mysql的常见基础问题
数据库·mysql
重生之Java开发工程师4 小时前
MySQL中的CAST类型转换函数
数据库·sql·mysql
教练、我想打篮球4 小时前
66 mysql 的 表自增长锁
数据库·mysql