SpringBoot简介(个人理解)

SpringBoot框架,我个人理解他就是一个架子,可以使我们的开发更加简单,详细的介绍自行查阅百度百科和官网。

开发环境

数据库:MySQL
IDE:IntelliJ IDEA2018.3.6

起步

第一步我们要把架子搭起来,就像衣架必须得支起来才能搭衣服衣服一样

打开IDEA新建一个项目

gradle springboot集成vue springboot和gradle教程_mysql


选择Spring Initializr,点击Next

gradle springboot集成vue springboot和gradle教程_spring boot_02


进入以下界面

gradle springboot集成vue springboot和gradle教程_java_03


进入这个页面之后,上面的一些文字信息都可以保持默认,毕竟是初学者能不改就不改,免得出现问题不知道怎么解决,但是略有小成或者参加工作之后,这些文字信息就要做一些相对应的改动。

文字信息可以暂时不改,不过红框里的几个选项要注意一下,Type我们选择Gradle Project,它默认是Maven,需要改一下,再一个就是Java版本。

点击Next,进入以下页面

gradle springboot集成vue springboot和gradle教程_gradle_04


选择我们要用到的一些依赖,图片中红框内的内容

点击Next,进入以下页面

gradle springboot集成vue springboot和gradle教程_mysql_05


这里是文件的名字和保存目录,可以做对应的更改,点击Finish,我们就可以进入代码编辑了

gradle springboot集成vue springboot和gradle教程_mysql_06


注意:这里的Gradle是自己手动安装的,第一次运行的时候IDEA也会自己下载,但是下载速度非常慢,建议手动安装

架子搭好之后我们先看一下它的基础目录结构

gradle springboot集成vue springboot和gradle教程_spring boot_07


我们要着重了解src下的mian目录里面的java文件夹和resources文件,Java文件夹主要放我们的java代码文件,resources文件夹主要放我们的xml配置文件。

我们先来看一下build.gradle文件

gradle springboot集成vue springboot和gradle教程_mysql_08


gradle springboot集成vue springboot和gradle教程_mybatis_09


红框里面的内容就是我们通过gradle下载导入的依赖包。

看完这些东西之后我们就要正式开始了。

正式开始

第一步:打开Mybatis官网 gradle只是一个工具来方便我们导入各种jar包也就是依赖文件,前期主要侧重于Mybatis的学习,学习一个新的东西最简单的方式就是看官网。

打开官网,点击入门

gradle springboot集成vue springboot和gradle教程_spring boot_10


这里有必要说一下,右边的安装教程大家可以不用太在意,因为我们用的并不是Maven而是Gradle,二者在功能上没有太大的差别,都是一个工具,只是导入依赖的方式不一样,不必纠结这个东西。

官网页面下拉

gradle springboot集成vue springboot和gradle教程_mybatis_11


看到这个代码块,这个就是核心配置文件,我们就在resources文件夹里创建一个mybatis-config.xml文件,然后把官网的这串代码复制到这个xml文件里

<?xml version="1.0" encoding="UTF-8" ?>
        <!DOCTYPE configuration
                PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
                "http://mybatis.org/dtd/mybatis-3-config.dtd">
        <!--configuration核心配置文件-->
        <!--连接数据库-->
<configuration>
<environments default="development">
    <environment id="development">
        <transactionManager type="JDBC"/>
        <dataSource type="POOLED">
            <property name="driver" value="com.mysql.cj.jdbc.Driver"/>
            <property name="url" value="jdbc:mysql://localhost:3306/idea?serverTimezone=UTC"/>
            <property name="username" value="root"/>
            <property name="password" value="666666"/>
        </dataSource>
    </environment>
</environments>
<!--每一个mapper.xml文件都需要在mybatis核心配置文件里面注册-->
<mappers>
    <mapper resource="UserMapper.xml"/>
</mappers>

</configuration>

这里面对应的一些东西要按照自己的进行改动,我建议自行去官网复制,这样可以增加一下印象

这样我们的核心配置文件就完成了,开始下一步

映射SQL语句这个是基于xml文件的,所以我们在resources文件夹里创建一个UserMapper.xml文件

