如题,创建步骤如下:
(1)首先创建一个Spring Boot项目
打开File->New->Project
选择Spring Initializr,注意SDK选择版本,idea默认选择的是最高版本,我选择的是本地jdk1.8 ,选好了之后点Next
package输入自己的包名,Type选择需要jar包的方式,我选择的是pom依赖,Java Version版本选择与上张图片一样的jdk版本,点击Next
选择需要导入的依赖,图片最右侧是依赖,点击next
输入项目名称,选择项目存储位置,点击Finish
等待几分钟,项目导入相关依赖
(2)导入Mybatis的相关依赖,配置数据库,mybatis等相关环境(接下来用的代码是我之前已经创建好的项目代码,不影响效果)
mybatis依赖:
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.3.2</version>
</dependency>
配置数据库:
spring:
datasource:
url: jdbc:mysql://localhost:3306/test01?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
username: root
password: root
(3)创建示例,完成
创建存储代码以及mapper.xml的包
在Application.java 上添加扫描接口的注解:
@MapperScan(basePackages = {"com.myproject.demo"}, annotationClass = Mapper.class)
在application.yml中添加扫描resource下的mapper包的配置:
mybatis:
mapper-locations: mappers/*.xml
添加示例(用户类)
创建数据库:
create table user(
id varchar(36) not null,
name varchar(50) not null,
age int default null,
PRIMARY key(id)
)
创建实体类:
package com.myproject.demo.dbtest.vo;
import lombok.Data;
/**
* @Author zxy
* @Description
* @Date 2020/10/15
*/
@Data
public class User {
private String id;
private String name;
private int age;
}
创建UserMapper.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.myproject.demo.dbtest.mapper.UserMapper">
<select id="getAll" resultType="com.myproject.demo.dbtest.vo.User">
select * from user;
</select>
</mapper>
创建UserMapper.java
package com.myproject.demo.dbtest.mapper;
import com.myproject.demo.dbtest.vo.User;
import org.apache.ibatis.annotations.Mapper;
import org.springframework.stereotype.Component;
import java.util.List;
/**
* @Author zxy
* @Description
* @Date 2020/10/14
*/
@Mapper
@Component
public interface UserMapper {
List<User> getAll();
}
创建UserService.java
package com.myproject.demo.dbtest.service;
import com.myproject.demo.dbtest.vo.User;
import com.myproject.demo.dbtest.mapper.UserMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.math.BigDecimal;
import java.util.List;
/**
* @Author zxy
* @Description
* @Date 2020/10/14
*/
@Service
public class UserService {
@Autowired
UserMapper userMapper;
public List<User> getAll(){
return userMapper.getAll();
}
}
创建访问类:UserController
package com.myproject.demo.dbtest.controller;
import com.myproject.demo.dbtest.service.UserService;
import com.myproject.demo.dbtest.vo.User;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
/**
* @Author zxy
* @Description
* @Date 2020/10/15
*/
@RequestMapping("/users")
@RestController
public class UserController {
@Autowired
UserService userService;
@GetMapping
public List<User> getAll() {
return userService.getAll();
}
}
在数据库插入三条数据:
INSERT INTO User(id, NAME, age)
VALUES
('1', '张三', 18),
('2', '李四', 19),
('3', '王五', 20)
使用postman访问接口:
注意: 我在创建Spring Boot项目时,出现了一个问题,就是没有src目录,
找了网上的解决办法都不可以,最后我采取了比较硬核的办法,新建一个src目录:
选择第一个就行了。我以为是我建的方式有问题,但是和其他的对比了一下没有差异,之前我创建的myproject项目就是正常的。不知道大家有没有遇到过我这个问题,遇到的话如果有其他方式解决了欢迎留言赐教!