spring boot+mybatis 入门

最近对服务端比较感兴趣然后看了网上的部分视频,了解了spring boot的基本用法,包括数据库的增删改查。post请求返回json数据等操作,有结合app的同学可以看下。先上返回数据截图:

这里有3个步骤,一一带大家了解。

   1.搭建spring boot开发环境 准备开发工具idea,jdk8,搭建mysql环境

   3.创建项目集成mybatis,完成数据库的增删改查,返回json数据。

1.搭建spring boot开发环境

1.1.下载jdk8

现在开发都是基于idea的,所以这里就用idea开始.再下载idea之前先将jdk下载下来,这里使用jdk8(免费,而且没有特殊需要的话就不用自己去配置java的环境变量)。jdk8下载地址:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

勾选同意过后,然后再下面选择你电脑的对应版本进行下载。下载完了就进行安装直到安装完成即可。

1.2.安装idea开发工具(破解)

idea博主参考:https://blog.csdn.net/weixin_44360042/article/details/90669131   http://www.xfdown.com/soft/68418.html#xzdz

1.2.1下载专业版idea

下载地址官网地址:http://www.jetbrains.com/idea/download/#section=windows

1.2.2下载破解补丁

下载idea破解补丁地址:https://github.com/lshaoshuai/springcloud-config/tree/master/ideajar

也可以去博主这儿下载jar只需要1积分地址:

1.2.3更改内部文件引入破解补丁

找到idea.exe.vmoptions和idea64.exe.vmoptions文件在这两个文件的最后一行加上下面的这句话
-javaagent:加上你jar包的路径位置(路径中不要中文,如C:\IntelliJ IDEA 2018.3.3\bin\JetbrainsIdesCrack-4.2-release-sha1-3323d5d0b82e716609808090d3dc7cb3198b8c4b.jar)

1.2.4输入注册码,完成idea注册

idea注册码:

