【02】idea搭建SpringBoot服务demo:集成mybaits+knief4j+netty-socketio

第二篇,集成mybaits,简单操作数据库

安装mybaits依赖,配置规则

打开上一篇中创建的项目文件。
首先在pom文件中添加mybaits依赖:

 <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.2</version>
        </dependency>

更新安装依赖。

然后在配置文件中配置mybaits规则:

application.yml

# 配置mybatis规则
mybatis:
  #  config-location: classpath:mybatis/mybatis-config.xml
  mapper-locations: classpath:mapper/*.xml
  configuration:
    map-underscore-to-camel-case: false

搭建mybaits相关目录结构

对应的mapper映射xml文件放在reource文件下新建的mapper文件目录下:
在这里插入图片描述根据大牛们的说法,mybaits最好是xml映射和注解两种方式混用。简单的sql直接写在注解里,复杂的sql写到xml中。这里也把两种方式都用一下。

先用注解的方式运行一句简单的sql。
在这之前,我们先创建几个文件夹,如图:
在这里插入图片描述
01 在bean目录下创建实体类Dept:
在这里插入图片描述Dept.java

package com.example.demo.bean;

import lombok.Data;

@Data
public class Dept {
    public String dept_id;
    public String dept_name;
    public String email;
}

02 创建mapper文件:
在这里插入图片描述DeptMapper.java

package com.example.demo.mapper;

import com.example.demo.bean.Dept;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

import java.util.List;
@Mapper
public interface DeptMapper {
    //注解方式,直接写sql文
    @Select("SELECT `dept_id`,`dept_name`, `email`FROM `sys_dept`")
    public List<Dept> getDept();

}

03 创建service:

在这里插入图片描述DeptService.java

package com.example.demo.services;

import com.example.demo.bean.Dept;
import com.example.demo.mapper.DeptMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

@Service
public class DeptService {
    @Autowired
    DeptMapper deptMapper;

    public List<Dept> getDept(){
        return deptMapper.getDept();
    }
}

做完这三步的准备,就可以在controller中开始测试了。

测试注解方式的mybaits操作数据库

在这里插入图片描述在TestController文件中添加响应代码,如上图。

TestController.java

package com.example.demo.controller;

import com.example.demo.bean.Dept;
import com.example.demo.services.DeptService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
public class TestController {
    @RequestMapping(value="/Hello",method = RequestMethod.GET)
    public String Hello(String pra){
        return "Hello world !"+pra;
    }

    @Autowired
    DeptService deptService;
    //测试注解方式操作数据库
    @ResponseBody
    @GetMapping("/getDept")
    public List<Dept> getDept(){
        return deptService.getDept();
    }
}

启动运行项目。
在浏览器地址栏中输入:http://localhost:8080/getDept
响应如图:
在这里插入图片描述获取到的数据,即为从数据库ds1中的表sys_dept中的数据。

改造并测试Xml方式操作数据库

在上面的基础上,再试一试xml的方式。
稍作改造。
01、 DeptMapper.java文件中新增一句代码:
在这里插入图片描述DeptService.java 中也做类似处理:
在这里插入图片描述
02、resouce->mapper目录下创建映射xml文件:DeptMapper.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.DeptMapper">
    <select id="getDeptById" resultType="com.example.demo.bean.Dept">
        SELECT `dept_id`,`dept_name`, `email` FROM `sys_dept` where `dept_id`=#{id}
    </select>
</mapper>

03、测试
TestController.java 文件中新增测试接口:

    //XML方式
    @ResponseBody
    @RequestMapping("/getDeptById")
    public Dept getTheDept(@RequestParam("id") String id){

        return deptService.getDeptById(id);
    }

启动运行项目。
浏览器地址栏中输入:http://localhost:8080/getDeptById?id=101
响应如图:
在这里插入图片描述

最后

本篇就到这里。下一篇,说一说怎么配置多数据源,以及druid的集成和简单使用。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值