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

整合SSM框架案例(一)

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

整合SSM框架案例(一)

整合SSM框架案例(一)

环境:MySql,Eclipse,Tomcat9

项目结构:

运行结果:

第一步:数据库(MYSQL)
CREATE DATAbase `ssmbuild`;

USE `ssmbuild`;

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)



    4.0.0

    com.zkb
    SpringMVC-04-SSMS
    0.0.1-SNAPSHOT
    war

    SpringMVC-04-SSMS Maven Webapp
    
    http://www.example.com

    
        UTF-8
        1.7
        1.7
    

    
        
            junit
            junit
            4.11
            test
        
        
        
            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.2
        
        
            org.mybatis
            mybatis-spring
            2.0.2
        
        
            org.springframework
            spring-webmvc
            5.1.9.RELEASE
        
        
            org.springframework
            spring-jdbc
            5.1.9.RELEASE
        
        



    

    
        SpringMVC-04-SSMS
        
            
                
                    maven-clean-plugin
                    3.1.0
                
                
                
                    maven-resources-plugin
                    3.0.2
                
                
                    maven-compiler-plugin
                    3.8.0
                
                
                    maven-surefire-plugin
                    2.22.1
                
                
                    maven-war-plugin
                    3.2.2
                
                
                    maven-install-plugin
                    2.5.2
                
                
                    maven-deploy-plugin
                    2.8.2
                
            
        

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

    

第三步:创建mybatis-config.xml(放在resources下)



    
    
        
    
    
    
        
    
    
        
    

第四步:创建applicationContext.xml(整合配置xml)


    
    
    

第五步:数据库配置文件 db.properties
driver=com.mysql.jdbc.Driver
url=jdbc:mysql://localhost:3306/ssmbuild?useSSL=true&useUnicode=true&characterEncoding=UTF-8
user=root  (此处要用user  不能用username 因为会跟c3p0连接池冲突)
password=123456
第六步:创建实体类Books.java 对应数据库表
package com.zkb.pojo;
public class Books {
    private int bookID;
    private String bookName;
    private int bookCounts;
    private String detail;
    public Books(int bookID, String bookName, int bookCounts, String detail) {
        super();
        this.bookID = bookID;
        this.bookName = bookName;
        this.bookCounts = bookCounts;
        this.detail = detail;
    }
    public Books() {
        super();
        // TODO Auto-generated constructor stub
    }
    public int getBookID() {
        return bookID;
    }
    public void setBookID(int bookID) {
        this.bookID = bookID;
    }
    public String getBookName() {
        return bookName;
    }
    public void setBookName(String bookName) {
        this.bookName = bookName;
    }
    public int getBookCounts() {
        return bookCounts;
    }
    public void setBookCounts(int bookCounts) {
        this.bookCounts = bookCounts;
    }
    public String getDetail() {
        return detail;
    }
    public void setDetail(String detail) {
        this.detail = detail;
    }
    @Override
    public String toString() {
        return "Books [bookID=" + bookID + ", bookName=" + bookName + ", bookCounts=" + bookCounts + ", detail="
            + detail + "]";
    }
}
第七步:写DAO层接口 BookMapper.java

实现增删改查的操作

package com.zkb.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.zkb.pojo.Books;

public interface BookMapper {
    //增删改查的接口操作
    
    //增加一本书
    int addBook(Books books);
    //查询一本书
    Books queryBookById(@Param("bookID") int id);
    //删除一本书
    int deleteBookById(@Param("bookID") int id);
    //更新一本书
    int updateBook(Books books);

    //查询全部书
    List queryAllBook();

    //根据名字查询书籍
    Books queryBookByName(@Param("bookName") String bookName);
}
第七步:写DAO层接口的实现,BookMapper.xml



    
        insert into books (bookName,bookCounts,detail) values(#{bookName},#{bookCounts},#{detail});
    
    
        delete from books where bookID=#{bookID};
    
    
        update books set bookName=#{bookName},bookCounts=#{bookCounts},detail=#{detail} where bookID=#{bookID}
    
    
        select * from books;
    
    

第八步:写Service层接口,BookService.java(与DAO层接口一样)
package com.zkb.service;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.zkb.pojo.Books;

public interface BookService {

    //增删改查的接口操作

    //增加一本书
    int addBook(Books books);
    //查询一本书
    Books queryBookById(int id);
    //删除一本书
    int deleteBookById(int id);
    //更新一本书
    int updateBook(Books books);

    //查询全部书
    List queryAllBook();

    //通过书名查询书籍
    Books queryBookByName( String bookName);
}
第九步:写Service层实现,BookServiceImpl.java

注意:业务层调用Dao层的时候要私有进去,然后给一个Set方法

package com.zkb.service;

import java.util.List;

import com.zkb.dao.BookMapper;
import com.zkb.pojo.Books;

public class BookServiceImpl implements BookService{

    //业务层调DAO层
    private BookMapper bookMapper;

    public void setBookMapper(BookMapper bookMapper) {
        this.bookMapper = bookMapper;
    }

    @Override
    public int addBook(Books books) {
        return bookMapper.addBook(books);
    }

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

    @Override
    public int deleteBookById(int id) {
        return bookMapper.deleteBookById(id);
    }

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

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

    @Override
    public Books queryBookByName(String bookName) {
        return bookMapper.queryBookByName(bookName);
    }
}
第十步:整合Spring层 Spring-dao.xml



    
    
    
    
    
        
        
        
        
        
        
        
        
        
        
        
        
        

    
    
    
        
        
        
    
    
    
        
        
        
        
    


第十一步:写Sping-Service层 , spring-service.xml



    
    
    
    
    
        
    
    
    
        
    
    

第十二步:SpringMVC层(首先配置web.xml)




    
    
        springmvc
        org.springframework.web.servlet.DispatcherServlet
        

        
            contextConfigLocation
            classpath:applicationContext.xml
        
        
        1

    
    
        springmvc
        /
    

    
        encoding
        com.zkb.filter.EncodingFilter
    
    
        encoding
        /*
    
    
        15
    


第十三步:在resources下 写spring-mvc.xml配置文件



    
    
    
    
    
    
    
    
        
        
    

至此,配置文件已经全部完成,增加功能只需要在Controller和jsp层写就可以了!

第十四步:写Controller层, BookController.java
package com.zkb.controller;

import java.util.ArrayList;
import java.util.List;

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 com.zkb.pojo.Books;
import com.zkb.service.BookService;

@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";
    }

    //跳转到增加书籍的页面
    @RequestMapping("/toAddBook")
    public String toAddPaper() {
        return "addBook";
    }
    //添加书籍的请求
    @RequestMapping("/addBook")
    public String addBook(Books books) {
        System.out.println("addBook=>"+books);
        bookService.addBook(books);
        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);
        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";
    }
}
第十五步:index.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>

    

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



        
            进入书籍页面
        
    

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


    
        
        书籍展示
        

        

    
    
        
            
                
                    
                        
                            书籍列表————显示所有书籍
                        
                    
                
                
                    
                        新增书籍
                        显示全部书籍
                    
                    
                    
                        
                            
                            
${error }
书籍编号 书籍名称 书籍数量 书籍详情 操作
${book.bookID } ${book.bookName } ${book.bookCounts } ${book.detail } 修改  |  删除
第十七步:addBook.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>


    
        
        增加书籍
        
    
    

        
            
                
                    
                        
                            新增书籍
                        
                    
                
            
            
第十八步:updateBook.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>


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

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

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