1. 程式人生 > >Spring Boot整合SSM

Spring Boot整合SSM

Spring Boot可以幫助我們快速的搭建一個SSM框架,那建立spring boot專案之後怎樣和SSM整合呢?
1.新建Model時,選擇專案需要的核心依賴包
在這裡插入圖片描述
在這裡插入圖片描述
2.新建專案,建立相關對應的核心包,下圖是成功之後的專案結構圖
在這裡插入圖片描述
Students.java

package com.ssm.springboot02.model;

/**
 * @author 小思
 * @PackageName:com.ssm.springboot02.model
 * @ClassName: Students
 * @Description:
 * @date 2018/11/20 12:01
 */
public
class Students { private Integer sid; private String sname; public Integer getSid() { return sid; } public void setSid(Integer sid) { this.sid = sid; } public String getSname() { return sname; } public void setSname(String sname) { this
.sname = sname; } public Students(Integer sid, String sname) { this.sid = sid; this.sname = sname; } public Students() { } }

StudentsServicesImpl.java

package com.ssm.springboot02.services.Impl;

import com.ssm.springboot02.mapper.StudentsMapper;
import com.
ssm.springboot02.model.Students; import com.ssm.springboot02.services.StudentsServices; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.util.List; /** * @author 小思 * @PackageName:com.ssm.springboot02.services.Impl * @ClassName: StudentsServicesImpl * @Description: * @date 2018/11/20 12:00 */ @Service public class StudentsServicesImpl implements StudentsServices { @Autowired private StudentsMapper studentsMapper; @Override public List<Students> getAllStudents() { return studentsMapper.getAllStudents(); } }

StudentsServices.java

package com.ssm.springboot02.services;

import com.ssm.springboot02.model.Students;

import java.util.List;

/**
 * @author 小思
 * @PackageName:com.ssm.springboot02.services
 * @ClassName: StudentsServices
 * @Description:
 * @date 2018/11/20 12:00
 */
public interface StudentsServices {
    public List<Students> getAllStudents();
}

3.如果此時啟動Springboot02Application檔案,因為沒有配置application.properties,所以會報錯
此時需要配置專案啟動的基本資訊

第一種方式:xml方式

application.properties

#服務配置
server.port=8090
server.servlet.context-path=/ssm

#資料來源配置
spring.datasource.username=root
spring.datasource.password=
spring.datasource.url=jdbc:mysql://localhost:3306/zs?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
spring.datasource.driver-class-name=com.mysql.jdbc.Driver


#mybatis配置
mybatis.type-aliases-package=com.ssm.springboot02.model
mybatis.mapper-locations=classpath:com/ssm/springboot02/model/*.xml

StudentsMapper.java

package com.ssm.springboot02.mapper;

import com.ssm.springboot02.model.Students;

import java.util.List;

/**
 * @author 小思
 * @PackageName:com.ssm.springboot02.mapper
 * @ClassName: StudentsMapper
 * @Description:對應Students.xml的介面
 * @date 2018/11/20 12:07
 */
public interface StudentsMapper {
    public List<Students> getAllStudents();
}

Students.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" >
<mapper namespace="com.ssm.springboot02.mapper.StudentsMapper">
    <select id="getAllStudents" resultType="Students">
        select * from students
    </select>
</mapper>

pom.xml

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.ssm</groupId>
    <artifactId>springboot02</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <packaging>jar</packaging>

    <name>springboot02</name>
    <description>Demo project for Spring Boot</description>

    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.1.0.RELEASE</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>

    <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
        <java.version>1.8</java.version>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>1.3.2</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
    </dependencies>

    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>


</project>

xml方式pom.xml需要下面的編碼,註解方式不需要
在這裡插入圖片描述

第二種方式:註解方式

①刪除Students.xml
②pom.xml檔案的允許Java檔案的xml可編譯

StudentsMapper.java(開啟註解)
application.properties

##服務配置
server.port=8090
server.servlet.context-path=/ssm

##資料來源配置
spring.datasource.username=root
spring.datasource.password=1234
spring.datasource.url=jdbc:mysql://localhost:3306/t203?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver


##mybatis配置
mybatis.type-aliases-package=com.ssm.springboot02.model
package com.ssm.springboot02.mapper;

import com.ssm.springboot02.model.Students;
import org.apache.ibatis.annotations.Select;

import java.util.List;

/**
 * @author 小思
 * @PackageName:com.ssm.springboot02.mapper
 * @ClassName: StudentsMapper
 * @Description:對應Students.xml的介面
 * @date 2018/11/20 12:07
 */
public interface StudentsMapper {
    @Select("select * from students")
    public List<Students> getAllStudents();
}

注意:測試的時候在瀏覽器的位址列輸入

http://localhost:8090/ssm/getStudents

注意配置伺服器的埠號和專案的全路徑

專案application.properties也可以將此檔案改為application.yml
application.yml

#服務配置
server:
  port: 8090
  servlet:
    context-path: /ssm
#資料來源配置
spring:
  datasource:
    username: root
    password:
    url: jdbc:mysql://localhost:3306/zs?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2B8&useSSL=false
    driver-class-name: com.mysql.cj.jdbc.Driver
#mybatis配置s
mybatis:
  type-aliases-package: com.ssm.springboot02.model



說在最後的話:編寫實屬不易,若喜歡或者對你有幫助記得點贊+關注或者收藏哦~