栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SSM—整合

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SSM—整合

创建一个存放书籍数据的数据库表

CREATE DATAbase `ssmbuild`;

USE `ssmbuild`;

DROp TABLE IF EXISTS `books`;

CREATE TABLE `books` ( 
`bookID` INT(10) NOT NULL AUTO_INCREMENT COMMENT '书id', `bookName` VARCHAr(100) NOT NULL COMMENT '书名', `bookCounts` INT(11) NOT NULL COMMENT '数量', `detail` VARCHAr(200) NOT NULL COMMENT '描述',
 KEY `bookID` (`bookID`)
 ) ENGINE=INNODB DEFAULT CHARSET=utf8 

INSERT INTO `books`
(`bookID`,`bookName`,`bookCounts`,`detail`)
VALUES 
(1,'Java',1,'从入门到放弃'), 
(2,'MySQL',10,'从删库到跑路'), 
(3,'Linux',5,'从进门到进牢');
依赖(pom.xml)
    
        
        
            junit
            junit
            4.12
        

        
        
            org.projectlombok
            lombok
            1.18.10
        


        
        
            mysql
            mysql-connector-java
            5.1.47
        
        
        
            com.mchange
            c3p0
            0.9.5.2
        

        
        
            javax.servlet
            servlet-api
            2.5
        
        
            javax.servlet.jsp
            jsp-api
            2.2
        
        
            javax.servlet
            jstl
            1.2
        

        
        
            org.mybatis
            mybatis
            3.5.9
        
        
            org.mybatis
            mybatis-spring
            2.0.7
        

        
        
            org.springframework
            spring-webmvc
            5.1.9.RELEASE
        
        
            org.springframework
            spring-jdbc
            5.1.9.RELEASE
        

        
            org.aspectj
            aspectjweaver
            1.9.4
        
    

    
    
        
            
                src/main/java
                
                    ***.xml
                
                false
            
            
                src/main/resources
                
                    ***.xml
                
                false
            
        
    

建立基本结构和配置框架

com.muzi.pojo

Books

com.muzi.dao

BookMapper

 BookMapper.xml

com.muzi.service

BookService

BookServiceImpl

com.muzi.controlle

BookController

resources         

    applicationContext.xml
    
    
        
        
        
    

    database.properties
    jdbc.driver=com.mysql.jdbc.Driver
    jdbc.url=jdbc:mysql://localhost:3306/mybatis?characterEncoding=utf-8&serverTimezone=UTC&useSSL=false
    jdbc.username=root
    jdbc.password=root

    mybatis-config.xml
    
    
    
        
        
        
            
        
    
        
            
        
    

    spring-dao.xml
    
    
        
    
    
        
        
    
        
        
            
            
            
            
    
            
            
            
            
            
            
            
            
            
            
        
    
    
        
        
            
            
            
        
    
        
        
            
            
            
            
        
    
    
    

    spring-mvc.xml
    
    
        
        
        
        
        
        
        
        
            
            
        
    

com.muzi.pojo

Books

package com.muzi.pojo;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class Books {
    private int bookID;
    private String bookName;
    private int bookCounts;
    private String detail;

}

com.muzi.dao

BookMapper

package com.muzi.dao;

import com.muzi.pojo.Books;
import org.apache.ibatis.annotations.Param;

import java.awt.print.Book;
import java.util.List;

public interface BookMapper {

    //增加一个Book
    int addBook(Books book);

    //根据id删除一个Book
    int deleteBookById(@Param("bookId") int id);

    //更新Book
    int updateBook(Books books);

    //根据id查询,返回一个Book
    Books queryBookById(@Param("bookId") int id);

    //查询全部Book,返回list集合
    List queryAllBook();


