SpringBoot簡(jiǎn)單的SpringBoot后端實(shí)例
下面案例作為自己學(xué)習(xí)SpringBoot的筆記,是一個(gè)簡(jiǎn)單SpringBoot后端代碼;
包含 entity , dao ,controller
一、開(kāi)發(fā)準(zhǔn)備
1)Jdk1.7及以上(官方建議使用最新版本的jdk,spring boot對(duì)最新版本的jdk也是支持最好的。) jdk安裝省略。
2)Maven安裝:使用maven能夠快速的添加jar包,提高工作效率。
3)IDE:spring tool suit (STS),eclipse,idea等都可以,下面是用sts演示;
二、創(chuàng)建項(xiàng)目
注:以下程序示例是在安裝maven和jdk1.8下進(jìn)行的
創(chuàng)建過(guò)程如圖:
第一步:創(chuàng)建項(xiàng)目(這里有jdk的版本和spring boot的版本)

第二步:添加依賴(AOP,MYSQL,JDBC,JPA)

第三步:

創(chuàng)建完成后為:

SpringBootDemoApplication這個(gè)類為包含一個(gè)main方法,啟動(dòng)項(xiàng)目的入口;
Application.properties 這個(gè)是spring boot的配置文件
Pom.xml 這個(gè)是放項(xiàng)目依賴的地方。
項(xiàng)目結(jié)構(gòu)如上,下面來(lái)看看內(nèi)部:
Pom:


下面開(kāi)始編寫示例代碼:
首先就應(yīng)該是Spring Boot連數(shù)據(jù)庫(kù)的配置,SpringBoot為我們做了很多自動(dòng)配置,我們只需要配置數(shù)據(jù)地址,用戶名和密碼即可,找到application.properties文件配置如下:
spring.datasource.username=root spring.datasource.password=你的數(shù)據(jù)庫(kù)密碼 spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.url=jdbc:mysql://127.0.0.1:3306/dbgirl #JPA 配置 spring.jpa.properties.hibernate.hbm2ddl.auto=update #Spring mvc 配置前綴 spring.mvc.view.prefix=classpath:/templates/ # … 后綴 spring.mvc.view.suffix=*.html
創(chuàng)建一個(gè)bean:
package com.b505.bean;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
/**
* @Name:
* @Description: user 實(shí)體類
* @Author: 追到烏云的盡頭找太陽(yáng)
* @Version: V1.00 (版本號(hào))
* @Create Date: 2017年5月5日下午9:29:18
* @Parameters:
* @Return:
*/
@Entity
@Table(name = "user")
public class User {
@Id
@GeneratedValue
private Integer id;
@Column(name = "name")
private String name;
@Column(name = "age")
private int age;
@Column(name = "hobby")
private String hobby;
//省略set get方法
}編寫Dao層,Dao層十分簡(jiǎn)單,直接繼承Spring data Jpa可以獲取十八中默認(rèn)方法,代碼如下:
package com.b505.dao;
import org.springframework.data.jpa.repository.JpaRepository;
import com.b505.bean.User;
public interface UserDao extends JpaRepository<User, Integer> {
}編寫controller(此處直接調(diào)用Dao層,沒(méi)有經(jīng)過(guò)service)
代碼如下:
package com.b505.web;
import java.util.List;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import com.b505.bean.User;
import com.b505.dao.UserDao;
/**
* @Name:
* @Description: user控制類
* @Author: 追到烏云的盡頭找太陽(yáng)
* @Version: V1.00 (版本號(hào))
* @Create Date: 2017年5月5日下午9:30:14
* @Parameters:
* @Return:
*/
@RestController
public class UserController {
@Autowired
private UserDao userDao;
//刪除
@RequestMapping(value ="/delete" ,method = RequestMethod.POST)
public void weekdaylDelete(@RequestParam("id") Integer id){
System.out.println("刪除執(zhí)行");
userDao.delete(id);
}
//添加
@RequestMapping(value ="/add" ,method = RequestMethod.POST)
public void weekdayAdd(@RequestParam("name") String name,
@RequestParam("age") Integer age,@RequestParam("hobby") String hobby
){
User user = new User();
user.setName(name);
user.setAge(age);
user.setHobby(hobby);
userDao.save(user);
}
//查詢所有
@RequestMapping(value ="/getall" ,method = RequestMethod.GET)
public List<User> girlList(){
System.out.println("查詢所有執(zhí)行");
return userDao.findAll();
}
}至此就已經(jīng)返回json數(shù)據(jù)了,運(yùn)行一下程序進(jìn)行測(cè)試
運(yùn)行方法:找到含有mian 方法的類 運(yùn)行 run Java application;

出現(xiàn)類似如圖所示,說(shuō)明程序編譯通過(guò)。
直接在后臺(tái)數(shù)據(jù)庫(kù)添加數(shù)據(jù)(也可以是用postman)因?yàn)闉g覽器默認(rèn)是使用get方法:

