- 浏览: 206947 次
- 性别:
- 来自: 杭州
-
文章分类
最新评论
-
harim:
思路十分不错,最近两家公司面试都问到了这个问题,我没有答出来, ...
缓存策略之LRU实现(基于双链表实现) -
javatozhang:
楼主真是良苦用心,很可惜我现在才对Tomcat感兴趣并有时间来 ...
tomcat init中加载哪些类? -
javatozhang:
diecui1202 写道可以看看goldendoc.org小 ...
tomcat init思维图 -
cherishLC:
非常感谢~表示自己没用过jquery,如果 jquery地址改 ...
最简单的jQuery折叠菜单 -
zhypengjw2012:
非常感谢!我今天就用到了!
jQuery插件--滑动条
由于对开源的热爱,经常需要看开源的东东,但是像Struts那样的开源框架来说,从代码入手的话,却像一头扎进了大海, 出不来。 经常想能获取到官方的文档资料, 比如说类关系图等, 这样的话,可以对整个系统的架构很清楚,从架构再往代码方面转移。 这样的话,对于整个开源产品的理解无疑更加深入。
最近一段时间,由于工作需要,接触到powerDesigner和Rose比较多。 这两个产品可以正向产生出资料,如PD的PDM图,然后根据物理模型(PDM),生成相关SQL 脚本。 Rose的UML图,而后的java文件。这些资料的生成都很方便。 更重要的是,这两个工具都支持逆向工程。 既支持脚本或者源代码来反向生成PDM图或UML图。 而今天的主角却不是这些“重量级”的东西。
使用过以上产品的朋友都知道,这两个产品有个致命的缺点。就是跑起来非常的耗内存,而且破解麻烦,。
而今天我介绍的东西,源代码和第三方库,整个加起来, 大小不超过500K。 而且能够根据class或者jar文件,动态产生出UML图。
那么,今天的主角隆重登场, 它就是-----------UDoc.
为了证明我没有说谎,我把截图发上来, 看看这个软件的大小:
解压后, 其目录非常简单,包含
其中,src包含着源代码, lib包含第三方包。 UDoc.jar是直接可以运行的程序,(当然,前提是你必须有jre).
OK,言归正传,我今天主要介绍其是如何使用的。 看其强大之处到底体现在哪里:
双击 "UDoc.jar" 出现如图,这是其主界面,一个词--- 简便 有点GOOGLE的风格 :
其中,菜单栏出有4个小的向下三角形:
将鼠标移到第2个,可以出现如下界面,(这也是今天重点介绍的)
这代表通过class来生成UML, 出现上图后,单击一下,即可出现下面的效果:
其中的classpath 是需要你选择你需要生成UML图的地址,比如c:/mysql.jar
下面的classes 是jar包中,哪些类需要生成UML。 举例说明,如图
最后的图形,如下:
真正强大之处在于图的四个方向的小箭头, 上代表父类,下代表其子类或者实现类.
左,右代表与此类有关系的其他对象。
我们来看看,其父类(点击上箭头):
再向上追溯下, 查看com.mysql.jdbc.Driver的父类:
OK.一个结构图就此出现,对于你查看整个系统的结构来说,这样的图相信会给你很大的帮助。 OK。 这个好东西就介绍到这里, 发现好东西,不敢独享, 所以贡献出来,希望有兴趣的朋友,可以去尝试一下。 当然,好东西还有其他很多的功能,这里就不能一一介绍了。 有兴趣的还是自己去琢磨吧。
最后发个源代码结构图, 这么强大的东西,其代码可以说是非常简单,有兴趣有时间的,可以好好研究研究。
这里把项目传上来, 免去感兴趣的朋友去搜索之苦。 附件如下:
- UDoc-1-005.zip (479.9 KB)
- 下载次数: 614
评论
我也经常头疼不能整体的去观察一个开源项目
看代码的话 web项目还好 java项目就不知道从何入手了
找过这种反向的工具 效果都不好
有了这个以后对设计的理解就能又有所提高了
MyEclipse中的UML视图也不错
多谢楼主!!
发现在CMD下可以运行。
为了方便,写了一个start.bat文件放在UDoc.jar相同路径下。双击start.bat即可启动UDoc.
在哪儿呢,,能否具体点给个地。thanks
这位兄弟,你把源代码下过来, 去docs目录下找找,应该可以找得到的……
这个……

