侧边栏壁纸
博主头像
Epoch

Java开发、Python爬虫、微服务、分布式、前端

  • 累计撰写 93 篇文章
  • 累计创建 110 个标签
  • 累计收到 8 条评论

目 录CONTENT

文章目录

SpringBoot集成Mybatis

Epoch
2020-05-05 / 0 评论 / 0 点赞 / 306 阅读 / 675 字 / 正在检测是否收录...

目标:集成Mybatis
工具:IDEA–2020.1
学习目标:框架工具集成
本次学习的工程下载链接放到文本最后面

  1. 新建一个springboot工程
    mybatis.png

  2. 设置包名、工程名
    mybatis1.png

  3. 添加相关依赖
    mybatis2.png

    <dependencies>
            <!--web依赖-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <!--整合mybatis依赖-->
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>2.1.2</version>
            </dependency>
            <!--热部署依赖-->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-devtools</artifactId>
                <scope>runtime</scope>
                <optional>true</optional>
            </dependency>
            <!--mysql依赖-->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <scope>runtime</scope>
            </dependency>
            <!--lombok依赖-->
            <dependency>
                <groupId>org.projectlombok</groupId>
                <artifactId>lombok</artifactId>
                <optional>true</optional>
            </dependency>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-test</artifactId>
                <scope>test</scope>
                <exclusions>
                    <exclusion>
                        <groupId>org.junit.vintage</groupId>
                        <artifactId>junit-vintage-engine</artifactId>
                    </exclusion>
                </exclusions>
            </dependency>
        </dependencies>
  1. 新建完成大致是这样的结构
    mybatis3.png

  2. 利用工具逆向生成实体类、映射文件、接口映射文件
    mybatis4.png

注意在高版本后xxMapper.xml在 src/main/java一下的任何目录下打成jar包会丢失
如果不想更改的话可以在pom文件中加入
解决找不到映射文件

      <resources>
    			<resource>
    				<directory>src/main/java</directory>
    				<includes>
    					<include>**/*.xml</include>
    				</includes>
    			</resource>
      </resources>

或者放到resources下面

  1. application.yml文件配置
    server:
      port: 8090
    
    spring:
      datasource:
        driverClassName: com.mysql.jdbc.Driver
        url: jdbc:mysql://localhost:3306/springboot?serverTimezone=Asia/Shanghai&characterEncoding=utf-8
        username: root
        password: root
    
    mybatis:
      #别名配置
      type-aliases-package: com.xmaven.model
      #扫描到resources下的.xml文件 *这个不配置,可能导致找不到你的文件  报错如下图
      mapper-locations: classpath:mappers/*.xml

mybatis5.jpg

  1. 记得在你的启动类上面加上注解//扫描你的mapper文件,相当于dao
@SpringBootApplication
@MapperScan("com.xmaven.mapper")
public class SpringbootMybatisApplication {
    public static void main(String[] args) {
        SpringApplication.run(SpringbootMybatisApplication.class, args);
    }
}
  1. 编写Service接口,Service接口的实现类

Service接口:

public interface UserService {
    List<User> selectAll();
}

Service接口的实现类:

@Service
public class UserServiceImpl implements UserService {

    @Autowired
    UserMapper userMapper;

    @Override
    public List<User> selectAll() {
        return this.userMapper.findAll();
    }
}
  1. 编写controller
@RestController
@RequestMapping("/user")
public class UserController {
    @Autowired
    UserService userService;

    @GetMapping(value="/findAll")
    public Object find(){
        return userService.selectAll();
    }
}
  1. 启动项目
    访问http://localhost:8090/user/findAll
    成功界面如下图所示
    mybatis6.png

下载链接:springboot-mybatis.rar

0

评论区