• Spring Boot MyBatis连接MySQL数据库


    SQL部分

    CREATE TABLE test(
      id int(10) primary key,
      name varchar(50) not null,
      age int(10),
      address varchar(50)
    );
    
    insert into test values(1,'zs',20,'bj');
    insert into test values(2,'ls',20,'sh');
    insert into test values(3,'ww',20,'bj');

    1.application.yml

    server:
      port: 8080 # 端口
      servlet:
        context-path: /test # 项目路径
    
    # mysql连接
    spring:
      datasource:
        url: jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
        username: root
        password: root
        driver-class-name: com.mysql.cj.jdbc.Driver
    
    # mybatis配置
    mybatis:
      mapper-locations: classpath:mapper/*.xml
      type-aliases-package: com.example.demo.entity
      configuration:
        map-underscore-to-camel-case: true

    2.pom.xml

            <!-- Spring Boot web依赖 -->
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-web</artifactId>
            </dependency>
            <!-- MySQL连接 -->
            <dependency>
                <groupId>mysql</groupId>
                <artifactId>mysql-connector-java</artifactId>
                <version>8.0.28</version>
            </dependency>
            <!-- Mybatis -->
            <dependency>
                <groupId>org.mybatis.spring.boot</groupId>
                <artifactId>mybatis-spring-boot-starter</artifactId>
                <version>1.2.0</version>
            </dependency>

    DemoApplication(这里新增了一个MapperScan注解)

    package com.example.demo;
    
    import org.mybatis.spring.annotation.MapperScan;
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    @MapperScan("com.example.demo.mapper")
    public class DemoApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(DemoApplication.class, args);
        }
    
    }

    TestController

    package com.example.demo.controller;
    
    import com.example.demo.entity.Test;
    import com.example.demo.service.TestService;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    import javax.annotation.Resource;
    import java.util.List;
    
    @RestController
    public class TestController {
        @Resource
        private TestService testService;
    
        @RequestMapping("/findAll")
        public List<Test> findAll(){
            return testService.findAll();
        }
    }

    TestService

    package com.example.demo.service;
    
    import com.example.demo.entity.Test;
    import com.example.demo.mapper.TestMapper;
    import org.springframework.stereotype.Service;
    
    import javax.annotation.Resource;
    import java.util.List;
    
    @Service
    public class TestService {
        @Resource
        private TestMapper testMapper;
    
        public List<Test> findAll(){
            return testMapper.findAll();
        }
    }

    TestMapper

    package com.example.demo.mapper;
    
    import com.example.demo.entity.Test;
    import org.apache.ibatis.annotations.Mapper;
    
    import java.util.List;
    
    @Mapper
    public interface TestMapper {
    
        List<Test> findAll();
    }

    Test类

    package com.example.demo.entity;
    
    public class Test {
        private Integer id;
        private String name;
        private Integer age;
        private String address;
    
        public Integer getId() {
            return id;
        }
    
        public void setId(Integer id) {
            this.id = id;
        }
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    
        public Integer getAge() {
            return age;
        }
    
        public void setAge(Integer age) {
            this.age = age;
        }
    
        public String getAddress() {
            return address;
        }
    
        public void setAddress(String address) {
            this.address = address;
        }
    }

    TestMapper.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.example.demo.mapper.TestMapper">
    
        <select id="findAll" resultType="Test">
            SELECT id,name,age,address FROM test
        </select>
    
    </mapper>

    浏览器访问地址 localhost:8080/test/findAll

    项目目录

    Spring Boot连接MySQL数据库,JdbcTemplate方式 - 大飞90 - 博客园 (cnblogs.com)

  • 相关阅读:
    CaltrainTimes从设计到发布(基于Flex的手机应用)
    使用Flex构建Web和移动参考应用程序
    使用Flex4容器若干技巧
    移动设备外观设计的基础知识
    在移动设备应用程序中使用文本的指导原则
    在移动设备应用程序中使用软键盘
    多分辨率适配(下)
    多分辨率适配(上)
    CocosBuilder 多分辨率基础
    【2019-12-31】在逆境中锻炼自己的心态
  • 原文地址:https://www.cnblogs.com/songfei90/p/15863286.html
Copyright © 2020-2023  润新知