android移動應用開發(fā)網(wǎng)站排名優(yōu)化價格
內(nèi)容概述
SpringBoot最常見得用途就是web api項目。
本文介紹使用自動配置功能,通過最簡潔的pom依賴,快速搭建一個示例項目。
實現(xiàn)的功能為:接收http請求并返回json格式的數(shù)據(jù)。
一、配置pom.xml依賴
1.引入springweb依賴
<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>
2.引入數(shù)據(jù)庫依賴(此處我們用的是SQL Server)
<!-- SQL server--><dependency><groupId>com.microsoft.sqlserver</groupId><artifactId>mssql-jdbc</artifactId><version>7.4.1.jre8</version></dependency>
二、配置服務端口和數(shù)據(jù)庫
1.在application.properties中添加:
# 配置端口
server.port = 8088# 配置SQLServer數(shù)據(jù)庫連接
spring.datasource.url = jdbc:sqlserver://localhost;DatabaseName=數(shù)據(jù)庫名稱
spring.datasource.username = ***
spring.datasource.password = ***
spring.datasource.driver-class-name = com.microsoft.sqlserver.jdbc.SQLServerDriver
三、添加API接口
1.在JAVA目錄下添加Controller、Service兩個java類
2.UserController.java(通常在這里編寫接口信息)
import org.springframework.web.bind.annotation.CrossOrigin;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
import java.util.Map;/*** Created by *** on 2023/8/31.*/
@RestController
public class UserController {@AutowiredUserService userService;// 用戶查詢@CrossOrigin@PostMapping("/user/info")public Result infoUser(){return userService.InfoUser();}// 用戶添加@CrossOrigin@PostMapping("/user/add")public Result addUser(@RequestBody Map<String,String> map){return userService.AddUser(map.get("pid"), map.get("name"), map.get("level"));}// 用戶編輯@CrossOrigin@PostMapping("/user/edit")public Result editUser(@RequestBody Map<String,String> map){return userService.EditUser(map.get("id"), map.get("name"));}// 用戶刪除@CrossOrigin@PostMapping("/user/delete")public Result deleteUser(@RequestBody Map<String,String> map){return userService.DeleteUser(map.get("id"));}
}
3.UserService.java (通常在這里編寫SQL查詢方法)
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;import java.util.List;
import java.util.Map;/*** Created by *** on 2023/8/31.*/
@Service
public class UserService {@AutowiredJdbcTemplate jdbcTemplate;/*** 用戶查詢* @return*/@Transactionalpublic Result InfoUser(){try {String SQL = "SELECT * FROM 表名稱 ";List<Map<String, Object>> list = jdbcTemplate.queryForList(SQL);return Result.ok("查詢成功",list);} catch (Exception e) {e.printStackTrace();return Result.error("查詢失敗");}}/*** 用戶添加* @param pid* @param name* @return*/@Transactionalpublic Result AddUser(String pid, String name, String level){try {Map<String, Object> count = jdbcTemplate.queryForMap("SELECT MAX(ID) FROM 用戶信息數(shù)據(jù)表");int id = Integer.parseInt(count.get("").toString()) + 1;String SQL = "INSERT INTO 用戶信息數(shù)據(jù)表 VALUES (?, ?, ?, ?, NULL, NULL)";int res = jdbcTemplate.update(SQL, id, pid, name, level);System.out.println("添加id:" + id);return Result.ok("添加成功");} catch (Exception e) {e.printStackTrace();return Result.error("添加失敗");}}/*** 用戶編輯* @param id* @param name* @return*/@Transactionalpublic Result EditUser(String id, String name){try {String SQL = "UPDATE 用戶信息數(shù)據(jù)表 SET Name=? WHERE ID=?";int res = jdbcTemplate.update(SQL, name, id);System.out.println("編輯id:" + id);return Result.ok("編輯成功");} catch (Exception e) {e.printStackTrace();return Result.error("編輯失敗");}}/*** 用戶刪除* @param id* @return*/@Transactionalpublic Result DeleteUser(String id){try {String SQL = "DELETE FROM 用戶信息數(shù)據(jù)表 WHERE ID=?";int res = jdbcTemplate.update(SQL, id);System.out.println("刪除id:" + id);return Result.ok("刪除成功");} catch (Exception e) {e.printStackTrace();return Result.error("刪除失敗");}}
}
4.Result .java (信息返回通用類)
/*** Created by *** on 2023/8/31.*/
public class Result {private Integer code;private String msg;private Object result;public static Result ok(String msg, Object result) {return new Result(200, msg, result);}public static Result ok(String msg) {return new Result(200, msg, null);}public static Result error(String msg, Object result) {return new Result(500, msg, result);}public static Result error(String msg) {return new Result(500, msg, null);}private Result() {}private Result(Integer code, String msg, Object result) {this.code = code;this.msg = msg;this.result = result;}public Integer getCode() {return code;}public Object getResult() {return result;}public String getMsg() {return msg;}public void setCode(Integer code) {this.code = code;}public void setResult(Object result) {this.result = result;}public void setMsg(String msg) {this.msg = msg;}
}