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

7.整合SSM框架(上):【基本环境搭建、Mybatis层+spring层+springmvc层编写】

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

7.整合SSM框架(上):【基本环境搭建、Mybatis层+spring层+springmvc层编写】

文章目录
  • Navicat 创建ssmbuild数据库的books表
  • 基本环境搭建
    • 1.创建项目ssmbuild
    • 2.添加ssmbuild.pom依赖
    • 3.建立基本结构和配置框架
  • Mybatis层编写
    • 1.数据库配置文件 database.properties
    • 2.IDEA关联数据库:连接数据库,并测试是否连接到books表
    • 3. 编写MyBatis的核心配置文件
    • 4. 编写数据库对应的实体类 com.kuang.pojo.Books
    • 5. 编写Dao层的 Mapper接口
    • 6. 编写接口对应的 BookMapper.xml 文件,需要导入MyBatis的包
    • 7. 编写Service层的接口和实现类
  • Spring层编写
    • 1、Spring整合MyBatis:---->相关的配置文件spring-dao.xml
    • 2. Spring整合service层:---->相关的配置文件spring-service.xml
  • SpringMVC层编写
    • 1. 添加web内核,编写web.xml
    • 2. 编写 spring-mvc.xml
    • 3. Spring配置整合文件,applicationContext.xml
  • 最终项目结构:

环境:

  • IDEA 2019
  • MySQL 8
  • Tomcat 9
  • Maven 3.6

要求:

  • 需要熟练掌握MySQL数据库,Spring,JavaWeb及MyBatis知识,简单的前端知识;
Navicat 创建ssmbuild数据库的books表

怎么操作参考:Eclipse运行第四个程序:javaweb实验4-2—采用JSP+Servlet+JavaBean+JDBC方式开发一个Web登录程序


数据库环境

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

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,'从进门到进牢');
基本环境搭建 1.创建项目ssmbuild




2.添加ssmbuild.pom依赖

    
        
        
            junit
            junit
            4.12
        
        
        
            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
        
          
        
            org.projectlombok
            lombok
            1.18.12
        
        
    



    
        
            
                src/main/java
                
                    ***.xml
                
                false
            
            
                src/main/resources
                
                    ***.xml
                
                false
            
        
    
3.建立基本结构和配置框架

  • com.kuang.pojo

  • com.kuang.dao

  • com.kuang.service

  • com.kuang.controller

  • mybatis-config.xml

    
    
    
    
    
    
  • applicationContext.xml

    
    
    
    
    

在 applicationContext.xml 中点击上面的黄色



Mybatis层编写 1.数据库配置文件 database.properties

jdbc.driver=com.mysql.jdbc.Driver
#如果使用的是MySQL8.0+,增加一个时区的配置:&serverTimezone=Asia/Shanghai
#ssmbuild是我要连接的数据库
jdbc.url=jdbc:mysql://localhost:3306/ssmbuild?useSSL=true&useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai
jdbc.username=root
jdbc.password=5位
2.IDEA关联数据库:连接数据库,并测试是否连接到books表


Mysql8的连接需要在URL的数据库名后加上 “ ?useSSL=false&serverTimezone=UTC&allowPublicKeyRetrieval=true ”这句话才能连接


3. 编写MyBatis的核心配置文件

   
       
   
   
       
   
4. 编写数据库对应的实体类 com.kuang.pojo.Books

使用lombok插件!(已在上面的 ssmbuild.pom 中导入)


如果上面没有get,set就要安装下面的插件,如果成功,则忽略这个步骤


package com.kuang.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;
   
}
5. 编写Dao层的 Mapper接口

package com.kuang.dao;

import com.kuang.pojo.Books;
import java.util.List;

public interface BookMapper {

   //增加一个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();

}
6. 编写接口对应的 BookMapper.xml 文件,需要导入MyBatis的包


右边是:BookMapper.java文件






   
   
      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
   


在 mybatis-config.xml 注册

    
        
    
7. 编写Service层的接口和实现类

接口:

package com.kuang.service;

import com.kuang.pojo.Books;

import java.util.List;

//BookService:底下需要去实现,调用dao层
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();
}

新建java文件,编写 BookServiceImpl 类:

package com.kuang.service;

import com.kuang.dao.BookMapper;
import com.kuang.pojo.Books;
import java.util.List;

public class BookServiceImpl implements BookService {

	//serviceidao层:组合Dao
   //调用dao层的操作,设置一个set接口,方便Spring管理
   private BookMapper bookMapper;

   public void setBookMapper(BookMapper bookMapper) {
       this.bookMapper = bookMapper;
  }
   
   public int addBook(Books book) {
       return bookMapper.addBook(book);
  }
   
   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();
  }
}

OK,到此,底层需求操作编写完毕!










Spring层编写 1、Spring整合MyBatis:---->相关的配置文件spring-dao.xml





   
    
   
   

    
    
    
   
   
   
       
       
       
       
       

       
       
       
       
       
       
       
       
       
   

    
    
    
    
   
   
       
       
       
       
   
    
    
    

   
   
   
       
       
       
       
   


2. Spring整合service层:---->相关的配置文件spring-service.xml



configure后,红色消失




   
   

   
   
       
   

   
   
       
       
   


Spring层搞定!再次理解一下,Spring就是一个大杂烩,一个容器!对吧!










SpringMVC层编写 1. 添加web内核,编写web.xml






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

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

2. 编写 spring-mvc.xml





    
    
    
    
    

    
    
        
        
        
    

    
    

 
3. Spring配置整合文件,applicationContext.xml




   
   
   
   

最终项目结构:

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

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

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