zoukankan      html  css  js  c++  java
  • Spring Boot 2.x 编写 RESTful API (四) 使用 Mybatis

    用Spring Boot编写RESTful API 学习笔记

    添加依赖

    		<dependency>
    			<groupId>org.mybatis.spring.boot</groupId>
    			<artifactId>mybatis-spring-boot-starter</artifactId>
    			<version>1.3.2</version>
    		</dependency>
    
    		<dependency>
    			<groupId>mysql</groupId>
    			<artifactId>mysql-connector-java</artifactId>
    			<version>5.1.41</version>
    		</dependency>
    

    添加配置

    spring:
      datasource:
        driver-class-name: com.mysql.jdbc.Driver
        url: jdbc:mysql://127.0.0.1:3306/tvseries?useSSL=false
        username: root
        password: root
        
        
    mybatis:
      configuration:
        map-underscore-to-camel-case: true # 下划线转驼峰命名
      mapper-locations: classpath:com.karonda.restapi.dao/*.xml # 配置 mapper xml 文件所在路径
    

    启动类添加

    @MapperScan("com.karonda.restapi.dao")
    

    新建 dao

    public interface TvSeriesDao {
    
        @Select("select * from tv_series where id=#{id}")
        TvSeries getOneById(int id);
    
        @Select("select * from tv_series")
        List<TvSeries> getAll();
    
        int update(TvSeries tvSeries);
        int insert(TvSeries tvSeries);
    
        @Delete("delete from tv_series where id=#{id}")
        int delete(int id);
    
        @Update("update tv_series set status=-1, reason=#{reason} where id=#{id}")
        int logicDelete(int id, String reason);
    }
    
    

    新增 mapper TvCharacterDao.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.karonda.restapi.dao.TvSeriesDao" >
      
      <insert id="insert" parameterType="com.karonda.restapi.pojo.TvSeries"
      			useGeneratedKeys="true" keyProperty="id">
        insert into tv_series (name, season_count, origin_release )
        		values (#{name}, #{seasonCount}, #{originRelease} )
      </insert>
      
      <update id="update" parameterType="com.karonda.restapi.pojo.TvSeries">
        update tv_series set name=#{name}, season_count=#{seasonCount}, origin_release=#{originRelease} where id=#{id}
      </update>
      
    </mapper>
    

    新建 service

    @Service
    public class TvSeriesService {
        @Autowired
        TvSeriesDao tvSeriesDao;
    
        public List<TvSeries> getAllSeries(){
            return tvSeriesDao.getAll();
        }
    }
    

    修改 Controller

        @Autowired
        TvSeriesService tvSeriesService;
        
        @GetMapping
        public List<TvSeries> getAll() {
            if(log.isTraceEnabled()) {
                log.trace("getAll() ");
            }
            List<TvSeries> list = tvSeriesService.getAllSeries();
            
            return list;
        }
    

    源码:spring-boot-2-restful

  • 相关阅读:
    Oracle 行列转换
    Oracle中特殊的INSERT语句
    在.net中实现压缩多个文件为.zip文件 【转】
    JavaScript 原型链【转】
    Oracle安装中的DHCP问题
    每日一题力扣49
    每日一题力扣423
    每日一题力扣451
    每日一题力扣237
    每日一题力扣383
  • 原文地址:https://www.cnblogs.com/victorbu/p/10663410.html
Copyright © 2011-2022 走看看