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

實(shí)例講解使用Spring通過JPA連接到Db2

 更新時(shí)間:2019年06月11日 09:35:34   作者:Ozzy Osborne  
這篇文章主要介紹了通過實(shí)例講解使用Spring通過JPA連接到Db2,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,下面我們來一起學(xué)習(xí)一下吧

前提條件

  • Maven
  • 一個(gè)擁有訪問憑證的 Db2 實(shí)例:
    • IBM Cloud
    • 本地
  • Java JDK
  • IBM Cloud 開發(fā)者工具(可選)

創(chuàng)建項(xiàng)目

首先,確定您計(jì)劃使用 IBM Cloud 開發(fā)者工具還是 Spring Initializr 創(chuàng)建項(xiàng)目,然后按照各自的說明進(jìn)行操作。

IBM Cloud 開發(fā)者工具

如果您使用 IBM Cloud 開發(fā)者工具創(chuàng)建項(xiàng)目,那么使用 dev 插件創(chuàng)建新的 Spring 微服務(wù)。

ibmcloud dev create

1.選擇 Backend Service / Web App。

2.選擇 Java – Spring。

3.選擇 Java Microservice with Spring (Microservice)。

4.指定項(xiàng)目名稱(例如 MyDb2JPAProject)。

5.拒絕向應(yīng)用程序添加服務(wù) (n)。

6.選擇合適的工具鏈,如果不確定,選擇 None("No Devops")。

7.切換到應(yīng)用程序目錄。

8.將 Spring JPA 啟動(dòng)器添加到 pom.xml 中的 dependencies 元素中:

<dependency>
<groupId>org.springframework.boot</groupId>>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency>

Spring Initializr

如果您使用 Spring Initializr 創(chuàng)建項(xiàng)目,那么使用瀏覽器訪問 https://start.spring.io。

1.選擇您的 Spring Boot 級(jí)別(目前默認(rèn)版本為 2.0.4)。

2.指定項(xiàng)目工件名稱(例如 mydb2jpaproject)。

3.添加 Web 依賴項(xiàng)。

4.添加 JPA 依賴項(xiàng)。

5.選擇 Generate Project,然后下載應(yīng)用程序包。

6.解壓程序包。

7.切換到解壓目錄。

將db2jcc4.jar 添加到項(xiàng)目中

Maven 中不提供 Db2 JDBC Driver (JCC),所以您必須直接從 IBM 下載,并將其添加到本地 maven 倉庫。

Db2 JDBC 驅(qū)動(dòng)程序版本和下載中選擇并下載適合您的驅(qū)動(dòng)程序包。

解壓此程序包,并將 db2jcc4.jar 文件保存到項(xiàng)目根目錄下的一個(gè)新的 lib 目錄中。

在此 lib 目錄中,將Jar 作為 Maven 包添加,并根據(jù)您下載的程序包相應(yīng)地更改版本:

mvn install:install-file -DlocalRepositoryPath=lib -DcreateChecksum=true -Dpackaging=jar -Dfile=./lib/db2jcc4.jar -DgroupId=com.ibm.db2.jcc -DartifactId=db2jcc4 -Dversion=4.24.92

將 lib 目錄作為 Maven 倉庫添加到 pom.xml:

<repositories>
<repository>
<id>repo</id>
<url>file://${project.basedir}/lib</url>
</repository>
</repositories>

將依賴添加到 pom.xml 中的 dependency 元素,并相應(yīng)地更改版本以實(shí)現(xiàn)匹配:

<dependency>
<groupId>com.ibm.db2.jcc</groupId>
<artifactId>db2jcc4</artifactId>
<version>4.24.92</version>
</dependency>


創(chuàng)建示例表

對(duì)于本快速指南,我們只使用一個(gè)數(shù)據(jù)庫和一個(gè)表。

使用 Db2 命令提示符連接到 Db2 實(shí)例,并發(fā)出以下 SQL 語句創(chuàng)建 things 表并填充一些數(shù)據(jù):

