目录

简介

先看看效果图

文件目录

​ ​

登录注册相关代码

登录,注册,菜单jsp页面

与登录,注册相关的controller代码


简介

本系统是基于SSM框架的图书管理系统,非常简单!!

实现功能:

1.实现通过访问数据库进行登录,错误则提示用户密码错误

2.实现用户注册功能,注册将会将新的用户加入数据库中,如果数据库中有相同的用户,则提示“该用户已存在”。登录注册功能都会判空;

3.登录成功之后将会进入目录,目录中选择注销用户,则会将回沪从数据库中删除,该用户无法再次登录,并跳转回登录界面;

4.进入管理界面将会进入图书管理界面,该界面实现分页展示,并对书籍总数进行统计

5.在管理界面实现了对书籍的增删查改。

先看看效果图

登录界面

注册界面

菜单界面

实现分页的管理界面

添加界面

删除

修改界面

文件目录

 

登录注册相关代码

登录,注册,菜单jsp页面

login.jsp界面

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE HTML>
<html>
<title>登录</title>
<script type="text/javascript">//确定按钮function su(){document.forms[0].submit();}//取消按钮function cancel(){document.forms[0].action = "";}
</script>
<body><form action="${pageContext.request.contextPath}/admin/login" modelAttribute="auser" method="post"><table align="center"><tr><td>用户名:</td><td><input type="text" name="aname" placeholder="请输入用户名"/><br></td></tr><tr><td>密&nbsp;&nbsp;&nbsp;码:</td><td><input type="password" name="apwd" placeholder="请输入密码"/><br></td></tr><tr><td><input type="submit" value="登录" onclick="su()"/></td><td><input type="reset" value="取消" onclick="cancel()"/></td><td><a href="${pageContext.request.contextPath}/toregister"><input type="button" value="注册" /></a></td></tr></table>
</form>
${msg}</body>
</html>

在此界面进行登录,点击登录将通过from表单action指定的路径进行提交至Controller(AdminController文件)

点击注册,将会通过超链接的路径访问对应的controller中的方法

regist.jsp 页面

<%@ page language="java" contentType="text/html; charset=utf-8" pageEncoding="utf-8"%>
<!DOCTYPE html>
<html>
<title>注册</title>
<script type="text/javascript">//确定按钮function su(){document.forms[0].submit();}//取消按钮function cancel(){document.forms[0].action = "";}
</script>
<body>
<form action="${pageContext.request.contextPath}/admin/adduser" modelAttribute="auser" method="post"><table align="center"><tr><td>用户名:</td><td><input type="text" name="aname" placeholder="请输入用户名"/><br></td></tr><tr><td>密&nbsp;&nbsp;&nbsp;码:</td><td><input type="password" name="apwd" placeholder="请输入密码"/><br></td></tr><tr><td><input type="submit" value="注册" onclick="su()"/></td><td><input type="reset" value="取消" onclick="cancel()"/></td></tr></table></form>
${msg}
</body>
</html>

into.jsp(菜单界面)


<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>菜单</title>
</head>
<body><form ><table align="center"><tr><td><a href="${pageContext.request.contextPath}/books/selectbooks"style="align-content: center">进入书城</a></td></tr><tr><td><a href="${pageContext.request.contextPath}/admin/cancel?aname=${auser.aname}"style="align-content: center">注销用户</a></td></tr><tr><td><a href="${pageContext.request.contextPath}/quit"style="align-content: center">退出登录</a></td></tr></table>
</form></body>
</html>

与登录,注册相关的controller代码

控制登录的controller

AdminController以及创建

package controller;import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;
import po.Auser;
import service.AdminService;import javax.annotation.Resource;@Controller
public class AdminController {@ResourceAdminService adminService;//    @RequestMapping("/admin")
//    public String toLogin(@ModelAttribute("auser") Auser auser){
//        return "login";//已配置视图解析器,在springmvc-servlet.xml文件中
//    }
//@ModelAttribute("user") User user注释方法参数,参数user的值来源于addAccount()方法中的model属性。
//    此时如果方法体没有标注@SessionAttributes("user"),那么scope为request,如果标注了,那么scope为session//Model会自动的把对象存到Request域中@RequestMapping("/admin/login")public String login(Auser auser, Model model){boolean loginsucc = adminService.isLogin(auser);boolean isnull = adminService.isnull(auser);if (isnull){if (loginsucc){return "into";}else {model.addAttribute("msg", "用户名或密码错误!");return "login";}}else {model.addAttribute("msg" , "用户名和密码不能为空!!");return "login";}}@RequestMapping("/admin/cancel")public String cancel(Auser auser, Model model){adminService.Cancel(auser);model.addAttribute("msg", "注销成功");//将后面的值传到前端相应名字的变量上面,就是后端向前端传值。return "login";}@RequestMapping("/toregister")public String toregister(){return "register";}@RequestMapping("/admin/adduser")public String addadmin(Auser auser, Model model){//判断该用户是否存在,存在返回TRUE,跳转回login界面并提示用户存在//不存在返回FALSE,对数据库进行增加操作,并返回登录界面提示注册成功boolean regsucc = adminService.isLogin(auser);boolean isnull = adminService.isnull(auser);if (isnull){if (regsucc){model.addAttribute("msg", "该用户已存在!");return "register";}else {adminService.addAuser(auser);model.addAttribute("msg", "注册成功");return "login";}}else {model.addAttribute("msg", "用户名或密码不能为空!");return "register";}}@RequestMapping("/quit")public String quit(){return "login";}
}

