OceanBase學習之路4|SpringBoot 連線示例
本文介紹 SpringBoot 連線示例。
環境配置
JDK1.8 和 OceanBase 3.x(mysql模式/oracle模式)
示例程式碼
Pom.xml 檔案
<?xml version="1.0" encoding="UTF-8"?> <project xmlns=" xmlns:xsi=" xsi:schemaLocation=" <modelVersion>4.0.0</modelVersion> <groupId>com.alipay.test</groupId> <artifactId>SpringBootOracleJPA</artifactId> <version>1.0-SNAPSHOT</version> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.0.1.RELEASE</version> </parent> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> <exclusions> <exclusion> <artifactId>spring-boot-starter-json</artifactId> <groupId>org.springframework.boot</groupId> </exclusion> </exclusions> </dependency> <!-- <dependency> <groupId>javax.validation</groupId> <artifactId>validation-api</artifactId> <version>2.0.1.Final</version> </dependency> <dependency> <groupId>com.oracle</groupId> <artifactId>ojdbc6</artifactId> <version>12.1.0.1</version> </dependency> <dependency> <groupId>com.alipay.oceanbase</groupId> <artifactId>oceanbase-client</artifactId> <version>3.2.3</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-jpa</artifactId> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> <!-- <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId> <version>1.2.47</version> </dependency> <dependency> <groupId>com.fasterxml.jackson.core</groupId> <artifactId>jackson-databind</artifactId> <version>2.8.5</version> </dependency> <dependency> <groupId>org.codehaus.jackson</groupId> <artifactId>jackson-core-asl</artifactId> <version>1.9.4</version> </dependency> <dependency> <groupId>org.apache.tomcat</groupId> <artifactId>tomcat-juli</artifactId> <version>9.0.37</version> </dependency> </dependencies> </project>
application.yml 檔案
server: port: 8081 spring: jpa: database: oracle show-sql: true datasource: driver-class-name: com.alipay.oceanbase.jdbc.Driver url: jdbc:oceanbase://host:port/test?characterEncoding=UTF-8 username: **u*** password: **p*** #spring.jpa.hibernate.ddl-auto=update jackson: serialization: indent_output: true
測試類
相關程式碼如下:
package com.alipay; import javax.persistence.*; import java.io.Serializable; import java.sql.Date; /* * CREATE TABLE A(id integer, flightNo varchar2(50)) * */ @Entity @Table( name = "A" ) public class A implements Serializable { public Integer getFlightId() { return flightId; } public void setFlightId(Integer flightId) { this.flightId = flightId; } public String getFlightNo() { return flightNo; } public void setFlightNo(String flightNo) { this.flightNo = flightNo; } @Id // @GeneratedValue // oracle 沒有自增策略,新增該註解可以自動生成一個序列,提供自增主鍵,若資料庫已有相關序列,可以忽 //略該註解。 @Column(name = "id") private Integer flightId; @Column( name = "flightNo" ) private String flightNo; }
package com.alipay; import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.stereotype.Repository; @Repository public interface AMapper extends JpaRepository<A, Integer> { }
package com.alipay; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import java.util.Optional; @RestController @RequestMapping("/") public class Test { @Autowired private AMapper a; @GetMapping("/{id}") public String getOne(@PathVariable int id) { Optional<A> obj = a.findById(id); String result = "A.id is:" + obj.get().getFlightId() + ", no is :" + obj.get().getFlightNo(); System.out.println(result); return result; } }
package com.alipay; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class App { public static void main( String[] args ) { SpringApplication.run(App.class, args); } }
執行上面的程式碼,如下日誌表示啟動成功。
然後透過
就可以訪問資料庫,
xxxxx
就是對應的資料庫
id
欄位,如果資料庫存在就可以查詢到結果。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70026075/viewspace-2932334/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- OceanBase學習之路3 |SpringJDBC 連線示例SpringJDBC
- OceanBase學習之路9|連線方式概述
- OceanBase學習之路6|透過 Obclient 連線 OceanBase 租戶client
- OceanBase學習之路5|C 應用程式連線 OceanBase 資料庫資料庫
- OceanBase學習之路8|Java 應用程式連線 OceanBase 資料庫Java資料庫
- OceanBase學習之路7|透過 MySQL 客戶端連線 OceanBase 租戶MySql客戶端
- OceanBase學習之路15|體驗 Operational OLAP
- OceanBase學習之路10|C 相關 API 介紹API
- OceanBase學習之路13|體驗多租戶特性
- OceanBase學習之路38|如何合併資源池?
- OceanBase學習之路47|什麼是資源管理?
- OceanBase學習之路54|如何配置多租戶管理?
- 從文件上學習下OCEANBASE4
- OceanBase學習之路16|體驗 OceanBase 資料庫熱點行更新能力資料庫
- OceanBase學習之路11|體驗 DDL 新特性(Oracle 模式)Oracle模式
- OceanBase學習之路12|體驗 DDL 新特性(MySQL 模式)MySql模式
- OceanBase學習之路37|什麼是分裂資源池?
- OceanBase學習之路39|什麼是修改資源池?
- 《springboot學習篇4》Spring Boot
- SpringBoot + JPA的自學之路(三)多表連線查詢Spring Boot
- OceanBase學習之路45|如何檢視資源單元配置?
- OceanBase學習之路48|最佳效能引數的配置參考
- SpringBoot學習筆記(4)Spring Boot筆記
- 【SQL 學習】表連線SQL
- 學習連連看 連線線之謎+道具的使用
- 線性表學習(4)
- OceanBase學習之路40|如何將資源池分配給租戶?
- OceanBase學習之路42|建立新的資源池的步驟?
- OceanBase學習之路49|最小資源引數配置是什麼?
- OceanBase學習之路53|多租戶管理引數如何設定?
- Python學習之路4-if語句Python
- Python 連線 Oracle 示例PythonOracle
- 外連線(outer join)示例
- MySQL學習-連線查詢MySql
- HikariCP連線池的學習
- SpringBoot?整合mongoDB並自定義連線池的示例程式碼Spring BootMongoDB
- OceanBase學習之路14|體驗並行匯入 & 資料壓縮並行
- OceanBase學習之路43|如何刪除不再使用的資源單元?