create table things (id int, name varchar(255))
insert into things (id,name) values (1,'fish'),(2,'wibble'),(3,'stiletto')

如果您為此表使用不同的名稱,就需要記住這個(gè)名稱,以便稍后創(chuàng)建 JPA 類時(shí)使用。

為 Db2 實(shí)例配置 Spring 數(shù)據(jù)

Spring 需要被告知如何與數(shù)據(jù)庫進(jìn)行通信,與其他 Spring 配置一樣,這些信息在 application.properties(或 application.yaml)文件中(位于 src/main/resources/application.properties)。

將以下屬性添加到 application.properties 文件:

spring.datasource.url=jdbc:db2://mydb2host:50000/mydb2databasename
spring.datasource.username=mydb2username
spring.datasource.password=mydb2password

記得更改這些值,以便與您的 Db2 實(shí)例的位置和憑證相匹配。

創(chuàng)建 JPA 類

在項(xiàng)目中,找到 Spring Boot 主應(yīng)用程序類。

對(duì)于通過 Spring Initializr 創(chuàng)建的項(xiàng)目,主應(yīng)用程序類以創(chuàng)建項(xiàng)目時(shí)提供的工件名稱來命名。例如,如果通過 com.example 包命名工件 demo,您將在 src/main/java/com/example/DemoApplication.java 目錄下找到主類。

對(duì)于通過 IBM Cloud 開發(fā)者工具創(chuàng)建的項(xiàng)目,主應(yīng)用程序類始終位于 src/main/java/application/SBApplication.java 目錄下。

在與應(yīng)用程序類相同的目錄下,為 JPA 類 jpa 創(chuàng)建一個(gè)目錄。

在 jpa 目錄下,創(chuàng)建表示表行的類。該類應(yīng)該與您之前創(chuàng)建的表使用相同的名稱。

import javax.persistence.Entity;
import javax.persistence.Id;
@Entity
public class Things {
@Id
private Long id;
private String name;
public Things(){
}
@Override
public String toString() {
return String.format("Things[id=%d, name='%s']", id, name);
}
}

在與該類相同的目錄下,創(chuàng)建用于訪問數(shù)據(jù)的 Repository 類。接口用您剛才創(chuàng)建的類的類型。

import java.util.List;
import org.springframework.data.repository.CrudRepository;
public interface Repository extends CrudRepository<Things, Long>
{
List<Things> findByName(String name);
Iterable<Things> findAll();
}

將 JPA 類的簡單調(diào)用添加到 RestController

對(duì)于通過 Spring Initializr 創(chuàng)建的項(xiàng)目,您必須創(chuàng)建自己的 RestController 類。在 jpa 目錄旁創(chuàng)建一個(gè)控制器目錄,然后在該目錄下創(chuàng)建 RestController 類。

對(duì)于通過 IBM Cloud 開發(fā)者工具創(chuàng)建的項(xiàng)目,在 src/main/java/application/rest/v1/Example.java 中已為您提供 RestController 示例。

RestController 為您的應(yīng)用程序提供 REST 端點(diǎn)。使用 @Autowired 將倉庫注入到 RestController 中,然后添加一個(gè)可以返回表中數(shù)據(jù)的簡單端點(diǎn):

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.http.HttpStatus;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.ResponseBody;
import java.util.ArrayList;
import java.util.List;
@RestController
public class Example {
@Autowired
Repository repo;
@RequestMapping("test")
public @ResponseBody ResponseEntity<String> example() {
List<String> list = new ArrayList<>();
list.add("Table data...");
for(Things things: repo.findAll()){
list.add(things.toString());
}
return new ResponseEntity<String>(list.toString(), HttpStatus.OK);
}
}

您可能需要為之前創(chuàng)建的 Things 和 Repository 類添加導(dǎo)入功能。

運(yùn)行該示例

您可以像運(yùn)行任何其他 Spring Boot 應(yīng)用程序一樣運(yùn)行該示例。

