SpringBoot实现单表增删改查

项目结构

SpringBoot实现单表增删改查_第1张图片

配置文件

  1. pom.xml

    
    <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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
        <modelVersion>4.0.0modelVersion>
    
        
        <parent>
            <groupId>org.springframework.bootgroupId>
            <artifactId>spring-boot-starter-parentartifactId>
            <version>2.0.4.RELEASEversion>
            <relativePath/> 
        parent>
        <groupId>com.xiaogegroupId>
        <artifactId>springboot_mybatisartifactId>
        <version>0.0.1-SNAPSHOTversion>
        <name>springboot_mybatisname>
        <description>Demo project for Spring Bootdescription>
    
        <properties>
            <java.version>1.8java.version>
        properties>
    
        <dependencies>
            
            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-webartifactId>
            dependency>
    
            
            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-testartifactId>
            dependency>
    
            
            <dependency>
                <groupId>org.mybatis.spring.bootgroupId>
                <artifactId>mybatis-spring-boot-starterartifactId>
                <version>1.3.4version>
            dependency>
    
            
            <dependency>
                <groupId>mysqlgroupId>
                <artifactId>mysql-connector-javaartifactId>
            dependency>
    
            
            <dependency>
                <groupId>org.projectlombokgroupId>
                <artifactId>lombokartifactId>
            dependency>
            <dependency>
                <groupId>org.junit.jupitergroupId>
                <artifactId>junit-jupiter-apiartifactId>
                <scope>testscope>
            dependency>
    
        dependencies>
    
        <build>
            <plugins>
                
                <plugin>
                    <groupId>org.springframework.bootgroupId>
                    <artifactId>spring-boot-maven-pluginartifactId>
                plugin>
            plugins>
        build>
    
    project>
    
    
  2. application.properties

    # 数据库连接信息
    spring.datasource.driverClassName=com.mysql.jdbc.Driver
    spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?serverTimezone=UTC&useUnicode=true&characterEncoding=utf8&useSSL=false
    spring.datasource.username=root
    spring.datasource.password=root
    
    # 配置mybatis信息
    # spring集成Mybatis环境
    # pojo别名扫描包
    mybatis.type-aliases-package=com.xiaoge.pojo
    #加载Mybatis映射文件
    mybatis.mapper-locations=classpath:mapper/*Mapper.xml
    
  3. UserMapper.xml

    
    
    <mapper namespace="com.xiaoge.mapper.UserMapper">
        <select id="queryUserList" resultType="user">
            select * from user
        select>
    mapper>
    

实现类

  1. User

    package com.xiaoge.pojo;
    
    import lombok.Data;
    
    /**
     * @program: springboot_mybatis
     * @description:
     * @author: Mr.Xiao
     * @create: 2020-05-03 17:57
     **/
    @Data
    public class User {
    
        // 主键
        private Long id;
        // 用户名
        private String username;
        // 密码
        private String password;
        // 姓名
        private String name;
    
    }
    

持久层

  1. UserMapper

    package com.xiaoge.mapper;
    
    import com.xiaoge.pojo.User;
    import org.apache.ibatis.annotations.Mapper;
    
    import java.util.List;
    
    /**
     * @program: springboot_mybatis
     * @description:
     * @author: Mr.Xiao
     * @create: 2020-05-03 18:00
     **/
    @Mapper
    public interface UserMapper {
    
        public List<User> queryUserList();
    
    }
    

业务层

  1. UserService接口

    package com.xiaoge.service;
    
    import com.xiaoge.pojo.User;
    
    import java.util.List;
    
    /**
     * @program: springboot_mybatis
     * @description:
     * @author: Mr.Xiao
     * @create: 2020-05-03 18:56
     **/
    public interface UserService {
    
        public List<User> queryUserList();
    
    }
    
    
  2. UserServiceImpl实现类

    package com.xiaoge.service.impl;
    
    import com.xiaoge.mapper.UserMapper;
    import com.xiaoge.pojo.User;
    import com.xiaoge.service.UserService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.stereotype.Service;
    
    import java.util.List;
    
    /**
     * @program: springboot_mybatis
     * @description:
     * @author: Mr.Xiao
     * @create: 2020-05-03 18:56
     **/
    @Service
    public class UserServiceImpl implements UserService {
    
        @Autowired
        private UserMapper userMapper;
    
        @Override
        public List<User> queryUserList() {
            return userMapper.queryUserList();
        }
    }
    

表现层

  1. MybatisController

    package com.xiaoge.controller;
    
    import com.xiaoge.mapper.UserMapper;
    import com.xiaoge.pojo.User;
    import com.xiaoge.service.UserService;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    import java.util.List;
    
    /**
     * @program: springboot_mybatis
     * @description:
     * @author: Mr.Xiao
     * @create: 2020-05-03 18:54
     **/
    @RestController
    public class MybatisController {
    
        @Autowired
        private UserService UserService;
    
        @GetMapping("/query")
        public List<User> queryUserList(){
            List<User> users = UserService.queryUserList();
            return users;
        }
    
    }
    

引导类

  1. SpringbootMybatisApplication

    package com.xiaoge;
    
    import org.springframework.boot.SpringApplication;
    import org.springframework.boot.autoconfigure.SpringBootApplication;
    
    @SpringBootApplication
    public class SpringbootMybatisApplication {
    
        public static void main(String[] args) {
            SpringApplication.run(SpringbootMybatisApplication.class, args);
        }
    
    }
    
    

测试

  1. MybatisTest

    package com.xiaoge;
    
    import com.xiaoge.mapper.UserMapper;
    import com.xiaoge.pojo.User;
    
    import org.junit.Test;
    import org.junit.runner.RunWith;
    import org.springframework.beans.factory.annotation.Autowired;
    import org.springframework.boot.test.context.SpringBootTest;
    import org.springframework.test.context.junit4.SpringRunner;
    
    import java.util.List;
    
    /**
     * @program: springboot_mybatis
     * @description:
     * @author: Mr.Xiao
     * @create: 2020-05-03 19:09
     **/
    @RunWith(SpringRunner.class)
    @SpringBootTest(classes = SpringbootMybatisApplication.class) // 指定引导类的class字节码
    public class MybatisTest {
    
        @Autowired
        private UserMapper userMapper;
    
        @Test
        public void test() {
            List<User> users = userMapper.queryUserList();
            System.out.println(users);
        }
    
    }
    

你可能感兴趣的:(#,JAVA-SpringBoot)