Qdox工具怎么用

技术Qdox工具怎么用这篇文章给大家介绍Qdox工具怎么用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。QDox 一款简单,高效的Java源代码解析器,可以提取Java类、接口、方法、参数名称、类型

这篇文章给大家介绍Qdox工具怎么用,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

QDox一款简单,高效的爪哇源代码解析器,可以提取爪哇类、接口、方法、参数名称、类型等。简单介绍一下怎么用。

集成

目前最新版本2.0-M10

专家

属国

groupIdcom.thoughtworks.qdox/groupId

artifactIdqdox/artifactId

2.0版-M10/版

/dependencyGradle

compilegroup : ' com。思想工作。qdox ',名称为:'qdox ',版本为: ' 2.0-M10 '

用法

package com。迷你。测试;

导入Java。乌提尔。随机的;

/**

*QDox测试

* @作者: juchinchen

*@date:2019/07/07

*/

公共类testclassextendbase test class implementstest {

/**

*登录接口

*@paramuserName用户名

*@parampassword密码

*@returnPerson对象

*/

公众人物登录(字符串用户名,字符串密码){ 0

intage=newRandom().nextInt();

Personperson=newPerson(用户名、密码、年龄);

系统。出去。println(人);

返回者;

}

}

classPerson{

privateStringuserName

privateStringpassword

私人占有;

publicPerson(StringuserName,Stringpassword,intage){ 0

this.userName=用户名;

this.password=password

this.age=年龄;

}

}

类别

bsp;BaseTestClass {
}
interface Test {
}

测试:

@Test
    public void getMeClass() throws IOException {
        JavaProjectBuilder builder =  new  JavaProjectBuilder();
        builder.addSourceTree(new File("src/main/java/com/mini/test"));
        //目录下的所有class
        System.out.println("====目录下的所有class====");
        Collection<JavaClass> classes = builder.getClasses();
        System.out.println(classes + "\n");
        //根据class全限定名获取
        JavaClass javaClass = builder.getClassByName("com.mini.test.TestClass");
        //获取类的注释
        System.out.println("====获取类的注释====");
        System.out.println(javaClass.getComment());
        List<DocletTag> classTags = javaClass.getTags();
        classTags.forEach(item -> {
            System.out.println(item.getName() + "" + item.getValue());
        });
        System.out.println("\n");
        //获取继承的父类
        System.out.println("====获取继承的父类====");
        System.out.println(javaClass.getSuperClass() + "\n");
        //获取接口
        System.out.println("====获取接口====");
        System.out.println(javaClass.getImplements() + "\n");
        //获取方法
        System.out.println("====获取方法====");
        List<JavaMethod> methods = javaClass.getMethods();
        System.out.println(methods + "\n");
        //get Login方法
        JavaMethod javaMethod = methods.get(0);
        //方法返回类型
        System.out.println("====获取方法返回类型====");
        System.out.println(javaMethod.getReturns() + "\n");
        //获取参数
        System.out.println("====获取参数====");
        List<JavaParameter> parameters = javaMethod.getParameters();
        System.out.println(parameters);
        //获取参数类型
        //get userName参数
        JavaParameter parameter = parameters.get(0);
        //参数名称
        System.out.println(parameter.getName());
        //参数类型
        System.out.println(parameter.getType() + "\n");
        System.out.println("====获取方法注释====");
        //获取方法注释
        System.out.println(javaMethod.getComment());
        //获取参数备注
        List<DocletTag> tags  =javaMethod.getTags();
        tags.forEach(item -> {
            System.out.println(item.getName() + ":" + item.getValue());
        });
    }

测试结果:

====目录下的所有class====
[class com.mini.test.TestClass, class com.mini.test.Person, class com.mini.test.BaseTestClass, interface com.mini.test.Test]
====获取类的注释====
QDox 测试
author:jujun chen
date:2019/07/07
====获取继承的父类====
com.mini.test.BaseTestClass
====获取接口====
[com.mini.test.Test]
====获取方法====
[public com.mini.test.Person com.mini.test.TestClass.Login(java.lang.String,java.lang.String)]
====获取方法返回类型====
com.mini.test.Person
====获取参数====
[String userName, String password]
userName
java.lang.String
====获取方法注释====
登录接口
param:userName 用户名
param:password 密码
return:Person对象

使用该工具,可以解析Java源代码,很方便,速度也很快。脑洞一下吧,可以利用它来做点什么,提高生产力。

关于Qdox工具怎么用就分享到这里了,希望

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/37096.html

(0)

相关推荐

  • java MessageFor来生成模板字符串

    技术java MessageFor来生成模板字符串 java MessageFor来生成模板字符串1.前言
    在java程序中,我们经常会遇到生成模板字符串的场景,一般来说我们实现需求是这样的String

    礼包 2021年12月9日
  • Ubuntu14.04 Caffe如何安装

    技术Ubuntu14.04 Caffe如何安装这篇文章将为大家详细讲解有关Ubuntu14.04 Caffe如何安装,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。Caffe简介Caff

    攻略 2021年11月15日
  • 妥帖读音,熨帖的读音是什么

    技术妥帖读音,熨帖的读音是什么熨帖的读音:yù tiē意思是:1、(用字、用词)贴切;妥帖。2、心里平静3、舒服4、(事情)完全办妥引证解释:1、按压;按揉。沙汀 《困兽记》二四:“他就叹息着往后一靠妥帖读音,拿手掌往复

    生活 2021年10月20日
  • go restful接口开发步骤(go语言调用第三方restful api)

    技术gorm+gin怎么实现restful分页本篇内容主要讲解“gorm+gin怎么实现restful分页”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“gorm+gin怎么实

    攻略 2021年12月22日
  • Python如何移植到IMX6ULL开发板上

    技术Python如何移植到IMX6ULL开发板上这篇文章主要讲解了“ Python如何移植到IMX6ULL开发板上”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“ Pyth

    攻略 2021年11月23日
  • 自建传奇4游戏加速首选轻量云轻量云香港

    技术自建传奇4游戏加速首选轻量云轻量云香港随着传奇4开服,很多国区玩家都希望拥有自用的SOCK5代理登录游戏,那么使用SOCK5代理需要注意哪些问题呢,下面就来简单介绍一下与只能处理 HTTP 和 HTTPS 网页的 H

    礼包 2021年12月14日