mybatis实现图书管理系统

时间:2021-05-19

本文实例为大家分享了mybatis实现图书管理系统的具体代码,供大家参考,具体内容如下

在项目开始前先将数据库中的关系表建立,先分析需要几个模块表,用户,图书,类别,租借,购买,简单的分成这五个。

用户表

CREATE TABLE IF NOT EXISTS `user`(user_id INT(11) PRIMARY KEY AUTO_INCREMENT,user_name VARCHAR(20),`password` VARCHAR(20),grade INT(11),phone VARCHAR(20),user_type INT(11));

图书表

CREATE TABLE IF NOT EXISTS books (book_id INT(11) PRIMARY KEY AUTO_INCREMENT,book_name VARCHAR(50),price DOUBLE(10,2),store INT(11),des VARCHAR(50),book_type INT(11));

类别

CREATE TABLE IF NOT EXISTS `booktype`(type_id INT(11) PRIMARY KEY AUTO_INCREMENT,type_name VARCHAR(20),default_date INT(11),delay_money_per_day DOUBLE(10,2));

租借

CREATE TABLE IF NOT EXISTS borrow(borrow_id INT(11) PRIMARY KEY AUTO_INCREMENT,book_id INT(11),borrow_date DATE,back_date DATE,delay_money DOUBLE(10,2));

购买

CREATE TABLE IF NOT EXISTS shop(buy_id INT(11) PRIMARY KEY AUTO_INCREMENT,book_id INT(11),record_id INT(11),buy_date DATE,buy_num INT(11),total_price DOUBLE(10,2));

在表中简单插入数据

建立工程

1、配置环境导入jar包

创建resources文件

2、建立实体类、实现接口和xml文件

xml文件的格式

<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"><!-- namespace指定关联的接口--><mapper namespace="cn.kgc.kb07.dao.BookDao"><!--查询语句--></mapper>

实现登录功能

1、Sqlsession配置文件使用单例模式

public class MapperConfig { private static SqlSessionFactory factory; static{ SqlSessionFactoryBuilder builder=new SqlSessionFactoryBuilder(); try { InputStream is= Resources.getResourceAsStream("mybatis-cfg.xml"); factory=builder.build(is); } catch (IOException e) { e.printStackTrace(); } } public static SqlSession getSession(){ return factory.openSession(true); } public static void closeSession(SqlSession session){ if(session!=null){ session.close(); } } private MapperConfig(){ }}

2、建立登陆jsp文件

<%@ page contentType="text/html;charset=UTF-8" language="java" %><html> <head> <title>登录页面</title> </head> <body> <% Object msg=session.getAttribute("msg"); Object o=session.getAttribute("user"); if(msg!=null&& msg.equals("登录成功")&&o!=null){ User u=(User)o; %> <h1>恭喜登录:${user.user_name} ${user.user_type==99?"超级管理员":""}</h1> <% if(u.getUser_type()==99){ %> <p><a href="userList.do" rel="external nofollow" >点击展示所有用户</a></p> <% }else{ %> <p><a href="bookList.jsp" rel="external nofollow" >客户入口</a> </p> <% } } else{ %> <form action="login.do" method="get"> <p>用户名</p> <P><input type="text" name="username" required></P> <p>密码</p> <p><input type="text" name="password" required></p> <p><input type="submit"></p> </form> <% session.removeAttribute("msg"); } %> </body></html>

3、建立UserService,UserServlet文件

UserService实体文件

public class UserServiceImpl implements UserService{ private SqlSession session; public UserServiceImpl(){ session= MapperConfig.getSession(); } @Override public User queryUser(String user_name,String password) { User user=session.getMapper(UserDao.class).queryUserByNameAndPwd(user_name,password); MapperConfig.closeSession(session); return user; }}

UserServlet实体文件

public class UserServlet extends HttpServlet { @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { String user_name=req.getParameter("username"); String password=req.getParameter("password"); UserService service=new UserServiceImpl(); User user=service.queryUser(user_name,password); System.out.println(user); if(user!=null){ req.getSession().setAttribute("msg", "登录成功"); req.getSession().setAttribute("user", user); resp.sendRedirect("index.jsp"); }else{ System.out.println(2); req.getSession().setAttribute("msg", "登录失败"); resp.sendRedirect("index.jsp"); } }}

3、配置web.xml文件

<servlet> <servlet-name>userServlet</servlet-name> <servlet-class>cn.kgc.kb07.servlet.UserServlet</servlet-class> </servlet> <servlet-mapping> <servlet-name>userServlet</servlet-name> <url-pattern>/login.do</url-pattern></servlet-mapping>

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章