MNQ043JMTU-eyJsaWNlbnNlSWQiOiJNTlEwNDNKTVRVIiwibGljZW5zZWVOYW1lIjoiR1VPIEJJTiIsImFzc2lnbmVlTmFtZSI6IiIsImFzc2lnbmVlRW1haWwiOiIiLCJsaWNlbnNlUmVzdHJpY3Rpb24iOiIiLCJjaGVja0NvbmN1cnJlbnRVc2UiOmZhbHNlLCJwcm9kdWN0cyI6W3siY29kZSI6IklJIiwiZmFsbGJhY2tEYXRlIjoiMjAxOS0wNC0wNSIsInBhaWRVcFRvIjoiMjAyMC0wNC0wNCJ9XSwiaGFzaCI6IjEyNjIxNDIwLzAiLCJncmFjZVBlcmlvZERheXMiOjcsImF1dG9Qcm9sb25nYXRlZCI6ZmFsc2UsImlzQXV0b1Byb2xvbmdhdGVkIjpmYWxzZX0=-tltrJHc5lqCKLnza1bcLhMzDkfJeBqhRWbvcrPF9Gqo+X+iFWeKQXoEUOlrG38uSzzmX05ph//PgXgyVfP5RXKsaRMfrv/thoouS5sA0aTemm3z6uRiFirTDj60KSGr5XZoP/WAXO4nuti6SRKZUbr/VSAtRPQRiCJvevq+3gWPDGu2aZ0AemiNLq4qIVWH3wxTN7lK2h5uJssZsyy35Yy9O703c5PFU0fxCj2HRgXq7H/91X+ZNLvvAZAVU9B7bOqnY4ZzNNV/cjY8B5gNo53Lo6s2szEV7DsZ+8e7k8P4Yo81DKxneCBoe4wiZmRaCIT6wK3/27KrtQTFMcGeZMA==-MIIElTCCAn2gAwIBAgIBCTANBgkqhkiG9w0BAQsFADAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBMB4XDTE4MTEwMTEyMjk0NloXDTIwMTEwMjEyMjk0NlowaDELMAkGA1UEBhMCQ1oxDjAMBgNVBAgMBU51c2xlMQ8wDQYDVQQHDAZQcmFndWUxGTAXBgNVBAoMEEpldEJyYWlucyBzLnIuby4xHTAbBgNVBAMMFHByb2QzeS1mcm9tLTIwMTgxMTAxMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAxcQkq+zdxlR2mmRYBPzGbUNdMN6OaXiXzxIWtMEkrJMO/5oUfQJbLLuMSMK0QHFmaI37WShyxZcfRCidwXjot4zmNBKnlyHodDij/78TmVqFl8nOeD5+07B8VEaIu7c3E1N+e1doC6wht4I4+IEmtsPAdoaj5WCQVQbrI8KeT8M9VcBIWX7fD0fhexfg3ZRt0xqwMcXGNp3DdJHiO0rCdU+Itv7EmtnSVq9jBG1usMSFvMowR25mju2JcPFp1+I4ZI+FqgR8gyG8oiNDyNEoAbsR3lOpI7grUYSvkB/xVy/VoklPCK2h0f0GJxFjnye8NT1PAywoyl7RmiAVRE/EKwIDAQABo4GZMIGWMAkGA1UdEwQCMAAwHQYDVR0OBBYEFGEpG9oZGcfLMGNBkY7SgHiMGgTcMEgGA1UdIwRBMD+AFKOetkhnQhI2Qb1t4Lm0oFKLl/GzoRykGjAYMRYwFAYDVQQDDA1KZXRQcm9maWxlIENBggkA0myxg7KDeeEwEwYDVR0lBAwwCgYIKwYBBQUHAwEwCwYDVR0PBAQDAgWgMA0GCSqGSIb3DQEBCwUAA4ICAQAF8uc+YJOHHwOFcPzmbjcxNDuGoOUIP+2h1R75Lecswb7ru2LWWSUMtXVKQzChLNPn/72W0k+oI056tgiwuG7M49LXp4zQVlQnFmWU1wwGvVhq5R63Rpjx1zjGUhcXgayu7+9zMUW596Lbomsg8qVve6euqsrFicYkIIuUu4zYPndJwfe0YkS5nY72SHnNdbPhEnN8wcB2Kz+OIG0lih3yz5EqFhld03bGp222ZQCIghCTVL6QBNadGsiN/lWLl4JdR3lJkZzlpFdiHijoVRdWeSWqM4y0t23c92HXKrgppoSV18XMxrWVdoSM3nuMHwxGhFyde05OdDtLpCv+jlWf5REAHHA201pAU6bJSZINyHDUTB+Beo28rRXSwSh3OUIvYwKNVeoBY+KwOJ7WnuTCUq1meE6GkKc4D/cXmgpOyW/1SmBz3XjVIi/zprZ0zf3qH5mkphtg6ksjKgKjmx1cXfZAAX6wcDBNaCL+Ortep1Dh8xDUbqbBVNBL4jbiL3i3xsfNiyJgaZ5sX7i8tmStEpLbPwvHcByuf59qJhV/bZOl8KqJBETCDJcY6O2aqhTUy+9x93ThKs1GKrRPePrWPluud7ttlgtRveit/pcBrnQcXOl1rHq7ByB8CFAxNotRUYL9IF5n3wJOgkPojMy6jetQA5Ogc8Sm7RG6vg1yow==

现在idea可以完美使用了。

1.3.搭建mysql环境

1.3.1参考完成安装

博主安装教程参考:https://www.cnblogs.com/zhangkanghui/p/9613844.html

mac参考:https://blog.csdn.net/qq_36004521/article/details/80637886

进去查看讲的很详细只要一步一步来准没问题。

按照上面完成过后再mysql的状态下先创建一个数据库以备后用和理解。如:

CREATE DATABASE 数据库名;

然后先别关掉cmd窗口,因为后面还会用到。

1.3.2安装navicat for MySQL软件来可视化操作数据库。

下载地址和注册码:参考:https://blog.csdn.net/qq_28325423/article/details/80549239

http://download.navicat.com/download/navicat8_mysql_cs.exe

Navicat for MySQL Enterprise Edition 8注册码: 
NAVJ-W56S-3YUU-MVHV 
NAVE-WAGB-ZLF4-T23K 

安装完成后界面如下

如果你现在创建链接是不能链接成功的,如果可以用就当我没说。可以跳过这环境搭建这一小节。

记得之前给大家说过别关掉cmd窗口把,现在就派上了用场,把下面代码复制或输入进去:

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '你navicat的新密码';

如果上面代码还不行的话,将% 改成 localhost即可。

上面的意思就是给你可视化软件的数据库链接设置密码。

然后我们就开始通过navicat链接数据库。

创建成功过后打开看看

这里有个test数据库,这是博主之前创建的,如果你们创建了的话,应该名字不一样而已。

然后我们同通这个工具创建一个表,来为后面做准备。

创建完成后点击保存就是给表取的时候了,博主取的为user。

如果环境配置没问题过后,那么就接下来开始创建项目了,如果有问题也可以留言或者私信博主。

2.创建项目

2.1创建项目

