Python遍历文件路径找到项目中用到的所有spring注解

 在学习spring的时候看到很多注解,看完就忘记了,自己平时又不注重做笔记,想系统的理解一下各个注解的大概含义,How can I do ?

闲来无事一不做二不休,用Python去找出源码中所有的注解吧,不过排除非spring注解的方式确实有点low

#!/usr/bin/python
# -*- coding: UTF-8 -*-
import os,re
filePath = "D:\****"
fileType = {".java"}
outputRoot = "D:\\result.txt"
#非spring注解集合
filter={"Setter","Getter","since","author","param","return","Override","ToString"}

def run(filePath):    
    result = set() 
      
    search(filePath,result)  
    #写入到txt文本中   
    writeFile(outputRoot,result) 
    
def search(filePath,result):
    lists= os.listdir(filePath)
    for i in range(0,len(lists)):
        rootPath = os.path.join(filePath,lists[i])
        if os.path.isfile(rootPath):  
            ofile=os.path.splitext(lists[i]) 
            filename,otype=ofile
            if otype in fileType:
                for line in open(rootPath):
                    pattern=re.compile("@([a-zA-Z]*)",re.IGNORECASE | re.M)
                    res=pattern.search(line)
                    if res:
                        value = res.group(1)
                        if value not in filter: 
                            result.add(value)
                #文件名称
                #print(filename)
                #文件类型
                #print(otype)
        if os.path.isdir(rootPath):
            #递归遍历
            search(rootPath,result)
            #print rootPath           
def writeFile(rootPath,data):
    if os.path.exists(rootPath):
        os.remove(rootPath)
    #a+追加读写,文件不存在就创建
    #可读可写,文件不存在就创建
    f=file(rootPath,"a+")
    print "file write start"
    for item in data:                
        f.write(item+'\r\n') 
        print item
    print "file write finish"
    f.close()  
if __name__ == '__main__' :
    run(filePath);

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值