java获取jira上的任务
package util;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
//通过Java获取jira上的任务
public class TestJira {
public static void main(String[] args) throws IOException {
//jql中的空格需要用%20替换
//jql排序要放在and条件之后加%20order%20by%20resolutiondate
//jql查询默认只查询50条,如果想查询更多或者更少的话需要在条件最好加&maxResults=1,如果有order by要放在order by之后
//查询还未完成开发并且已经超期的任务
String overdueJira = initIssues("due<now()%20and%20resolution%20is%20EMPTY%20and%20project=testJira");
//project=testJira%20AND%20status=待集成,其中待集成需要通过url编码转换一下。project代表项目名
String completeJira = initIssues("project=testJira%20AND%20status=%E5%BE%85%E9%9B%86%E6%88%90");
System.out.println("===========超期jira"+overdueJira+"个=============");
System.out.println("===========完成jira"+completeJira+"个=============");
}
static String uri = "jira地址";
static String user = "jira用户名";
static String pwd = "jira密码";
static String osname = System.getProperty("os.name").toLowerCase();
//通过cmd运行
private static String executeCmd(String command) throws IOException {
StringBuffer result = new StringBuffer();
Process process = null;
InputStream is = null;
BufferedReader br = null;
String line = null;
String num = "0";
try {
//windows平台下用cmd发生请求,windows需要安装Cygwin
if (osname.indexOf("windows") >= 0) {
process = new ProcessBuilder("cmd.exe", "/c", command).start();
} else {
//linux平台下执行请求
process = new ProcessBuilder("/bin/sh", "-c", command).start();
}
is = process.getInputStream();
br = new BufferedReader(new InputStreamReader(is, "UTF-8"));
while ((line = br.readLine()) != null) {
result.append(line);
}
String info = result.toString();
info = info.substring(info.indexOf("no-transform")+12, info.length());
JSONObject parseObject = JSONObject.parseObject(info);
num = parseObject.getString("total");//获取任务数
JSONArray issues = parseObject.getJSONArray("issues");//获取任务详情
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} finally {
//关闭连接
br.close();
process.destroy();
is.close();
}
return num;
}
//根据条件查询数据
public static String initIssues(String jql) throws IOException{
//可以在cmd直接运行以下命令
//curl -D- -u jiar用户名:jira密码 -X GET -H "Content-Type: application/json" "jira地址/rest/api/2/search?jql=due<now()%20and%20resolution%20is%20EMPTY%20and%20project=testJira"
String command = "curl -D- -u " + user + ":" + pwd + " -X GET -H \"Content-Type: application/json\" \"" + uri + "/rest/api/2/search?jql=" + jql + "\"";
String num = executeCmd(command);
return num;
}
}
java获取jira上的任务相关推荐
- java获取屏幕上某坐标点的颜色
全栈工程师开发手册 (作者:栾鹏) java教程全解 java获取屏幕上某坐标点的颜色.通过先获取屏幕截图,再获取坐标点颜色. public Color getScreenPixel(int x, i ...
- linux java读取文件夹下文件名,Java获取Linux上指定文件夹下所有第一级子文件夹...
说明:需要只获得第一级文件夹目录 package com.sunsheen.jfids.studio.monitor.utils; import java.io.BufferedReader; imp ...
- java 获取服务器上文件,java获取远程服务器上的文件
java获取远程服务器上的文件 内容精选 换一换 已成功登录Java性能分析.待安装Guardian的服务器已开启sshd.待安装Guardian的服务器已安装JRE,JRE版本要求为Huawei J ...
- java获取服务器上指定文件,java 读取服务器上文件
java 读取服务器上文件 [2021-02-04 10:02:14] 简介: php去除nbsp的方法:首先创建一个PHP代码示例文件:然后通过"preg_replace("/ ...
- java获取ajax上传的文件,Java使用Ajax异步上传文件
相关代码示例: html代码片段: 名称 class="layui-input"> 描述 文件 请选择配置文件 立即提交 重置 js代码片段: //上传配置文件 $(&quo ...
- java获取服务器上的图片进行拼接
1.从服务器下载图片保存到本地 package com.example.demo.util;import java.io.File; import java.io.FileOutputStream; ...
- java获取方法上的注解_Spring:使用Spring AOP时,如何获取目标方法上的注解
当使用spring AOP时,判断目标方法上的注解进行相关操作,如缓存,认证权限等 自定义注解 packagecom.agent.annotation;importjava.lang.annotati ...
- java获取参数上的注解_java-如何获取带注释的方法参数及其注释
在我的应用程序中,我有一些方法的参数带有一些注释.现在,我想编写Aspect,使用来自注释属性的信息对带注释的参数进行一些预处理.例如,方法: public void doStuff(Object a ...
- java获取当前上一周、上一月、上一年的时间
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); Calendar c = Calend ...
最新文章
- 《Java遗传算法编程》—— 1.5 生物进化
- SAP导出Excel错点拒绝处理
- mysql查询表名匹配只有字母的_MySQL按某些匹配字母查询表
- PID控制器改进笔记之三:改进PID控制器之正反作用
- jQuery 1.3 正式版发布
- stm32f407 6路串口dma如何配置_stm32cubeMX学习十、扫码模块程序开发(基于正点原子STM32F407开发板)...
- typecho支持html,为Typecho文章增加HTML标签支持
- python列表用来有序存放一组_Python期末习题练习
- java模拟时钟课程设计_Java课程设计时钟图形模拟
- matlab gui 进度条,MATLAB GUI 之自制进度条
- python-破译密码
- 畅购商城项目v1-环境搭建
- html5分镜头脚本范例,(最新整理)分镜头脚本范本
- 京东商品数据分析,教你一键分析数据
- Py函数直接传入root是啥意思_阿里云python课程笔记(四):函数amp;类和对象
- 微信隐藏功能,你们快来瞧一瞧
- 苹果在高端手机市场碾压安卓手机,国产旗舰不入前十
- 网络监控系统安装的六种传输方式
- linux ssh 终端退格键,退格键,Tab,Del和箭头键在终端中不起作用(使用ssh)
- python读取ymal文件
热门文章
- 使用微信PC端的截图dll库实现微信截图功能(C++ Builder实现)
- 王者荣耀服务器维护七月,《王者荣耀》7.28不停服维护更新攻略教程 7月28日更新公告...
- 阿里云云效平台使用——Windows上使用阿里云云效(RDC)Git拉取代码
- c语言人民邮电出版社课后答案,C语言程序设计教程(人民邮电出版社) 课后习题解答6-10...
- 设计模式之适配器模式--简单实例分析
- 字符串与数字相互转化
- java mifare_java – NTAG212 Mifare Ultralight与身份验证
- 央视《对话》:家长课堂
- 网页中HTML代码如何实现字体删除线效果
- 如何给无光驱无软驱无USB启动的老笔记本装系统