    Books queryBookByName(@Param("bookName")String bookName);
}

 BookMapper.xml






    
    
        insert into ssmbuild.books(bookName, bookCounts, detail)
        values (#{bookName}, #{bookCounts}, #{detail})
    

    
    
        delete
        from ssmbuild.books
        where bookID = #{bookId}
    

    
    
        update ssmbuild.books
        set bookName   = #{bookName},
            bookCounts = #{bookCounts},
            detail     = #{detail}
        where bookID = #{bookID}
    

    
    
        SELECT *
        from ssmbuild.books
    
    
    

com.muzi.service

BookService

package com.muzi.service;

import com.muzi.pojo.Books;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface BookService {
    //增加一个Book
    int addBook(Books book);

    //根据id删除一个Book
    int deleteBookById(int id);

    //更新Book
    int updateBook(Books books);

    //根据id查询,返回一个Book
    Books queryBookById(int id);

    //查询全部Book,返回list集合
    List queryAllBook();

    Books queryBookByName(String bookName);

}

BookServiceImpl

package com.muzi.service;

import com.muzi.controller.BookController;
import com.muzi.dao.BookMapper;
import com.muzi.pojo.Books;

import java.util.List;

//***1.实现BookService然后重写方法
public class BookServiceImpl implements BookService{
//***2.service调dao层 : 组合dao层,然后给个set方法
    private BookMapper bookMapper;
    public void setBookMapper(BookMapper bookMapper) {
        this.bookMapper = bookMapper;
    }


//***3.




    public int addBook(Books books) {
        return bookMapper.addBook(books);
    }
    public int deleteBookById(int id) {
        return bookMapper.deleteBookById(id);
    }

    public int updateBook(Books books) {
        return bookMapper.updateBook(books);
    }

    public Books queryBookById(int id) {
        return bookMapper.queryBookById(id);
    }

    public List queryAllBook() {
        return bookMapper.queryAllBook();
    }

    public Books queryBookByName(String bookName) {
        return bookMapper.queryBookByName(bookName);
    }
}

com.muzi.controlle

BookController

package com.muzi.controller;

import com.muzi.pojo.Books;
import com.muzi.service.BookService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;

import java.awt.print.Book;
import java.util.ArrayList;
import java.util.List;

@Controller
@RequestMapping("/book")
public class BookController {
    //controller 调 service
    @Autowired
    @Qualifier("BookServiceImpl")
    private BookService bookService;


    //查询全部的书籍,并且返回到一个书籍展示页面
    @RequestMapping("/allBook")
    public String list(Model model) {
        List list = bookService.queryAllBook();
        model.addAttribute("list", list);

        //这里的  return "allBook"是跳转到   / WEB-INF / jsp / allBook
        return "allBook";
    }

    //跳转到添加书籍页面
    @RequestMapping("/toAddBook")
    public String toAddPaper() {
        return "addBook";
    }

    //添加书籍的请求
    @RequestMapping("/addBook")
    public String addBook(Books books) {
        System.out.println(books);
        bookService.addBook(books);
        //重定向到我们的    @RequestMapping("/allBook")请求
        return "redirect:/book/allBook";
    }

    //跳转到修改页面
    @RequestMapping("/toUpdate")
    public String toUpdatePaper(int id, Model model) {
        Books books = bookService.queryBookById(id);
        model.addAttribute("QBook", books);
        return "updateBook";
    }


    //修改书籍
    @RequestMapping("/updateBook")
    public String updateBook(Books books) {
        System.out.println("updateBook=>" + books);
        bookService.updateBook(books);
        //重定向到我们的    @RequestMapping("/allBook")请求
        return "redirect:/book/allBook";
    }

    //删除书籍
    @RequestMapping("/deleteBook/{bookId}")
    public String deleteBook(@PathVariable("bookId") int id){
        bookService.deleteBookById(id);
        return "redirect:/book/allBook";
    }



    //查询书籍
    @RequestMapping("/queryBook")
    public String queryBook(String queryBookName,Model model){
        Books books = bookService.queryBookByName(queryBookName);
        List list = new ArrayList();
        list.add(books);

        if (books==null){
            list=bookService.queryAllBook();
            model.addAttribute("error","未查到");
        }
        model.addAttribute("list",list);
        return "allBook";
    }
}

web 

index.jspWEB-INF

web.xmljsp

addBook.jspallBook.jspupdateBook.jsp

web 

index.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>

  
    首页
    
      a{
        text-decoration:none;
        color:black;
        font-size:18px;
      }

      h3{

        width:180px;
        height: 38px;
        margin: 100px auto;
        text-align: center;
        line-height: 38px;
        background: deepskyblue;
        border-radius: 5px;
      }
    
  
  

  进入书籍页面

  

WEB-INF

web.xml



    
    
        springmvc
        org.springframework.web.servlet.DispatcherServlet
        
            contextConfigLocation
            classpath:applicationContext.xml
        
        1
    
    
        springmvc
        /
    

    
    
        encodingFilter
        org.springframework.web.filter.CharacterEncodingFilter
        
            encoding
            utf-8
        
    
    
        encodingFilter
        /*
    

    
    
        15
    

jsp

addBook.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title
    <%--BootStrap美化界面--%>
    
    
        <%--屏幕分成12列--%>
        
            
                
                    新增书籍
                
            
        
    
    <%--BootStrap官网拿"表单"数据  name属性保证pojo属性名称一致 required保证必须提交--%>

<%--    required必须填完表格才能提交 --%>
    

allBook.jsp
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    书籍展示
    <%--BootStrap美化界面--%>
    



    
        
            
                
                     书籍列表——————————显示所有书籍
                
            
        
        .
            <%-- 这里的 
                  跳转到 controller/BookController中的   @RequestMapping("/toAddBook")
                   然后再跳转到addBook.jsp
            --%>

            
                新增书籍
                显示全部书籍

            

            
                <%--查询书籍--%>
                
${error}
<%--书籍从数据库中查询出来,从这个list中遍历出来,foreach--%>
书籍编号 书籍名称 书籍数量 书籍详情 操作
${book.bookID} ${book.bookName} ${book.bookCounts} ${book.detail} 修改   |   删除

updateBook.jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    Title
    <%--BootStrap美化界面--%>
    
    
        <%--屏幕分成12列--%>
        
            
                
                    修改书籍
                
            
        
    
    <%--BootStrap官网拿"表单"数据  name属性保证pojo属性名称一致 required保证必须提交--%>
    
<%--提交失败:没有回显:问题: 1. 事务没有提交 2. sql执行失败,没有提交BookId,需要前端的隐藏域--%> <%--添加bookId的隐藏域--%>

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/786105.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号