我也经常头疼不能整体的去观察一个开源项目
看代码的话 web项目还好 java项目就不知道从何入手了
找过这种反向的工具 效果都不好
有了这个以后对设计的理解就能又有所提高了
在哪儿呢,,能否具体点给个地。thanks
发表评论
-
博客停止更新
2012-04-24 11:37 1195该博客停止更新,请移步:ivanzhangwb.com -
JProfile初步使用图解
2011-11-02 13:28 5956最近参与平台的短信平台项目,在项目的后期,参与了一些性能 ... -
J2EE简单性的红利
2011-01-02 00:26 1432复杂性的代价: 系统架构上的复杂性,如果并非出于必要 ... -
读《Unix编程艺术》 第四章:模块化、保持清晰、保持简洁
2010-12-26 18:17 1638第四章: 模块化、保持 ... -
阿里巴巴电面整理(二)
2010-07-02 04:03 4011还是接着昨天的帖子来吧, 题目都在上一篇《阿里巴巴电面整理 ... -
阿里巴巴电面整理
2010-07-01 01:47 5030今天中午接到阿里巴巴的电话面试,电面了将近一 ... -
我的Google 在线文档地址
2010-06-26 02:18 1236本人整理的一些文档, 关于技术,工作,生活的。 会陆续发 ... -
读 IBM中国 《Java 理论和实践: 了解泛型》
2010-06-26 02:09 1325了解Java泛型 参考于IBM Develop ... -
世界杯期间离职……
2010-06-17 01:13 1405来深圳时间不长,但是很错误的进入一个外包公司待到现在, ... -
MD5验证文件
2010-01-22 01:31 1137参考多篇网上的资料。 记录一下 java用MD5验证文件的 ... -
超棒的验证码生成组件---Jcaptcha
2010-01-10 23:46 8524最近由于Springside3的发布,也来凑热闹学习学习 ... -
web服务器工作方式
2010-01-09 14:16 1812记录一下 web服务器 ... -
非常不错的Struts2教程
2010-01-02 21:25 1219非常不错的Struts2教程,原创是downpour ... -
VC++之 Windows进程篇
2009-12-23 01:01 2311保护模式: 基于 X86 微处理器 ... -
eclipse 配置C/C++开发环境
2009-12-22 00:21 7449关于正常配置,请参考:http://jimychen ... -
RBAC权限涉猎之关系处理
2009-12-19 01:45 1604最近需要关注到RBAC这部分的理论知识。 ... -
重装XP以后修复Ubuntu引导
2009-12-03 23:37 2440在重装XP系统之后,引导区被windows强制的重写了一遍,导 ... -
Ant创建项目模版Demo
2009-11-14 21:01 3256由于项目中有用到公司自己封装的SDK,那么如果有新的开发 ... -
Ant+Freemarker+xml 生成Html
2009-11-12 22:12 2961最近客户项目中有用到freemarker生成原始的项目模版 ... -
HSQLDB的简单使用
2009-10-22 14:31 1623本文只简单讲述hsqldb的使用方法, 具体Hsql是什 ...
相关推荐
由于对开源的热爱,经常需要看开源的东东,但是像Struts那样的开源框架来说,从代码入手的话,却像一头扎进了大海, 出不来。 经常想能获取到官方的文档资料, 比如说类关系图等,这样的话,可以对整个系统的架构很...
使用UDoc时,开发人员可能需要将他们的Java项目或特定源代码文件作为输入,然后UDoc会分析这些代码,生成对应的UML图。这些图形可以辅助团队理解代码结构,检测潜在的重构机会,或者在设计阶段就捕捉到可能的设计...
UDOC.js 是 [Photopea](https://www.Photopea.com) 项目的文档解析和转换组件。 FromEMF.js 是 UDOC.js 中的 EMF 文件解析器。 此代码是把 FromEMF.js 用 TypeScript 改写的版本,并且修正了原版代码在解析 ...
3. **Jmakelink.dsp**:这可能是Visual Studio的项目文件,用于管理和构建"makelink"项目,包含了关于编译设置、链接器选项、源文件等信息。 4. **RlLDebug**和**Release**:这两个文件夹通常代表不同的编译配置,...
全国大学生智能汽车竞赛自2006年起,由教育部高等教育司委托高等学校自动化类教学指导委员会举办,旨在加强学生实践、创新能力和培养团队精神的一项创意性科技竞赛。该竞赛至今已成功举办多届,吸引了众多高校学生的积极参与,此文件为智能车竞赛介绍
字卡v4.3.4 原版 三种UI+关键字卡控制+支持获取用户信息+支持强制关注 集卡模块从一开始的版本到助力版本再到现在的新规则版本。 集卡模块难度主要在于 如何控制各种不同的字卡组合 被粉丝集齐的数量。 如果不控制那么一定会出现超过数量的粉丝集到指定的字卡组合,造成奖品不够的混乱,如果大奖价值高的话,超过数量的粉丝集到大奖后,就造成商家的活动费用超支了。我们冥思苦想如何才能限制集到指定字卡组合的粉丝数,后我们想到了和支付宝一样的选一张关键字卡来进行规则设置的方式来进行限制,根据奖品所需的关键字卡数,设定规则就可以控制每种奖品所需字卡组合被粉丝集到的数量,规则可以在活动进行中根据需要进行修改,活动规则灵活度高。新版的集卡规则,在此次政府发布号的活动中经受了考验,集到指定字卡组合的粉丝没有超出规则限制。有了这个规则限制后,您无需盯着活动,建好活动后就无人值守让活动进行就行了,您只需要时不时来看下蹭蹭上涨的活动数据即可。 被封? 无需担心,模块内置有防封功能,支持隐藏主域名,显示炮灰域名,保护活动安全进行。 活动准备? 只需要您有一个认证服务号即可,支持订阅号借用认证服务号来做活动。如果您
出口设备线体程序详解:PLC通讯下的V90控制与开源FB284工艺对象实战指南,出口设备线体程序详解:PLC通讯与V90控制集成,工艺对象与FB284协同工作,开源学习V90控制技能,出口设备1200线体程序,多个plc走通讯,内部有多个v90,采用工艺对象与fb284 共同控制,功能快全部开源,能快速学会v90的控制 ,出口设备; 1200线体程序; PLC通讯; 多个V90; 工艺对象; FB284; 功能开源; V90控制。,V90工艺控制:开源功能快,快速掌握1200线体程序与PLC通讯
基于Arduino与DAC8031的心电信号模拟器资料:心电信号与正弦波的双重输出应用方案,Arduino与DAC8031心电信号模拟器:生成心电信号与正弦波输出功能详解,基于arduino +DAC8031的心电信号模拟器资料,可输出心电信号,和正弦波 ,基于Arduino;DAC8031;心电信号模拟器;输出心电信号;正弦波输出;模拟器资料,基于Arduino与DAC8031的心电信号模拟器:输出心电与正弦波
MATLAB口罩检测的基本流程 图像采集:通过摄像头或其他图像采集设备获取包含面部的图像。 图像预处理:对采集到的图像进行灰度化、去噪、直方图均衡化等预处理操作,以提高图像质量,便于后续的人脸检测和口罩检测。 人脸检测:利用Haar特征、LBP特征等经典方法或深度学习模型(如MTCNN、FaceBoxes等)在预处理后的图像中定位人脸区域。 口罩检测:在检测到的人脸区域内,进一步分析是否佩戴口罩。这可以通过检测口罩的边缘、纹理等特征,或使用已经训练好的口罩检测模型来实现。 结果输出:将检测结果以可视化方式展示,如在图像上标注人脸和口罩区域,或输出文字提示是否佩戴口罩。
1、文件内容:kernel-debug-devel-3.10.0-1160.119.1.el7.rpm以及相关依赖 2、文件形式:tar.gz压缩包 3、安装指令: #Step1、解压 tar -zxvf /mnt/data/output/kernel-debug-devel-3.10.0-1160.119.1.el7.tar.gz #Step2、进入解压后的目录,执行安装 sudo rpm -ivh *.rpm 4、更多资源/技术支持:公众号禅静编程坊
该文档提供了一个关于供应链管理系统开发的详细指南,重点介绍了项目安排、技术实现和框架搭建的相关内容。 文档分为以下几个关键部分: 项目安排:主要步骤包括搭建框架(1天),基础数据模块和权限管理(4天),以及应收应付和销售管理(5天)。 供应链概念:供应链系统的核心流程是通过采购商品放入仓库,并在销售时从仓库提取商品,涉及三个主要订单:采购订单、销售订单和调拨订单。 大数据的应用:介绍了数据挖掘、ETL(数据抽取)和BI(商业智能)在供应链管理中的应用。 技术实现:讲述了DAO(数据访问对象)的重用、服务层的重用、以及前端JS的继承机制、jQuery插件开发等技术细节。 系统框架搭建:包括Maven环境的配置、Web工程的创建、持久化类和映射文件的编写,以及Spring配置文件的实现。 DAO的需求和功能:供应链管理系统的各个模块都涉及分页查询、条件查询、删除、增加、修改操作等需求。 泛型的应用:通过示例说明了在Java语言中如何使用泛型来实现模块化和可扩展性。 文档非常技术导向,适合开发人员参考,用于构建供应链管理系统的架构和功能模块。
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
C#与VB实现欧姆龙PLC的Fins TCP通信案例源码:调用动态链接库进行数据读写,定时器与计数器数据区的简洁读写操作示例,C#与VB实现欧姆龙PLC的Fins TCP通信案例源码:调用动态链接库进行读写操作,涵盖定时器计数器数据区学习案例,C#欧姆龙plc Fins Tcp通信案例上位机源码,有c#和VB的Demo,c#上位机和欧姆龙plc通讯案例源码,调用动态链接库,可以实现上位机的数据连接,可以简单实现D区W区定时器计数器等数据区的读写,是一个非常好的学习案例 ,C#; 欧姆龙PLC; Fins Tcp通信; 上位机源码; 动态链接库; 数据连接; D区W区读写; 定时器计数器; 学习案例,C#实现欧姆龙PLC Fins Tcp通信上位机源码,读写数据区高效学习案例
可调谐石墨烯超材料吸收体的FDTD仿真模拟研究报告:吸收光谱的化学势调节策略与仿真源文件解析,可调谐石墨烯超材料吸收体:化学势调节光谱的FDTD仿真模拟研究,可调谐石墨烯超材料吸收体FDTD仿真模拟 【案例内容】该案例提供了一种可调谐石墨烯超材料吸收体,其吸收光谱可以通过改变施加于石墨烯的化学势来进行调节。 【案例文件】仿真源文件 ,可调谐石墨烯超材料吸收体; FDTD仿真模拟; 化学势调节; 仿真源文件,石墨烯超材料吸收体:FDTD仿真调节吸收光谱案例解析
RBF神经网络控制仿真-第二版
松下PLC与威纶通触摸屏转盘设备控制:FPWINPRO7与EBPRO智能编程与宏指令应用,松下PLC与威纶通触摸屏转盘设备控制解决方案:FPWINPRO7与EBPRO协同工作,实现多工位转盘加工与IEC编程模式控制,松下PLC+威纶通触摸屏的转盘设备 松下PLC工程使用程序版本为FPWINPRO7 7.6.0.0版本 威纶通HMI工程使用程序版本为EBPRO 6.07.02.410S 1.多工位转盘加工控制。 2.国际标准IEC编程模式。 3.触摸屏宏指令应用控制。 ,松下PLC; 威纶通触摸屏; 转盘设备控制; 多工位加工控制; IEC编程模式; 触摸屏宏指令应用,松下PLC与威纶通HMI联控的转盘设备控制程序解析
基于循环神经网络(RNN)的多输入单输出预测模型(适用于时间序列预测与回归分析,需Matlab 2021及以上版本),基于循环神经网络(RNN)的多输入单输出预测模型(matlab版本2021+),真实值与预测值对比,多种评价指标与线性拟合展示。,RNN预测模型做多输入单输出预测模型,直接替数据就可以用。 程序语言是matlab,需求最低版本为2021及以上。 程序可以出真实值和预测值对比图,线性拟合图,可打印多种评价指标。 PS:以下效果图为测试数据的效果图,主要目的是为了显示程序运行可以出的结果图,具体预测效果以个人的具体数据为准。 2.由于每个人的数据都是独一无二的,因此无法做到可以任何人的数据直接替就可以得到自己满意的效果。 这段程序主要是一个基于循环神经网络(RNN)的预测模型。它的应用领域可以是时间序列预测、回归分析等。下面我将对程序的运行过程进行详细解释和分析。 首先,程序开始时清空环境变量、关闭图窗、清空变量和命令行。然后,通过xlsread函数导入数据,其中'数据的输入'和'数据的输出'是两个Excel文件的文件名。 接下来,程序对数据进行归一化处理。首先使用ma
1.版本:matlab2014/2019a/2024a 2.附赠案例数据可直接运行matlab程序。 3.代码特点:参数化编程、参数可方便更改、代码编程思路清晰、注释明细。 4.适用对象:计算机,电子信息工程、数学等专业的大学生课程设计、期末大作业和毕业设计。
旅游管理系统中的功能模块主要是实现管理员;首页、个人中心、用户管理、旅游方案管理、旅游购买管理、系统管理,用户;首页、个人中心、旅游方案管理、旅游购买管理、我的收藏管理。前台首页;首页、旅游方案、旅游资讯、个人中心、后台管理等功能。经过认真细致的研究,精心准备和规划,最后测试成功,系统可以正常使用。分析功能调整与旅游管理系统实现的实际需求相结合,讨论了Java开发旅游管理系统的使用。 从上面的描述中可以基本可以实现软件的功能: 1、开发实现旅游管理系统的整个系统程序; 2、管理员;首页、个人中心、用户管理、旅游方案管理、旅游购买管理、系统管理等。 3、用户:首页、个人中心、旅游方案管理、旅游购买管理、我的收藏管理。 4、前台首页:首页、旅游方案、旅游资讯、个人中心、后台管理等相应操作; 5、基础数据管理:实现系统基本信息的添加、修改及删除等操作,并且根据需求进行交流查看及回复相应操作。
Boost二级升压光伏并网结构的Simulink建模与MPPT最大功率点追踪:基于功率反馈的扰动观察法调整电压方向研究,Boost二级升压光伏并网结构的Simulink建模与MPPT最大功率点追踪:基于功率反馈的扰动观察法调整电压方向研究,Boost二级升压光伏并网结构,Simulink建模,MPPT最大功率点追踪,扰动观察法采用功率反馈方式,若ΔP>0,说明电压调整的方向正确,可以继续按原方向进行“干扰”;若ΔP<0,说明电压调整的方向错误,需要对“干扰”的方向进行改变。 ,Boost升压;光伏并网结构;Simulink建模;MPPT最大功率点追踪;扰动观察法;功率反馈;电压调整方向。,光伏并网结构中Boost升压MPPT控制策略的Simulink建模与功率反馈扰动观察法