English | 中文
这是 PingCAP 为 Spring Boot 及 Spring Data JPA 编写的用于连接 TiDB 的示例项目。另外,此项目使用 Hibernate 作为 Spring Data JPA 提供者。
TiDB 是一个兼容 MySQL 的数据库。Spring 是当前流行的开源 Java 容器框架,我们选择使用 Spring Boot 作为使用 Spring 的方式。
- 推荐 Java Development Kit (JDK) 17 及以上版本,你可以根据公司及个人需求,自行选择 OpenJDK 或 Oracle JDK。
- Maven 3.8 及以上版本。
- Git。
- TiDB 集群。如果你还没有 TiDB 集群,可以按照以下方式创建:
- (推荐方式)参考创建 TiDB Serverless 集群,创建你自己的 TiDB Cloud 集群。
- 参考部署本地测试 TiDB 集群或部署正式 TiDB 集群,创建本地集群。
git clone https://github.com/tidb-samples/tidb-java-springboot-jpa-quickstart.git
cd tidb-java-springboot-jpa-quickstart
(选项 1) TiDB Serverless
-
在 TiDB Cloud 控制台中,打开 Clusters 页面,选择你的 TiDB Serverless 集群,进入 Overview 页面,点击右上角的 Connect 按钮。
-
确认窗口中的配置和你的运行环境一致。
- Endpoint Type 为 Public
- Connect With 为 General
- Operating System 为你的运行环境
如果你在 Windows Subsystem for Linux (WSL) 中运行,请切换为对应的 Linux 发行版。
-
点击 Generate password 生成密码。
如果你之前已经生成过密码,可以直接使用原密码,或点击 Reset Password 重新生成密码。
-
运行以下命令,将
env.sh.example
复制并重命名为env.sh
:cp env.sh.example env.sh
-
复制并粘贴对应连接字符串至
env.sh
中。需更改部分示例结果如下。export TIDB_HOST='{gateway-region}.aws.tidbcloud.com' export TIDB_PORT='4000' export TIDB_USER='{prefix}.root' export TIDB_PASSWORD='{password}' export TIDB_DB_NAME='test' export USE_SSL='true'
注意替换
{}
中的占位符为 Connect 窗口中获得的值。TiDB Serverless 要求使用 secure connection,因此
USE_SSL
的值应为true
。 -
保存文件。
(选项 2) TiDB Dedicated
-
在 TiDB Cloud Web Console 中,选择你的 TiDB Dedicated 集群,进入 Overview 页面,点击右上角的 Connect 按钮。点击 Allow Access from Anywhere。
更多配置细节,可参考 TiDB Dedicated 标准连接教程.
-
运行以下命令,将
env.sh.example
复制并重命名为env.sh
:cp env.sh.example env.sh
-
复制并粘贴对应的连接字符串至
env.sh
中。需更改部分示例结果如下。export TIDB_HOST='{host}.clusters.tidb-cloud.com' export TIDB_PORT='4000' export TIDB_USER='{prefix}.root' export TIDB_PASSWORD='{password}' export TIDB_DB_NAME='test' export USE_SSL='false'
注意替换
{}
中的占位符为 Connect 窗口中获得的值,并配置前面步骤中下载好的证书路径。 -
保存文件。
(选项 3) 自建 TiDB
-
运行以下命令,将
env.sh.example
复制并重命名为env.sh
:cp env.sh.example env.sh
-
复制并粘贴对应的连接字符串至
env.sh
中。需更改部分示例结果如下。export TIDB_HOST='{tidb_server_host}' export TIDB_PORT='4000' export TIDB_USER='root' export TIDB_PASSWORD='{password}' export TIDB_DB_NAME='test' export USE_SSL='false'
注意替换
{}
中的占位符为你的 TiDB 对应的值。如果你在本机运行 TiDB,默认 Host 地址为127.0.0.1
,密码为空。 -
保存文件。
-
运行下述命令,启动示例代码编写的服务:
make
-
打开另一个终端,开启请求脚本:
make request
关于使用到的三方库及框架,可以参考各自官方文档:
- 你可以继续阅读开发者文档,以获取更多关于 TiDB 的开发者知识。例如:插入数据,更新数据,删除数据,单表读取,事务,SQL 性能优化等。
- 如果你更倾向于参与课程进行学习,我们也提供专业的 TiDB 开发者课程支持,并在考试后提供相应的资格认证。
- 我们还有额外针对 Java 开发者的课程:使用 Connector/J - TiDB v6 及在 TiDB 上开发应用的最佳实践 - TiDB v6 可供选择。