最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

mybatis實現(xiàn)圖書管理系統(tǒng)

 更新時間:2020年06月17日 15:08:15   作者:buerba  
這篇文章主要為大家詳細介紹了mybatis實現(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了mybatis實現(xiàn)圖書管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

在項目開始前先將數(shù)據(jù)庫中的關系表建立,先分析需要幾個模塊表,用戶,圖書,類別,租借,購買,簡單的分成這五個。

用戶表

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)
);

在表中簡單插入數(shù)據(jù)

建立工程

1、配置環(huán)境導入jar包

創(chuàng)建resources文件

2、建立實體類、實現(xiàn)接口和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指定關聯(lián)的接口-->
<mapper namespace="cn.kgc.kb07.dao.BookDao">
<!--查詢語句-->
</mapper>

實現(xiàn)登錄功能

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>

更多學習資料請關注專題《管理系統(tǒng)開發(fā)》。

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 深入理解SpringMVC的參數(shù)綁定與數(shù)據(jù)響應機制

    深入理解SpringMVC的參數(shù)綁定與數(shù)據(jù)響應機制

    本文將深入探討SpringMVC的參數(shù)綁定方式,包括基本類型、對象、集合等類型的綁定方式,以及如何處理參數(shù)校驗和異常。同時,本文還將介紹SpringMVC的數(shù)據(jù)響應機制,包括如何返回JSON、XML等格式的數(shù)據(jù),以及如何處理文件上傳和下載。
    2023-06-06
  • 基于JavaScript動態(tài)規(guī)劃編寫一個益智小游戲

    基于JavaScript動態(tài)規(guī)劃編寫一個益智小游戲

    最近在學習動態(tài)規(guī)劃相關的知識,所以本文將利用動態(tài)規(guī)劃編寫一個簡單的益智小游戲,文中的示例代碼講解詳細,感興趣的小伙伴可以了解一下
    2023-06-06
  • Java String 對象(你真的了解了嗎)

    Java String 對象(你真的了解了嗎)

    這篇文章主要介紹了Java String 對象(你真的了解了嗎),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-10-10
  • JPA 加鎖機制及@Version版本控制方式

    JPA 加鎖機制及@Version版本控制方式

    這篇文章主要介紹了JPA 加鎖機制及@Version版本控制方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-10-10
  • Java實現(xiàn)跨服務器上傳文件功能

    Java實現(xiàn)跨服務器上傳文件功能

    這篇文章主要為大家詳細介紹了Java實現(xiàn)跨服務器上傳文件功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-01-01
  • Idea中使用Git的流程

    Idea中使用Git的流程

    這篇文章主要介紹了Idea中使用Git的流程,git是目前流行的分布式版本管理系統(tǒng)。本文通過圖文并茂的形式給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友參考下吧
    2020-09-09
  • Java WeakHashMap案例詳解

    Java WeakHashMap案例詳解

    這篇文章主要介紹了Java WeakHashMap案例詳解,本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-08-08
  • Java對數(shù)器驗證算法詳解

    Java對數(shù)器驗證算法詳解

    這篇文章主要介紹了Java對數(shù)器驗證算法,Java對數(shù)函數(shù)的計算方法非常有問題,然而在API中卻有驚人的誤差。但是假如運用了以下的方法,用Java處理數(shù)字所碰到的小麻煩就可以輕而易舉的解決了
    2023-04-04
  • 一篇文章弄懂Spring MVC的參數(shù)綁定

    一篇文章弄懂Spring MVC的參數(shù)綁定

    這篇文章主要給大家介紹了關于如何通過一篇文章弄懂Spring MVC的參數(shù)綁定,文中通過示例代碼以及圖文介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-02-02
  • BloomFilter如何快速檢查用戶名重復

    BloomFilter如何快速檢查用戶名重復

    這篇文章主要介紹了BloomFilter如何快速檢查用戶名重復問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-04-04

最新評論

页游| 武城县| 龙胜| 宁化县| 永德县| 开江县| 子长县| 陇西县| 花莲县| 青海省| 同德县| 水城县| 明光市| 平和县| 林甸县| 宁河县| 师宗县| 岑溪市| 盐山县| 遵义市| 盘山县| 盐亭县| 长宁区| 双牌县| 合作市| 咸宁市| 达日县| 蒙城县| 仪陇县| 镇宁| 孟州市| 高台县| 依安县| 沅江市| 堆龙德庆县| 新邵县| 南木林县| 东光县| 孙吴县| 江都市| 抚松县|