国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - Spring Boot 2.0快速構建服務組件全步驟

Spring Boot 2.0快速構建服務組件全步驟

2021-07-31 12:04羅摩爾 Java教程

這篇文章主要給大家介紹了關于Spring Boot 2.0快速構建服務組件的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Spring Boot 2.0具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧

前言

所謂的服務組件(service component)— 就是用于處理系統業務邏輯的類,如果按照系統分層設計理論來劃分,服務組件是位于業務層當中的類。在spring boot中,服務組件是一個被**@service**注解進行注釋的類,這些類用于編寫系統的業務代碼。在本章節中,將講解如何創建并使用服務組件。

在開始正文之前,先來看兩段示例代碼。使用服務組件之前,我們需要定義服務組件接口類,用于索引服務組件提供的服務,代碼如下所示:

?
1
2
3
public interface userservice{
 // todo ...
}

然后,需要使用**@service**注解對服務組件接口實現類進行注釋,演示代碼如下:

?
1
2
3
4
@service(value="userservice")
public class userserviceimpl implements userservice{
 //todo ...
}

最后,使用**@autowired**注解來自動引用服務組件,代碼如下:

?
1
2
3
4
5
6
@controller
public class democontroller{
 @autowired
 userservice userservice;
 //todo ...
}

在本次講解中,我們依然以對用戶的增、刪、改、查為案例,將控制器中的業務方法遷移到服務組件中。

1. 創建服務接口

創建一個包含添加用戶、更新用戶、刪除用戶和查詢用戶的服務接口類 — 用戶服務組件接口類。詳細代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
package com.ramostear.application.service;
 
import com.ramostear.application.model.user;
 
import java.util.collection;
 
/**
 * created by ramostear on 2019/3/11 0011.
 */
public interface userservice {
 
 /**
 * create user
 * @param user
 */
 void create(user user);
 
 /**
 * update user info by id
 * @param id
 * @param user
 */
 void update(long id,user user);
 
 /**
 * delete user by id
 * @param id
 */
 void delete(long id);
 
 /**
 * query all user
 * @return
 */
 collection<user> findall();
}

2. 實現服務接口

創建一個接口實現類,用于實現其中的增、刪、改、查四個業務方法,并用**@service**注解進行標注,具體代碼如下:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
package com.ramostear.application.service.impl;
 
import com.ramostear.application.model.user;
import com.ramostear.application.service.userservice;
import org.springframework.stereotype.service;
 
import javax.annotation.postconstruct;
import java.util.collection;
import java.util.hashmap;
import java.util.map;
 
/**
 * @author ramostear
 * @create-time 2019/3/11 0011-4:29
 * @modify by :
 * @since:
 */
@service(value="userservice")
public class userserviceimpl implements userservice {
 
 private static map<long,user> userrepo = new hashmap<>();
 
 @postconstruct
 public void inituserrepo(){
 user admin = new user();
 admin.setid(1).setname("admin");
 userrepo.put(admin.getid(),admin);
 
 user editor = new user();
 editor.setid(2).setname("editor");
 userrepo.put(editor.getid(),editor);
 }
 @override
 public void create(user user) {
 userrepo.put(user.getid(),user);
 }
 
 @override
 public void update(long id, user user) {
 userrepo.remove(id);
 user.setid(id);
 userrepo.put(id,user);
 }
 
 @override
 public void delete(long id) {
 userrepo.remove(id);
 }
 
 @override
 public collection<user> findall() {
 return userrepo.values();
 }
}

3. 使用服務組件

接下來,定義一個用戶控制器,使用**@autowired**注解來應用用戶服務組件,實現對用戶的增、刪、改、查功能:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package com.ramostear.application.controller;
 
import com.ramostear.application.model.user;
import com.ramostear.application.service.userservice;
import org.springframework.beans.factory.annotation.autowired;
import org.springframework.http.httpstatus;
import org.springframework.http.responseentity;
import org.springframework.web.bind.annotation.*;
 
