美文网首页猴子也能懂的springboot教程
猴子也能懂的springboot教程(二) - springbo

猴子也能懂的springboot教程(二) - springbo

作者: 程序员的幻想乡 | 来源:发表于2019-05-13 18:35 被阅读0次
20190514180058.jpg

前言

上篇已经搭建了简单的springboot项目详情请见:
猴子也能懂的springboot教程(一) - springboot入门
本次我们在原先代码基础上整合Mybatis
废话不说,开始

软件版本

mysql mysql 8.0.16
需要注意:mysql8 使用的mysql-connector-java 8.x.x依赖中的驱动由之前版本的com.mysql.jdbc.Driver变为com.mysql.cj.jdbc.Driver

建表

创建user表,字段:id,username,password
建表语句在源码resources/db/db.sql中

依赖

首先在POM文件中添加依赖

    <!-- Spring Boot Mybatis 依赖 -->
    <dependency>
        <groupId>org.mybatis.spring.boot</groupId>
        <artifactId>mybatis-spring-boot-starter</artifactId>
        <version>2.0.1</version>
    </dependency>
    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <version>8.0.11</version>
    </dependency>
    
    <dependency>
        <groupId>com.alibaba</groupId>
        <artifactId>druid</artifactId>
        <version>1.1.10</version>
    </dependency>
    
    <!-- build中添加resources,解决打包时mapper.xml不被打包的问题 -->
    <!-- 若mapper.xml在resources下,则不用添加 -->
    <build>
        <resources>
            <resource>
                <directory>src/main/java</directory>
                <includes>
                    <include>**/*.xml</include>
                </includes>
            </resource>
        </resources>
    </build>

配置文件

在application.yml中添加数据源

# DataSource Config
spring:
  datasource:
    type: com.alibaba.druid.pool.DruidDataSource
    driver-class-name: com.mysql.cj.jdbc.Driver
    url: jdbc:mysql://192.168.162.134:3306/easywork?useSSL=false
    username: root
    password: Root
#mybatis
mybatis:
  mapper-locations: classpath:/com/gao/**/*Mapper.xml
  type-aliases-package: com.gao.entity

此时就可以启动项目了,数据库也连接上了。是不是发现springboot使用起来非常非常简便?下面我们创建实体测试一下

完成,开始测试

创建user实体

package com.gao.entity;

public class User {

    private String id;

    private String username;

    private String password;

    getter/setter ...
}

创建mapper.java

package com.gao.dao;

import ...;

@Mapper
public interface UserMapper {

    User getUserByName(String username);
}

创建mapper.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.gao.dao.UserMapper">

    <select id="getUserByName" parameterType="String" resultType="User">
        SELECT id, username, password 
        FROM user 
        WHERE username = #{username}
    </select>
</mapper>

创建service

接口和impl

package com.gao.service;

import com.gao.entity.User;

public interface IUserService {
    User getUserByUsername(String username);
}

impl

package com.gao.service.impl;

import ...;

@Service
public class UserServiceIml implements IUserService{

    @Autowired
    private UserMapper userMapper;

    @Override
    public User getUserByUsername(String username) {
        return userMapper.getUserByName(username);
    }
}

编辑Controller

修改上次的TestController

package com.gao.web;

import ...;

@RestController
@RequestMapping("test")
public class TestController {

    @Autowired
    private IUserService userService;

    @GetMapping("index/{name}")
    public String index(@PathVariable String name){
        User user = userService.getUserByUsername(name);
        return "hi " + user.getUsername() + " your id is "+ user.getId();
    }
}

启动并测试

20190513180001.png

系列文章

猴子也能懂的springboot教程

--------- 正文结束 ----------

相关文章

网友评论

    本文标题:猴子也能懂的springboot教程(二) - springbo

    本文链接:https://www.haomeiwen.com/subject/ilpooqtx.html