springboot 项目使用 gitlab 的 API

前言

需求是通过gitlab的api获取其中的数据。

gitlab官方API文档:https://docs.gitlab.com/ee/api/users.html
在这里插入图片描述

gitlab的github地址:https://github.com/eutkin/gitlab4j-api/
在这里插入图片描述

获取用户 access token

首先我们需要获取gitlab的用户 access token, 并且在请求的时候附带这个token,gitlab才能认证我们的身份并返回数据。

1.登录 GitLab。
在这里插入图片描述

2.登录后,点击右上角的头像图标然后选择 Preferences。
在这里插入图片描述
在这里插入图片描述

3.在 access token 界面就可以新建token了。
在这里插入图片描述

当你是group的管理员之后,就可以通过该token获取users了。

Spring boot项目集成GitLab依赖

1 pom依赖

<dependency>
	<groupId>org.gitlab4j</groupId>
	<artifactId>gitlab4j-api</artifactId>
	<version>5.3.0</version>
</dependency>

2 配置文件

server:
  port: 8899

spring:
  # 配置数据源
  datasource:
    url: jdbc:mysql://127.0.0.1:3306/db?useUnicode=true&characterEncoding=utf8&serverTimezone=GMT%2b8
    username: root
    password: root
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.zaxxer.hikari.HikariDataSource

  mvc:
    pathmatch:
      matching-strategy: ant_path_matcher


mybatis-plus:
  configuration:
    log-impl: org.apache.ibatis.logging.stdout.StdOutImpl
  # 扫描通用枚举包
  type-enums-package: com.mry.code.count.enums


files:
  upload:
    path: C:/file/ # 文件存储位置

code:
  count:
    gitlab:
      url: http://127.0.0.1:8181/
      authToken: xxxxxxxx

3 启动类

@MapperScan("com.mry.code.count.mapper")
@EnableTransactionManagement // 事务
@SpringBootApplication
public class SpringbootCodeCountServerApplication {
   

    public static void main(String[] args) {
   
        SpringApplication.run(SpringbootCodeCountServerApplication.class, args);
    }

}

4 核心代码

@Service
@Slf4j
public class CodeCountService {
   

    @Value("${code.count.gitlab.url}")
    private String url;

    @Value("${code.count.gitlab.authToken}")
    private String authToken;

    /**
     * 多条件分页查询
     *
     * @param current 当前页
     * @param size    页面显示的数据条数
     * @param project
     * @return
     */
    public ResponseDTO list(Integer current, Integer size, Project project) throws Exception {
   
        GitLabApi gitLabAPI = new GitLabApi(url, authToken)
您好!要在Spring Boot中获取GitLab,您可以使用GitLab API来实现。以下是一些步骤: 1. 首先,您需要在您的Spring Boot项目中添加相应的依赖项。可以在您的`pom.xml`文件中添加以下依赖项: ```xml <dependency> <groupId>org.gitlab4j</groupId> <artifactId>gitlab4j-api</artifactId> <version>4.15.7</version> </dependency> ``` 2. 接下来,您需要创建一个GitLab实例并进行身份验证。您可以使用您的GitLab帐户的访问令牌来进行身份验证。在您的代码中,您可以创建一个`GitLabApi`实例并使用您的访问令牌进行身份验证: ```java import org.gitlab4j.api.GitLabApi; //... String gitLabUrl = "https://your-gitlab-url.com"; String personalAccessToken = "your-personal-access-token"; GitLabApi gitLabApi = new GitLabApi(gitLabUrl, personalAccessToken); ``` 请确保将`your-gitlab-url.com`替换为实际的GitLab URL,并将`your-personal-access-token`替换为您自己的访问令牌。 3. 一旦您进行了身份验证,您就可以使用`GitLabApi`实例来执行各种操作,例如获取项目列表、获取存储库信息等。以下是一个示例代码,演示如何获取GitLab上的项目列表: ```java import org.gitlab4j.api.models.Project; //... List<Project> projects = gitLabApi.getProjectApi().getProjects(); for (Project project : projects) { System.out.println("Project name: " + project.getName()); System.out.println("Project description: " + project.getDescription()); // 可以获取更多项目信息 } ``` 这只是一个简单的示例,您可以根据您的需求使用其他GitLab API功能。 希望这能帮助到您!如有任何疑问,请随时提问。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值