最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

SpringBoot簡(jiǎn)單的SpringBoot后端實(shí)例

 更新時(shí)間:2024年03月05日 10:09:12   作者:喵喵@香菜  
這篇文章主要介紹了SpringBoot簡(jiǎn)單的SpringBoot后端實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教

下面案例作為自己學(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í)行助手

    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)接口版本管理

    這篇文章主要介紹了Spring自定義注解實(shí)現(xiàn)接口版本管理,RequestMappingHandlerMapping類是與 @RequestMapping相關(guān)的,它定義映射的規(guī)則,即滿足怎樣的條件則映射到那個(gè)接口上,需要的朋友可以參考下
    2023-11-11
  • SpringBoot多模塊項(xiàng)目中優(yōu)雅實(shí)現(xiàn)自動(dòng)配置的完整指南

    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獲取UTC時(shí)間的方法詳解

    Java獲取UTC時(shí)間的方法詳解

    這篇文章主要介紹了Java獲取UTC時(shí)間的方法,結(jié)合具體實(shí)例形式詳細(xì)分析了Java針對(duì)時(shí)區(qū)、本地時(shí)間、時(shí)間偏移量等相關(guān)操作技巧,需要的朋友可以參考下
    2017-04-04
  • Java消息隊(duì)列RabbitMQ之消息回調(diào)詳解

    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操作

    這篇文章主要介紹了idea顯示springboot多服務(wù)啟動(dòng)界面service操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-09-09
  • Java多線程并發(fā)編程和鎖原理解析

    Java多線程并發(fā)編程和鎖原理解析

    這篇文章主要介紹了Java多線程并發(fā)編程和鎖原理解析,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • Java面試題沖刺第七天--Spring框架1

    Java面試題沖刺第七天--Spring框架1

    這篇文章主要為大家分享了最有價(jià)值的三道Spring框架面試題,涵蓋內(nèi)容全面,包括數(shù)據(jù)結(jié)構(gòu)和算法相關(guān)的題目、經(jīng)典面試編程題等,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Java中的setting和getting使用方法

    Java中的setting和getting使用方法

    為了保障數(shù)據(jù)的安全性,通常將數(shù)據(jù)成員定義為private(封裝或私有化),這樣外部代碼就無(wú)法直接訪問(wèn)這些數(shù)據(jù),只能通過(guò)類提供的公共方法來(lái)進(jìn)行訪問(wèn),這種方法主要包括setter和getter方法,以及構(gòu)造方法,setter方法用于給私有屬性賦值
    2024-09-09
  • springboot集成elasticsearch7的圖文方法

    springboot集成elasticsearch7的圖文方法

    本文記錄springboot集成elasticsearch7的方法,本文通過(guò)圖文實(shí)例代碼相結(jié)合給大家介紹的非常詳細(xì),需要的朋友參考下吧
    2021-05-05

最新評(píng)論

珠海市| 内乡县| 扎鲁特旗| 巴塘县| 前郭尔| 玉环县| 吉安县| 来安县| 景宁| 正安县| 如皋市| 武穴市| 乐安县| 崇义县| 苍山县| 克山县| 法库县| 汝城县| 揭西县| 淄博市| 宁晋县| 和平县| 运城市| 民勤县| 屏山县| 永春县| 环江| 杭锦后旗| 漳州市| 南城县| 云霄县| 沁阳市| 稷山县| 阿拉尔市| 山西省| 定远县| 红桥区| 修文县| 聂拉木县| 黑龙江省| 大安市|