最近對服務端比較感興趣然後看了網上的部分視頻,瞭解了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工具測試,博主測試結果如下:
如有疑問和見解,歡迎留言一起交流。