日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 前端技术 > javascript >内容正文

javascript

idal 创建springboot 项目_手把手的SpringBoot教程,SpringBoot创建web项目(四)

發(fā)布時間:2023/12/1 javascript 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 idal 创建springboot 项目_手把手的SpringBoot教程,SpringBoot创建web项目(四) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

在實際的開發(fā)過程中,我們需要前端頁面向Java端提交請求,這些請求一般分為get方式和post方式,不管是哪一種方式,一般都會攜帶一些參數(shù)。這一節(jié),我們來演示一下如何給Controller傳遞參數(shù)。

代碼:

@RestController

@RequestMapping("hello")

public class HelloController {


public String hello(){

return "Hello Spring Boot";

}



@RequestMapping("login")

public String login(@RequestParam("username") String username){

return "用戶名:" + username;

}

}
這邊我們用到了@RequestParam注解。

然后,啟動項目,在地址欄訪問:http://localhost:8088/demo/login?username=jack

即可看到效果:

如果我們參數(shù)后面什么都不寫:

http://localhost:8088/demo/login?username=

那么返回就是空:

我們可以設(shè)置參數(shù)的默認(rèn)值:

@RequestMapping("login")

public String login(@RequestParam(value="username",defaultValue="未知用戶") String username){

return "用戶名:" + username;

}

再次訪問:http://localhost:8088/demo/login?username=

得:

接下來,我們來演示如何在SpringBoot項目中連接數(shù)據(jù)庫,并且自動創(chuàng)建一張表。

按照慣例,數(shù)據(jù)庫我們依然使用mysql,至于什么是jpa呢?

jpa是sun推出的持久化規(guī)范(java persistens api),JPA通過JDK 5.0注解或XML描述對象-關(guān)系表的映射關(guān)系,并將運行期的實體對象持久化到數(shù)據(jù)庫中。JPA 的目標(biāo)之一是制定一個可以由很多供應(yīng)商實現(xiàn)的API,并且開發(fā)人員可以編碼來實現(xiàn)該API,而不是使用私有供應(yīng)商特有的API。

實現(xiàn)JPA規(guī)范的框架,比較出名的是hibernate。

現(xiàn)在,我們需要在pom文件中引入兩個依賴:

<dependency>
<groupId>org.springframework.bootgroupId>
<artifactId>spring-boot-starter-data-jpaartifactId>
dependency>

<dependency>
<groupId>mysqlgroupId>
<artifactId>mysql-connector-javaartifactId>
dependency>

分別為spring-data-jpq和mysql驅(qū)動。

Spring Data是一個用于簡化數(shù)據(jù)庫訪問,并支持云服務(wù)的開源框架。其主要目標(biāo)是使得對數(shù)據(jù)的訪問變得方便快捷,并支持map-reduce框架和云計算數(shù)據(jù)服務(wù)。Spring Data 包含多個子項目,spring-data-jpq就是其中的一個。

修改yml文件:

server:
port: 8088
context-path: /demo
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/crud
username: root
password: 123456
jpa:
hibernate:
ddl-auto: create
show-sql: true

其中,設(shè)置ddl-auto: create的目的就是在項目啟動的時候,就創(chuàng)建表。

接著,我們?nèi)バ陆ㄒ粋€JavaBean:

代碼:

package com.springboot.study.bean;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;

@Entity
public class User {

@Id
@GeneratedValue
private Integer id;

private String username;
private String password;

//無參構(gòu)造方法,這個必須要有,不然會報錯
public User() {

}

public Integer getId() {
return id;
}

public void setId(Integer id) {
this.id = id;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public String getPassword() {
return password;
}

public void setPassword(String password) {
this.password = password;
}




}

其中,主鍵ID設(shè)置為自增長。

然后,啟動項目,發(fā)現(xiàn)數(shù)據(jù)庫的表已經(jīng)自動生成了。

在上一節(jié)的yml文件中,我們設(shè)置 ddl-auto 為 create,這會導(dǎo)致每一次啟動項目的時候,都會去數(shù)據(jù)庫里面重新創(chuàng)建表。這不是我們希望看到的,一般在項目開發(fā)中,我們更愿意把這個配置設(shè)置為update,這樣的話,啟動項目時它會去檢測,如果表已經(jīng)存在并且里面是有數(shù)據(jù)的,即不會去重新建表了。

server:
port: 8088
context-path: /demo
spring:
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://127.0.0.1:3306/crud
username: root
password: 123456
jpa:
hibernate:
ddl-auto: update
show-sql: true

我們需要使用spring-data-jpa來幫我們實現(xiàn)對用戶表的增刪改查,先去寫一個接口,集成jpa:

package com.springboot.study.service;

import org.springframework.data.jpa.repository.JpaRepository;

import com.springboot.study.bean.User;
public interface UserService extends JpaRepository{

}

我們只需要寫上類名和主鍵的類型,即可。

其他什么都不用寫,就OK啦。

編寫Controller:

代碼:

package com.springboot.study.controller;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;

import com.springboot.study.bean.User;
import com.springboot.study.service.UserService;

@RestController
public class UserController {

@Autowired
private UserService userService;

/**
* 獲取所有的用戶列表
* @return
*/
@RequestMapping("findAllUsers")
public ListfindAllUsers(){
return userService.findAll();
}

}

因為邏輯比較簡單,我就直接給出一個例子了,啟動項目,看結(jié)果。。

這次啟動時間稍微長了一點:

瀏覽器輸入:
http://localhost:8088/demo/findAllUsers

返回:

nice!

SpringBoot果然好用,一句sql都沒寫,甚至實現(xiàn)方法都沒寫,我們就完成了功能。

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎勵來咯,堅持創(chuàng)作打卡瓜分現(xiàn)金大獎

總結(jié)

以上是生活随笔為你收集整理的idal 创建springboot 项目_手把手的SpringBoot教程,SpringBoot创建web项目(四)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。