mvn spring-boot:run

然后,您可以訪問此端點(diǎn),查看它查詢數(shù)據(jù)庫和檢索信息的情況。

$ curl http://localhost:8080/test
[Table data..., Things[id=1, name='fish'], Things[id=2, name='wibble'], Things[id=3, name='stiletto']]

總結(jié)

通過使用 Spring 自動(dòng)配置和 Spring Boot 屬性,Spring Boot 能夠使我們以 Spring 原生方式輕松地配置和使用 Db2 實(shí)例。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Maven依賴作用域和依賴傳遞的使用

    Maven依賴作用域和依賴傳遞的使用

    本文主要介紹了Maven依賴作用域和依賴傳遞的使用,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • 淺談Java線程池是如何運(yùn)行的

    淺談Java線程池是如何運(yùn)行的

    這篇文章主要介紹了淺談Java線程池是如何運(yùn)行的,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-11-11
  • java集合類遍歷的同時(shí)如何進(jìn)行刪除操作

    java集合類遍歷的同時(shí)如何進(jìn)行刪除操作

    這篇文章主要介紹了java集合類遍歷的同時(shí)如何進(jìn)行刪除操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Java:詳解Java中的異常

    Java:詳解Java中的異常

    這篇文章主要介紹了java中的異常,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2021-08-08
  • Java實(shí)現(xiàn)樹形菜單的方法總結(jié)

    Java實(shí)現(xiàn)樹形菜單的方法總結(jié)

    當(dāng)我們想要展示層級(jí)結(jié)構(gòu),如文件目錄、組織結(jié)構(gòu)或分類目錄時(shí),樹形菜單是一個(gè)直觀且有效的解決方案,本文為大家整理了java中幾種常見方法,希望對(duì)大家有所幫助
    2023-08-08
  • Java中對(duì)list map根據(jù)map某個(gè)key值進(jìn)行排序的方法

    Java中對(duì)list map根據(jù)map某個(gè)key值進(jìn)行排序的方法

    今天小編就為大家分享一篇Java中對(duì)list map根據(jù)map某個(gè)key值進(jìn)行排序的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2018-07-07
  • SpringBoot分離打Jar包的兩種配置方式

    SpringBoot分離打Jar包的兩種配置方式

    這篇文章主要介紹了SpringBoot分離打Jar包的兩種配置方式,方式一是基于maven-jar-plugin,方式二是基于spring-boot-maven-plugin,文中結(jié)合實(shí)例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下
    2022-11-11
  • java實(shí)現(xiàn)簡易連連看小游戲

    java實(shí)現(xiàn)簡易連連看小游戲

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡易連連看小游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • java筆記學(xué)習(xí)之操作符

    java筆記學(xué)習(xí)之操作符

    本篇文章給大家分享了關(guān)于Java中操作符的相關(guān)知識(shí)點(diǎn)以及難點(diǎn)總結(jié),有需要的朋友參考學(xué)習(xí)下吧。
    2018-04-04
  • 編寫android撥打電話apk應(yīng)用實(shí)例代碼

    編寫android撥打電話apk應(yīng)用實(shí)例代碼

    這篇文章主要介紹了編寫android撥打電話apk應(yīng)用實(shí)例代碼,十分的實(shí)用,這里分享給大家,有需要的小伙伴可以參考下
    2015-04-04

最新評(píng)論

义乌市| 额济纳旗| 太和县| 五华县| 阿拉善右旗| 太湖县| 井陉县| 南京市| 乌兰察布市| 阿城市| 阿合奇县| 金沙县| 运城市| 全椒县| 兴义市| 武邑县| 太原市| 海口市| 永州市| 怀化市| 鄂托克前旗| 固镇县| 张家口市| 志丹县| 东至县| 英德市| 永州市| 依兰县| 安阳县| 临颍县| 明星| 沂南县| 汝阳县| 革吉县| 城口县| 沐川县| 石狮市| 册亨县| 古田县| 霍邱县| 福安市|