@Controller

是注明这是controller层的代码

@Resource

是将service进行依赖注入,既不指定name属性,也不指定type属性,则自动按byName方式进行查找。如果没有找到符合的bean,则回退为一个原始类型进行查找,如果找到就注入。

@RequestMapping

在Spring MVC 中使用 @RequestMapping 来映射请求,也就是通过它来指定控制器可以处理哪些URL请求,相当于Servlet中在web.xml中配置

Controller中的方法返回是都是视图信息,在这段代码中由于配置了视图解析器,所以可以直接写出jsp文件的名字,前缀后缀都在视图解析器中配置。

AdminService

这是AdminServiceImpl的接口

package service;import po.Auser;public interface AdminService {boolean isLogin(Auser auser);//是否可以登录Integer Cancel(Auser auser);//注销用户int addAuser(Auser auser);//注册用户boolean isnull(Auser auser);//判断用户名和密码是否为空}

AdminServiceImpl

package service;import dao.AdminDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import po.Auser;@Service(value = "adminService")
public class AdminServiceImpl implements AdminService {@AutowiredAdminDao adminDao;@Overridepublic boolean isLogin(Auser auser) {Integer rst =  adminDao.findAUserCount(auser);//在数据库中查看有多少符合用户名和密码的用户,多于0个则可以登录,否则不行if(rst>0){return true;}else {return false;}}@Overridepublic Integer Cancel(Auser auser) {int cancel=adminDao.CancelAuser(auser);return cancel;}@Overridepublic int addAuser(Auser auser) {int addAuser=adminDao.addAuser(auser);return addAuser;}@Overridepublic boolean isnull(Auser auser) {if (auser.getAname()==""||auser.getApwd()==""){return false;}else {return true;}}}

AdminDao

//AdminDao也是一个接口,不要建成了Java类!!
package dao;import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Repository;
import po.Auser;@Repository
//@Mapper注释用来表示该接口类的实现类对象交给mybatis底层创建,然后交由Spring框架管理。
@Mapper
public interface AdminDao {//这里函数名需要和Mybatis文件中的id一一对应,必须一模一样Integer findAUserCount(Auser auser);Integer CancelAuser(Auser auser);int addAuser(Auser auser);
}

AdminMapper.xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapperPUBLIC "-//mybatis.org//DTD Mapper 3.0//EN""http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<!-- com.dao.AdminDao对应Dao接口 -->
<mapper namespace="dao.AdminDao"><!-- 查询用户信息 --><select id="findAUserCount"  resultType="Integer" parameterType="auser">select COUNT(*) from ausertablewhere aname=#{aname} AND  apwd=#{apwd}</select><!--   注销用户 --><delete id="CancelAuser" parameterType="auser" >delete from ausertablewhere aname=#{aname}</delete><!--  注册用户--><insert id="addAuser" parameterType="auser">insert into ausertable (aname, apwd)values (#{aname},#{apwd})</insert></mapper>

基于SSM框架的简单图书管理系统相关推荐

  1. 基于SSM框架开发的图书管理系统

    基于SSM框架开发的图书管理系统 项目需求 数据库设计 图书管理数据库代码 建立一个普通的JavaWeb项目 首先创建动态web项目 导入spring+MyBatis+SpringMVC的jar包文件 ...

  2. 基于SSM框架的借阅图书管理系统

    目录 一.功能 二.开发环境 三.系统项目文件组织结构 四.数据库设计 1.用户表 2.图书表 3.借阅记录表 五.页面展示 1.登录页面 2.用户端 3.管理员端 六.源码 一.功能 本系统后台使用 ...

  3. 帮忙写基于SSM框架的购物商城管理系统

    SSM(Spring+SpringMVC+MyBatis)框架集由Spring.MyBatis两个开源框架整合而成(SpringMVC是Spring中的部分内容).常作为数据源较简单的web项目的框架 ...

  4. 基于ssm框架实现网上购物管理系统【附项目源码+论文说明】

    基于ssm框架实现网上购物管理系统演示 摘要 本论文主要论述了如何使用JAVA语言开发一个网上购物系统,本系统将严格按照软件开发流程进行各个阶段的工作,采用B/S架构,面向对象编程思想进行项目开发.在 ...

  5. 基于SSM框架实现的驾校管理系统

    <基于SSM框架实现的驾校管理系统> 后台框架:Spring.SpringMVC.MyBatis 数据库:MySQL 本系统主要包含了用户管理.教练信息管理.车辆信息管理.题库信息管理多个 ...

  6. 基于SSM框架的CMS内容管理系统的设计与实现

    基于SSM框架的CMS内容管理系统的设计与实现(付源码+论文) 工作任务: 1.通过学习和查找相关的资料,掌握SpringMVC.Spring.Mybatis框架的搭建及开发:通过学习掌握freema ...

  7. 基于SSM框架实现的汽车维修管理系统【源码+数据库】

    一.项目简介 本项目是一套基于SSM框架实现的汽车维修管理系统,主要针对计算机相关专业的正在做毕设的学生与需要项目实战练习的Java学习者. 包含:项目源码.数据库脚本等,该项目附带全部源码可作为毕设 ...

  8. 基于ssm框架的小区物业管理系统

    摘 要 计算机的普及和互联网技术的飞速发展,使得信息化管理成为了各个企业的主流管理模式.物业信息管理系统就是利用计算机技术.网络技术进行物业信息化管理.物业管理员与业主之间不需要面对面进行交流,只需要 ...

  9. Java毕业设计_基于SSM框架的图片素材管理系统的设计与实现

    基于SSM框架的图片素材管理系统的设计与实现 基于SSM框架的图片素材管理系统的设计与实现mysql数据库创建语句 基于SSM框架的图片素材管理系统的设计与实现oracle数据库创建语句 基于SSM框 ...

  10. 基于SSM框架的ERP生产管理系统源码 这是一个ERP生产管理系统

    基于SSM框架的ERP生产管理系统源码 这是一个ERP生产管理系统. 主要包括:计划进度.设备管理.工艺监控.物料监控.人员监控.质量监控.系统管理7大模块,每个模块细分了功能,丰富全面. 系统后台整 ...

最新文章

  1. [UWP]了解模板化控件(5):VisualState
  2. 为什么经营婚姻要像热恋一样
  3. 台湾国立大学郭彦甫Matlab教程笔记(14)polynomial differentiation多项式微分
  4. 虚拟计算机配置文件,如何更改虚拟内存位(可以解决由于启动计算机时出现了页面文件配置问题……).docx...
  5. Python--day47--mysql索引注意事项
  6. Hadoop(MapR)分布式安装及自动化脚本配置
  7. Spring MVC竟然有5种参数绑定的方式?你知道几种?
  8. android gallery自动播放,可循环显示图像的Android Gallery组件
  9. pytest配置文件pytest.ini
  10. oracle扩容日志文件,ORACLE 加大日志文件
  11. 【设计】拟物时钟-夜间模式切换
  12. 再谈JavaScript时钟中的16ms精度问题.
  13. 语音识别合成助手-语音识别合成助手下载 v20190223免费版--pc6下载站
  14. gamma分布 pytorch_pytorch之添加BN的实现
  15. Flash 显示全景图
  16. java游戏+弹幕_java弹幕小游戏1.0版本
  17. AR入门之动画的制作与导入
  18. 渗透测试成功的8个关键
  19. linux裸设备文件系统,关于裸设备,文件系统,CIO/DIO
  20. pe卸载win10更新补丁_win10补丁,小编告诉你如何卸载Win10上已安装的更新补丁

热门文章

  1. 思科交换机绑定MAC
  2. 网络游戏加速器软件市场现状研究分析-
  3. 一键搞定JavaEE应用,JRE+Tomcat+Mysql-JaveEE绿色运行环境JTM0.9版
  4. Java购物车前端代码_JavaWeb后台购物车类实现代码详解
  5. linux 安装php7.3
  6. 华为OLT(MA5680T)查看光模块信息及光衰
  7. 在vscode运行java代码
  8. 登录 Unix 操作系统
  9. 微信小程序+java后台
  10. Crystal Ball—蒙地卡罗仿真软件