/**
 * @author ramostear
 * @create-time 2019/3/11 0011-4:42
 * @modify by :
 * @since:
 */
@restcontroller
public class usercontroller {
 
 @autowired
 userservice userservice;
 
 
 @getmapping("/users")
 public responseentity<object> users(){
 return new responseentity<>(userservice.findall(), httpstatus.ok);
 }
 
 @postmapping("/users")
 public responseentity<object> create(@requestbody user user){
 userservice.create(user);
 return new responseentity<>("user is created successfully.",httpstatus.created);
 }
 
 @putmapping("/users/{id}")
 public responseentity<object> update(@pathvariable(name="id") long id,@requestbody user user){
 userservice.update(id,user);
 return new responseentity<>("user is updated successfully.",httpstatus.ok);
 }
 
 @deletemapping("/users/{id}")
 public responseentity<object> delete(@pathvariable(name = "id")long id){
 userservice.delete(id);
 return new responseentity<>("user is deleted successfully.",httpstatus.ok);
 }
}

4. 數據模型

用戶對象的代碼沿用以往章節的user.java代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package com.ramostear.application.model;
 
import lombok.getter;
import lombok.noargsconstructor;
import lombok.setter;
 
/**
 * @author ramostear
 * @create-time 2019/3/6 0006-3:12
 * @modify by :
 * @since:
 */
@getter
@setter
@noargsconstructor
public class user {
 private long id;
 private string name;
 
 public user setid(long id){
 this.id = id;
 return this;
 }
 
 public user setname(string name){
 this.name = name;
 return this;
 }
}

注:應用程序主類和maven build文件與之前章節的代碼形同,不再列舉。

5. 運行測試

啟動spring boot應用程序,然后打開postman測試應用程序,分別進行如下的測試。

get 請求:獲取所有的用戶信息。

url地址:http://localhost:8080/users

Spring Boot 2.0快速構建服務組件全步驟

獲取用戶信息

post 請求:新增一位用戶信息

url地址:http://localhost:8080/users

請求參數:{“id”:3,"name":"reader"}

Spring Boot 2.0快速構建服務組件全步驟

新增用戶

put請求:修改用戶信息

url地址:http://localhost:8080/users/3

請求參數:{“id”:3,"name":"ramostear"}

 Spring Boot 2.0快速構建服務組件全步驟

修改用戶

delete請求:刪除用戶信息

url地址:http://localhost:8080/users/3

Spring Boot 2.0快速構建服務組件全步驟刪除用戶

6. 附件

本章節用于演示的項目源碼已經上傳到github代碼倉庫,你可以通過下面的地址鏈接免費獲取本章節的全部源碼信息:

github.com/ramostear/s …

好了,以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對服務器之家的支持。

原文鏈接:https://juejin.im/post/5caddc715188251ad646b634

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日本中文字幕在线视频 | 亚洲毛片在线观看 | 亚洲天堂网站 | 免费在线a | 欧美日韩国产在线播放 | 一区二区精品视频 | 亚洲综合视频 | 日韩精品专区在线影院重磅 | 亚洲黄色自拍 | 国产一区二区影院 | 亚洲青青草| 国产精品成人国产乱一区 | 日日搞夜夜操 | 免费一二区 | 国产黄色a级毛片 | 欧美综合一区 | 中国大陆一级毛片 | 91精品视频导航 | 综合二区| 成人高h视频 | 韩国精品 | 久久毛片 | 国产一区二区三区免费播放 | 国产激情在线看 | 精品日韩一区二区 | 在线欧美亚洲 | 日韩免费电影 | 中文av一区 | 97天堂| 一区二区三区国产 | 波多野结衣一区二区三区免费视频 | 日韩有码一区 | 希岛爱理av一区二区三区 | 九九国产精品视频 | 日韩在线免费观看网站 | 国产a√ | 天天天干天天天操 | 欧美日韩亚洲国产 | 国产成人精品久久 | 国产精品1区2区3区 久久免费一区 | 久久视频免费 |