当前位置: 首页 > news >正文

网站建设国内外研究现状wordpress 全文

网站建设国内外研究现状,wordpress 全文,网站开发专业的,网络营销专业就业需求 工作时有需求获取java文件成员变量的注释,故而研究了一系列开源产品,之所以选择JavaParse,是因为博客上文件比较多。。。 多归多,但也版本杂乱,走了不少歪路。 版本2.x和版本3.x还是有较大不同的,有…

需求

工作时有需求获取java文件成员变量的注释,故而研究了一系列开源产品,之所以选择JavaParse,是因为博客上文件比较多。。。

多归多,但也版本杂乱,走了不少歪路。

版本2.x和版本3.x还是有较大不同的,有需要的人可以参考。

版本2.x

<!-- https://mvnrepository.com/artifact/com.github.javaparser/javaparser-core -->
<dependency><groupId>com.github.javaparser</groupId><artifactId>javaparser-core</artifactId><version>2.2.1</version>
</dependency>
package cn.com.infosec.netseal.webserver.util;import cn.com.infosec.netseal.common.util.StringUtils;
import com.github.javaparser.JavaParser;
import com.github.javaparser.ast.CompilationUnit;
import com.github.javaparser.ast.Node;
import com.github.javaparser.ast.body.TypeDeclaration;
import com.github.javaparser.ast.comments.Comment;import java.io.File;
import java.util.List;public class JavaParseTest {public static void main(String[] args) throws Exception {String classPath = "E:\\Idea\\NetSeal\\v7\\src\\netseal\\netseal-common\\src\\main\\java\\cn\\com\\infosec\\netseal\\common\\resource\\errCode\\ErrSubType.java";String mapName = "subTypeMap";CompilationUnit parse = JavaParser.parse(new File(classPath));// 获取指定文件中的所有类List<TypeDeclaration> types = parse.getTypes();for (TypeDeclaration type : types) {// 获取类名/类注释String className = type.getName();type.getComment();// 获取类里的变量、方法等子节点List<Node> list = type.getChildrenNodes();System.out.println("总个数:" + list.size());for (Node node : list) {if (node.toString().indexOf("(") != -1)continue;// 获取变量的类型、变量名称和变量值;List<Node> varTypeAndKV = node.getChildrenNodes();Node varKV = varTypeAndKV.get(1);String varK = varKV.toString().split("=")[0].trim();// 获取变量注释String content = "";Comment comment = node.getComment();if (comment != null && comment.getContent() != "") {content = comment.getContent().replace("*", "").trim();}System.out.println(StringUtils.format("{}.put({}.{}, \"{}\");", mapName, className, varK, content));}}}
}

版本3.x

<dependency><groupId>com.github.javaparser</groupId><artifactId>javaparser-core</artifactId><version>3.6.16</version><scope>compile</scope>
</dependency>
package cn.com.infosec.netseal.appserver.util;import cn.com.infosec.netseal.common.util.StringUtils;
import com.alibaba.fastjson.JSON;
import com.github.javaparser.JavaParser;
import com.github.javaparser.ast.CompilationUnit;
import com.github.javaparser.ast.Node;
import com.github.javaparser.ast.NodeList;
import com.github.javaparser.ast.body.ClassOrInterfaceDeclaration;
import com.github.javaparser.ast.body.FieldDeclaration;
import com.github.javaparser.ast.body.TypeDeclaration;
import com.github.javaparser.ast.body.VariableDeclarator;
import com.github.javaparser.ast.comments.Comment;
import com.github.javaparser.ast.expr.SimpleName;import java.io.File;
import java.util.List;
import java.util.Optional;public class JavaParseTest {public static void main(String[] args) throws Exception {String classPath = "E:\\Idea\\NetSeal\\v7\\src\\netseal\\netseal-common\\src\\main\\java\\cn\\com\\infosec\\netseal\\common\\resource\\errCode\\ErrSubType.java";String mapName = "subTypeMap";CompilationUnit parse = JavaParser.parse(new File(classPath));Optional<ClassOrInterfaceDeclaration> errSubType = parse.getClassByName("ErrSubType");errSubType.ifPresent((c) -> {// 获取类名/类注释String className = c.getName().toString();c.getComment();// 获取类里的变量、方法等子节点List<Node> list = c.getChildNodes();System.out.println("总个数:" + list.size());for (Node nodeTmp : list) {if (!(nodeTmp instanceof FieldDeclaration))continue;FieldDeclaration node = (FieldDeclaration) nodeTmp;// 获取变量的类型、变量名称和变量值;VariableDeclarator variable = node.getVariable(0);String  varName = variable.getNameAsString();String  varType = variable.getTypeAsString();// 获取变量注释String content = "";Optional<Comment> comment = node.getComment();if (comment != null && comment.get().getContent() != "") {content = comment.get().getContent().replace("*", "").trim();}System.out.println(StringUtils.format("{}.put({}.{}, \"{}\");", mapName, className, varName, content));}});}
}
http://www.15wanjia.com/news/164878.html

相关文章:

  • 沈阳 商城 网站 开发兰州优化定制
  • 学校网站建设工作目标云南省建设厅网站发文
  • 最好的建站网站怎样查看网站的访问量
  • 营销型网站推广seo排名哪家正规
  • 购物网站的搜索框用代码怎么做阿里云t5做网站
  • steam账号注册网站wordpress网站可以上传视频
  • 苍溪网站建设制作电商运营是做什么
  • 常州有哪些做阿里巴巴网站的在线做任务的网站
  • 有哪些网站使用ftp小学生手工制作大全图
  • 做数据ppt模板下载网站做一些网站的弹出页面
  • 做网站空间哪个好网站建设修改教程视频
  • 青岛公路建设集团网站阆中做网站
  • 海沧建设网站多少郴州信息港
  • 帮做网站的公司揭阳市网站开发
  • 如何注册电商网店购物网站seo搜索引擎前期分析
  • 图网杭州百家号优化
  • 网站怎么设置标题旅游网模板html代码
  • 做pc端网站策划网站系统设计目标
  • 网站后台如何用代码上传视频医院信息化建设网站
  • 龙口网站建设哪家专业淘宝seo优化是什么
  • 简单网站页面wordpress 列表圆点
  • 易时代网站产品开发怎么写
  • 网站流量指标有哪些济南网站制作设计公司
  • 南城网站建设公司咨询推荐一些外国做产品网站
  • 公司查名网站源码之家免费
  • 手机在线制作表白网站有域名有空间如何做网站
  • 网站的运营推广方案电商设计师工资高吗
  • 网站建立计划书家居企业网站建设渠道
  • 新站优化案例怎么更改网站关键词
  • 凡科做网站视频医院病房建设网站