SpringBoot基本使用

SpringBoot基本使用

使用springBoot可以不配置過多的xml文件了,全部簡化。

一、新建SpringBoot項目

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-OzNVYXah-1573038342902)(D:\Java\GP4   (四階段)]\springboot\video\springBoot\mpic\1.png)

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-unHR8bmk-1573038342903)(D:\Java\GP4   (四階段)]\springboot\video\springBoot\mpic\2.png)

在這裏插入圖片描述

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-EiY11ppp-1573038342904)(D:\Java\GP4   (四階段)]\springboot\video\springBoot\mpic\4.png)

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-uI0PxQOl-1573038342905)(D:\Java\GP4   (四階段)]\springboot\video\springBoot\mpic\5.png)

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-7q4LnV5C-1573038342905)(D:\Java\GP4   (四階段)]\springboot\video\springBoot\mpic\6.png)

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-OqkHWvoG-1573038342906)(D:\Java\GP4   (四階段)]\springboot\video\springBoot\mpic\7.png)

二、SpringBoot配置文件

<!--父依賴,規定了springBoot的版本號-->
<parent>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-parent</artifactId>
    <version>2.1.9.RELEASE</version>
    <relativePath/> <!-- lookup parent from repository -->
</parent>

<!--只要是spring-boot開頭的,就是子依賴,不需要寫版本號-->
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>

<!--mybatis等jar包開頭的,屬於導入依賴,必須版本號-->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.1.1</version>
</dependency>

配置文件必須是【application.properties】或者【application.yml】在裏面可以進行任意的配置,二選一,其中properties優先於yml。

使用springBoot可以不需要啓動tomcat,使用如下代碼啓動。

@SpringBootApplication
@MapperScan("com.qianfeng.springboot.ssm.mapper") //相當於我們之前在SSM整合的時候做mapper的掃描,必須到mapper
public class SSMStartApp {
    public static void main (String[] args){
        SpringApplication.run(SSMStartApp.class,args);
    }
}

也可以使用service層進行mapperscan的掃描

@Service("userService")
@MapperScan("com.rj.dao")
public class UserServiceImpl implements UserService {
    @Autowired
    private UserDao userDao;

    @Override
    public List<User> findAll() {
        return userDao.findAll();
    }
}

注意,SpringBootApplication啓動掃描範圍是該類所在父包的所有子包和子類。如圖,只能在【com.rj.springboot01】下創建項目。

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-6uO2ugyD-1573038342906)(D:\Java\GP4   (四階段)]\springboot\video\springBoot\mpic\8.png)

三、dao層的使用

mapper都是需要xml文件書寫sql語句的,這裏,需要在【application.properties】或者【application.yml】中配置mybatis的mapper文件路徑

將mapper文件放到resources文件下的mapper包中

spring:
  datasource:
  	# url:jdbc:mysql:///mydb9?useSSL=true&characterEncoding=utf8
    url: jdbc:mysql://localhost:3306/mydb9?serverTimezone=UTC&useSSL=true&characterEncoding=utf8
    username: root
    password: 123456
    # driver-class-name:com.mysql.cj.jdbc.Driver
    driver-class-name: com.mysql.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
mybatis:
  # 掃描路徑
  mapper-locations: classpath:mapper/*.xml

除了該方法,也可以在mapper接口方法上註解實現

public interface UserMapper {
    @Select("SELECT * FROM tb_user WHERE user_id = #{id} ")
    TbUser getUserById(@Param("id") Long id);
}

四、springBoot項目啓動方式

  1. 運行main方法啓動springBoot項目
  2. 通過maven指令啓動 mvn spring-boot:run

五、springBoot項目啓動方式

  1. 運行main方法啓動springBoot項目
  2. 通過maven指令啓動 mvn spring-boot:run
  3. 將springboot打包,通過jar文件運行 java -jar xxx.jar

六、測試類

springBoot有自己的測試類,使用的時候需要注意:

@RunWith(SpringRunner.class)
@SpringBootTest(classes = Provider01StartApp.class)
public class UserTest {
    @Autowired
    private UserService userService;

    @Test
    public void testFindAll() {
        List<User> users = userService.findAll();
        for (User user : users) {
            System.out.println(user.toString());
        }
    }
}

SpringBootTest中必須配置classes,且該類爲前面提到的AppStart的啓動類

七、lombok的問題

使用聚合項目的時候,運行結果導致lombok失效,解決辦法:
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章