springboot系列学习笔记—3—集成mybatis

springboot 集成mybatis相比ssm框架而言,配置项大大降低,配置起来极为简单方便。

  1. 引入mybatis依赖,更新maven项目获取到jar包
<!--MySQL-->
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
</dependency>
<!--mybatis-->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>2.0.1</version>
</dependency>
  1. 配置application.yml文件
spring:
  # 数据库访问配置
  datasource:
    driver-class-name: com.mysql.jdbc.Driver
    url: jdbc:mysql://localhost:3306/springboot?useUnicode=true&useJDBCCompliantTimezoneShift=true&useLegacyDatetimeCode=false&serverTimezone=UTC&characterEncoding=UTF-8
    username: wzc
    password: 123456
    
# 日志打印
logging:
  level:
    com.tqs.demo: debug
    
# MyBatis
mybatis:
  # 搜索指定包别名
  typeAliasesPackage: com.tqs.demo.model
  # 配置mapper的扫描,找到所有的mapper.xml映射文件
  mapperLocations: classpath*:mapper/*Mapper.xml
  1. 编写数据库接口层,xml Sql文件, 服务层和控制层的访问接口
    这是本次案例的目录结构
    在这里插入图片描述
    创建实体类
package com.tqs.demo.model;

import lombok.Data;

import java.io.Serializable;

/**
 * 用户对象 sys_user
 *
 */
@Data
public class SysUser implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 用户名称
     */
    private String userName;

    /**
     * 手机号码
     */
    private String phonenumber;

    /**
     * 用户性别
     */
    private String sex;

}

创建数据接口层

package com.tqs.demo.mapper;

import com.tqs.demo.model.SysUser;

import java.util.List;

public interface SysUserMapper
{
    /**
     * 根据条件查询用户列表
     *
     * @param sysUser 用户信息
     * @return 用户信息集合信息
     */
    List<SysUser> selectUserList(SysUser sysUser);


    /**
     * 通过用户名查询用户
     * 
     * @param userName 用户名
     * @return 用户对象信息
     */
    SysUser selectUserByName(String userName);
}

创建服务层接口和实现类

package com.tqs.demo.service;


import com.tqs.demo.model.SysUser;

import java.util.List;

/**
 * 用户 业务层
 *
 */
public interface ISysUserService
{
    /**
     * 根据条件查询用户列表
     * 
     * @param user 用户信息
     * @return 用户信息集合信息
     */
    List<SysUser> selectUserList(SysUser user);

    /**
     * 通过用户名查询用户
     *
     * @param userName 用户名
     * @return 用户对象信息
     */
    SysUser selectUserByName(String userName);
}

package com.tqs.demo.service.impl;

import com.tqs.demo.mapper.SysUserMapper;
import com.tqs.demo.model.SysUser;
import com.tqs.demo.service.ISysUserService;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 用户 业务层处理
 *
 */
@Service
public class SysUserServiceImpl implements ISysUserService
{

    @Autowired
    private SysUserMapper userMapper;

    /**
     * 根据条件分页查询用户列表
     * 
     * @param user 用户信息
     * @return 用户信息集合信息
     */
    @Override
    public List<SysUser> selectUserList(SysUser user)
    {
        return userMapper.selectUserList(user);
    }

    /**
     * 通过用户名查询用户
     * 
     * @param userName 用户名
     * @return 用户对象信息
     */
    @Override
    public SysUser selectUserByName(String userName)
    {
        return userMapper.selectUserByName(userName);
    }

}

创建控制层接口

package com.tqs.demo.controller;

import com.tqs.demo.model.SysUser;
import com.tqs.demo.service.ISysUserService;
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;

/**
 * @Auther: HP
 * @Date: 2019/6/15 10:28
 * @Description:
 */
@RestController
public class SysUserController {

    @Autowired
    private ISysUserService userService;

    @GetMapping("userlist")
    public List<SysUser> selectUserList(SysUser user)
    {
        return userService.selectUserList(user);
    }

    @GetMapping("userByName")
    public SysUser selectUserByName(String userName)
    {
        return userService.selectUserByName(userName);
    }
}

这里提供了两个接口查询进行数据库访问测试,分别查询所有的用户和根据用户名进行查询。

  1. 启动类添加扫包注解@MapperScan
package com.tqs.demo;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

@SpringBootApplication
@MapperScan(value = "com.tqs.demo.mapper")
public class SpringbootDemoApplication {

    public static void main(String[] args) {
        SpringApplication.run(SpringbootDemoApplication.class, args);
    }

}

到此我们项目搭建完毕,启动项目,在浏览器端分别访问 http://localhost:8001/userlisthttp://localhost:8001/userByName?userName=admin,效果如下,成功获取数据库数据。
在这里插入图片描述
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值