下面我們?cè)诠雀铻g覽器中訪問(wèn):
在地址欄輸入 http://127.0.0.1:8080/getall
測(cè)試結(jié)果:

在controller中的add和delete方法測(cè)試結(jié)果
測(cè)試頁(yè)面代碼:
<!DOCTYPE html>
<html lang="en" ng-app="myApp" ng-controller="myController">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script src="js/angular.min.js"></script>
<link href="css/directive_bind.css" rel="external nofollow" rel="stylesheet" type="text/css" />
<script src="js/service_http.js"></script>
</head>
<body>
<!--表格-->
<div class="box">
<div class="portlet-title">
<div class="caption">
<img class="icon-reorder" src="images/record.png"></img> 人員信息管理 </div>
</div>
<table class="table table-bordered" ng-style="myStyle">
<!-- ng-style 綁定myStyle屬性,獲取表格的css樣式-->
<tr>
<td>姓名</td>
<td>年齡</td>
<td>愛(ài)好</td>
<td></td>
</tr>
<tr ng-repeat="day in days" >
<td ng-class-even="'even'"> {{day.name}} </td>
<td>
{{day.age}}
</td>
<td>
{{day.hobby}}
</td>
<td>
<button class="delete" ng-click="removeDay(day.id)"><img src="images/Delete (1).png" />刪除 </button>
</td>
</tr>
</table>
<button ng-click="add()">添加人員信息</button>
<div id="table1" ng-show='menuState.show'>
<div class="portlet-title1">
<div class="caption">
<img class="icon-reorder" src="images/record.png"></img> 添加信息 </div>
</div>
<div class="content" >
<span>姓名:</span> <input ng-model="name" type="text" placeholder="請(qǐng)輸入姓名" />
<br>
<span>年齡:</span> <input ng-model="age" type="text" placeholder="請(qǐng)輸入年齡" />
<br>
<span>愛(ài)好:</span> <input ng-model="hobby" class="hobby" type="text" placeholder="請(qǐng)輸入愛(ài)好" />
</div>
<input class="submit" ng-click="submit(name,age,hobby)" type="button" value="提交" />
</div>
</div>
</body>
</html>用的是angularJs ,相關(guān)js依賴自行添加;
在瀏覽器中輸入 : http://localhost:8080
映射自行配置,在后面的博客中我寫

點(diǎn)擊添加按鈕:

添加后結(jié)果為:

點(diǎn)擊刪除小明:


總結(jié)
至此簡(jiǎn)單的后臺(tái)已經(jīng)搭建完畢,SpringBoot能夠?qū)㈩愔苯愚D(zhuǎn)換為json數(shù)據(jù),這只是SpringBoot眾多功能中的一個(gè);后面我會(huì)將這兩次博客的源碼地址放上!
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
Java實(shí)現(xiàn)多任務(wù)執(zhí)行助手
這篇文章主要為大家詳細(xì)介紹了Java實(shí)現(xiàn)多任務(wù)執(zhí)行助手,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-08-08
Spring自定義注解實(shí)現(xiàn)接口版本管理
這篇文章主要介紹了Spring自定義注解實(shí)現(xiàn)接口版本管理,RequestMappingHandlerMapping類是與 @RequestMapping相關(guān)的,它定義映射的規(guī)則,即滿足怎樣的條件則映射到那個(gè)接口上,需要的朋友可以參考下2023-11-11
SpringBoot多模塊項(xiàng)目中優(yōu)雅實(shí)現(xiàn)自動(dòng)配置的完整指南
在 Spring Boot 開(kāi)發(fā)中,自動(dòng)配置 是一個(gè)繞不開(kāi)的核心能力,本文將結(jié)合一個(gè) RabbitService 自動(dòng)配置的示例,完整講解如何在 Spring Boot 多模塊項(xiàng)目中實(shí)現(xiàn)自動(dòng)配置,希望對(duì)大家有所幫助2026-02-02
Java消息隊(duì)列RabbitMQ之消息回調(diào)詳解
這篇文章主要介紹了Java消息隊(duì)列RabbitMQ之消息回調(diào)詳解,消息回調(diào),其實(shí)就是消息確認(rèn)(生產(chǎn)者推送消息成功,消費(fèi)者接收消息成功) , 對(duì)于程序來(lái)說(shuō),發(fā)送者沒(méi)法確認(rèn)是否發(fā)送成功,需要的朋友可以參考下2023-07-07
idea顯示springboot多服務(wù)啟動(dòng)界面service操作
這篇文章主要介紹了idea顯示springboot多服務(wù)啟動(dòng)界面service操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-09-09
springboot集成elasticsearch7的圖文方法
本文記錄springboot集成elasticsearch7的方法,本文通過(guò)圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),需要的朋友參考下吧2021-05-05

