最近对服务端比较感兴趣然后看了网上的部分视频,了解了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工具测试,博主测试结果如下:
如有疑问和见解,欢迎留言一起交流。