gradle springboot集成vue springboot和gradle教程_java_12


里面写上以下代码

<?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">
<!--namespace要绑定一个对应的Dao/Mapper接口-->
<mapper namespace="com.example.demo">

    <!--查询语句-->
    <!--id对应的namespace中的方法名,resultType是Sql语句执行的返回值-->
    <!--查询所用用户-->
    <select id="getUserList" resultType="com.example.demo.User">
        select * from idea.user
    </select>

</mapper>

这一串代码在Mybatis的官网上也有,也是复制粘贴来的,当然对应位置要做相应的改动。

写完这两个文件我们就可以链接数据库并查询对应库里的数据

这个数据需要展示在我们的控制台才可以,所以我们还需要一个Java文件,写一段java代码,前面提到过java文件要放在Java目录下,所以我们去java目录创建一个User.java文件

gradle springboot集成vue springboot和gradle教程_mysql_13


具体代码

package com.example.demo;

//实体类

public class User {
    private int ID;
    private String NAME;


    public User() {
    }

    public User(int ID, String NAME) {
        this.ID = ID;
        this.NAME = NAME;
    }

    public int getID() {
        return ID;
    }

    public void setID(int ID) {
        this.ID = ID;
    }

    public String getNAME() {
        return NAME;
    }

    public void setNAME(String NAME) {
        this.NAME = NAME;
    }

    @Override
    public String toString() {
        return "User{" +
                "ID=" + ID +
                ", NAME='" + NAME + '\'' +
                '}';
    }
}

这一串代码官网上没有,需要自己敲,IDEA中有快捷键可以快速敲出来,如果不会就复制过去,需要注意里面的ID,NAME这些要对应数据库里的字段名,大小写都必须一样。

gradle springboot集成vue springboot和gradle教程_mybatis_14


写完这个就基本完事了,当然还没有完,我们还需要把它给运行起来

gradle springboot集成vue springboot和gradle教程_spring boot_15


我们需要在这个文件里面来写最后的代码,让它运行起来,这个文件是项目建立的时候自动生成的,按着正确的方式我们需要在test文件里创建测试代码,先进行测试,但是我不想搞这么麻烦,毕竟是初学,步骤多了反而容易出错,还不知道错在那,所以我们就直接在这个文件里面敲代码。

package com.example.demo;

import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

import java.io.IOException;
import java.io.InputStream;
import java.util.List;

@SpringBootApplication
public class DemoApplication {

    public static void main(String[] args) throws IOException {
//        一下三行代码官网复制
        String resource = "mybatis-config.xml";
        InputStream inputStream = Resources.getResourceAsStream(resource);
        SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
//       通过sqlSessionFactory获取openSession方法
        SqlSession Session = sqlSessionFactory.openSession();
//        通过Session的selectList方法来使用UserMapper.xml中的Sql语句,getUserList对应的就是xml文件中select标签里的id
        List<User> getUserList = Session.selectList("getUserList");
//        返回值是一个列表,所以要通过for循环,一一拿出
        for (User user : getUserList) {
            System.out.println(user);
        }


    }

}

注意看代码里的注释,有几行代码是从官网复制过来的,也可以说到目前为止,执行最多的操作就是复制粘贴,大部分的代码都是人家已经敲好的,我们直接复制过来用就好了,由此可见,对编程这个行业来说,学习一门新的东西,它对应的官网就或者说明文档是最好最新最全的教课书

我们点击一下运行,看看结果

gradle springboot集成vue springboot和gradle教程_gradle_16


gradle springboot集成vue springboot和gradle教程_mysql_17


成功运行

最后

最后需要注意一下,编写代码时对变量命名还有分类,什么样的文件放在什么文件里面都是有一定说法的,不是随便放的,就像这个项目一样,本来还需要一些dao文件夹,pojo文件夹,utils文件夹,来放不同的代码文件,把代码拆分开,而不是像这样把所有代码都基本放在一起,但是我觉得目前不用弄这么多,还是那句话,初学一门技术,弄得越多容易出错,还不知道错在哪,还不如简单明了一些,起码自己一看就可以明白,等以后小有所成后,再去研究这些。