按照图片顺序走就行了

创建完成。项目第一次创建完成可能配置需要一段时间(半个小时左右)。当配置完成了再进行下面操作。

2.2添加maven,集成mybatis

打开pom.xml文件,在dependencies标签里面添加下面代码,等待依赖加入,如果右下角有提示,选择enable 以后自动添加依赖。

<!--        mysql-->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-jdbc</artifactId>
        </dependency>
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.0.1</version>
        </dependency>

依赖添加完成过后等待构建完成。然后再开始配置相关信息如图:

username是数据库的账户名,密码就是刚刚我们自己设置的密码,然后上面的url照着写就完事了,代码如下:

server.port=8080 
#MYSQL配置信息
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/test?useUnicode=true&useJDBCCompliantTimezoneShift=true&serverTimezone=UTC&characterEncoding=utf8
spring.datasource.username=root
spring.datasource.password=jmgg

现在spring boot和mybatis都配置完成是不是非常简单。那我们先来测试一下数据库是不是通了。

2.3测试项目和数据库之间的通信

先打开我们的navicat软件,然后打开数据库,点击我们刚刚创建的表,我们先给你们添加几条简单的数据方便我们测试。如图:

现在数据添加进去了,然后我们开始调试

这里我是testSql方法我是查询我的user表,然后查看他的数据有多少条,而testUpdateSql表是将id为1的的name字段的值更改为 ojbk。如果大家对sql语句熟悉的话就不会陌生,不熟悉不要紧,下面这个网址上会有平时用到的语句

https://www.runoob.com/mysql/mysql-create-database.html

代码如下:

   @Autowired
    JdbcTemplate jdbcTemplate;
    @Test
    void contextLoads() {
    }
    @Test
    void testSql(){
        List<Map<String,Object>> request=jdbcTemplate.queryForList("select * from user");
        request.size();
        request.get(1).get("name");
    }
    @Test
    void testUpdateSql(){
        jdbcTemplate.execute("update user set name='ojbk' where id='1'");
    }

开始调试按照图的步骤来:

2.4编写接口,实现post请求并返回数据。

这里我们还是以user表为例,先创建一个实体类,里面存放的字段和user字段对应即可。博主代码如下:


public class User {
    private Integer id;
    private String name;
    private String token;

    public User(String userAccount, String userName, String key) {
    }
    public User() {
    }
    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getToken() {
        return token;
    }

    public void setToken(String token) {
        this.token = token;
    }
}

然后再通过mybatis的集成来简化很多事情。代码如下:


@Mapper
public interface TestMapper {
    //插入数据,关键字还有很多删除就是@Delete("sql语句"),其他语句同理。
    @Insert("insert into user(id,name,token) values (#{id},#{name},#{token})")
    public void inset(User user);
}

现在创建一个同理管理的数据请求格式类

这样才是一个合格的json返回数据格式,代码如下:


/**
 * @author: jmgg
 * @description: 数据返回类
 * @create: 2018/07/04
 */
public class BaseResponse<T> {

    private Integer code;

    private String message;

    private T data;

    public BaseResponse() {
    }

    public BaseResponse(Integer code, String message) {
        this.code = code;
        this.message = message;
    }

    public BaseResponse(Integer code, String message, T data) {
        this.code = code;
        this.message = message;
        this.data = data;
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public String getMessage() {
        return message;
    }

    public void setMessage(String message) {
        this.message = message;
    }

    public T getData() {
        return data;
    }

    public void setData(T data) {
        this.data = data;
    }

}

然后创建一个控制器,用来处理这些数据和接口地址调用,代码如下:


@RestController
public class TestController {
    @Autowired
    TestMapper testMapper;

    @PostMapping("/getInfo")
    @ResponseBody
    public BaseResponse<User> getInfo(@RequestParam("name") String domain,
                                      @RequestParam("token") String account) {

        User user=new User();
        user.setName(domain);
        user.setToken(account);
        testMapper.inset(user);
        BaseResponse<User> userBaseResponse =new BaseResponse<>(200,"返回成功!",user);
        return userBaseResponse;
    }
}

这里的意思就是 请求localhost:8080/getInfo地址,传入post参数,即可得到返回的json数据。

运行,点击application类,然后在里面点击运行即可。

自己可以在网上输入地址测试也可以通过postman工具测试,博主测试结果如下:

如有疑问和见解,欢迎留言一起交流。

发布了29 篇原创文章 · 获赞 44 · 访问量 5万+

猜你喜欢

转载自blog.csdn.net/ai1362425349/article/details/103652169