大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
准备好环境,比如安装好Eclipse,IDEA等你喜欢的集成开发环境
潍坊网站建设公司创新互联,潍坊网站设计制作,有大型网站制作公司丰富经验。已为潍坊千余家提供企业网站建设服务。企业网站搭建\成都外贸网站建设公司要多少钱,请找那个售后服务好的潍坊做网站的公司定做!
准备好Maven环境
创建一个项目,把你要研究的开源项目pom引入进来
使用maven把源代码下载下来
写一个简单的例子使用开源代码
分析从启动开始,断点调试,看看调用了哪些方法,每个方法是怎么实现的
所有方法都断点了一遍,你在这个过程中实际上已经了解了开源代码是怎么实现具体功能的了
选中某一个函数,点击f3,然后关联jdk安装包下面的名字叫src的文件
Java开源框架的源代码怎么读?说读开源框架的源代码对自己写程序很有帮助的,我不知道从那里下手
找一个你熟悉的项目,下回来源码,然后单步跟踪一遍,前题有一定基础,至少会单步跟踪调试对ide也得熟悉些,项目别选太大的,像apache里面的项目都还可以。一开始还是比较艰难的,时间长了就好了。
如同你看不懂高手过招一样。
还是一步一步的来吧。
先看一些基础知识,写一些东西,然后重点看自己用到的,或者即将用到的部分,这样提高效果会更好。
开始的时候是把源代码关联,有不明白的地方可以ctrl直接过去看。之后有一些积攒之后,可以去看开源项目中的闪亮的地方,比如Spring中的IOC。然后参照自己去实现一个简单的DEMO,之中可以参考一些资料。个人理解这样会比较快速的将一个项目中的一部分较为深入的了解。毕竟一个成熟的开源项目技术的积攒及范围都比较大。完全了解没有必要也没有可能。
我读Spring的经验。
首先要搞清它大体的处理步骤,然后再去详细看每个类的具体内容。读代码,最忌从一开始就企图详细理解一个大工程的所有细节。先看大匡,然后再逐步掌握自己感兴趣的细节。
读代码的时候可以把框架的代码读取到IDE的工程中去,
例如,用Eclipse读代码,方便得很。
或者在开发中设定classpath时,把代码也带上,
个人认为,多看例如JDK、Spring这样优秀的代码,对于掌握Java编程的精髓很有帮助。
初学者也不例外!
其实框架就是DB访问,画面显示,资源管理。
首先要知道你的框架的特点,也就是他的侧重点。
我看源代码喜欢全局搜索,一直找到Java自带的基础类。一条先走到黑。嗬嗬,挺笨的
不过建议先会用,熟练用,在研读。会快一些,少走弯路
不管是在校的学生还是刚参加工作的,都要从基础开始,把一些经典的基础问题搞明白了之后再去研究框架,其实感觉框架要先明白框架的总体,有时候不明白框架甚至看着源代码都不知道属于哪一类,引入也会产生问题,之后在去看源代码。最主要的是光看不行,要亲手做一下,即使是最简单的程序也要亲手做,如果是人家的程序照着手动敲一遍也会有很大的收获的
对于开源项目,我觉得从如下方面着手比较好:
2.了解整体项目的技术架构
3.熟悉它用的技术与知识面,并逐个掌握
4.从单个模块着手,调试代码,熟悉基基本的流程与业务
5.在不修改其源码的基础上做一些扩展开发的工作,为我所用6.修改并优化其代码
基于Java的简单、动态、轻量级、强大的AOP框架。既强大又简单,有助于更容易的集成AOP到新的或已存在的项目中。
AspectWerkz 主要特性:
1. 运行时和加载时字节码修正:你可以在运行时或编译时轻松的改造任何(旧)应用程序或除了rt.jar以外的外部类库
2. 支持join point模型
3. 支持Annotation:匹配JavaDoc和JSR-175,支持用户自定义Annotation
4. 支持部署多个Aspect定义文件到部署的应用程序(WEB-INF/aop.xml、META-INF/aop.xml)
5. Introduction/内类型声明(也称Mixin),也就是具有添加接口和实现到已存在的类中的能力
6. Annotation定义:定义Aspect使用的运行时Annotation(为JSR-175准备)
7. XML定义:定义Aspect使用的XML;XML可以用来精炼、改写和解析Annotation定义
8. 插件式Aspect管理器能够和IoC框架(如Spring或PicoContainer)一起工作
9. 四种不同的Advice和Introduction部署模型(范围):perJVM(单模式)、 perClass、perInstance 和perThread
10. Advice和Introduction能够动态部署、反部署或重新部署
11. 高性能,使用JIT编译
12. 使用Fine-grained模式语言选择join point
13. 所有Advice能够和所有的join point和各种混合类型的pointcut
14. 脱机变换(可以用作后处理器)
15. Aspect、Advice和Introduction使用POJO编码
16. 目标类可以是正规的POJO,也就是不需要接口
17. 支持通过定义传递参数给Advice和定义可重用的Advice堆栈
18. 元数据被加到类中
19. 简单的用法和配置
AspectWerkz在Eclipse下的辅助开发插件→
更多AspectWerkz信息
JBoss AOP
JBoss 4.0带了一个AOP框架。这个框架和JBoss应用服务器紧密地结合,但是你也能够在你的应用中,单独的运行它。
更多JBoss AOP信息
Nanning
一个虽然简单但也是一个java开源的AOP框架。名字以中文的拼音拼写就是广西的南宁。
更多Nanning信息
JAC
JAC (Java Aspect Components)是一个应用服务器。它为Java2平台、用于Java开发的企业开发环境(J2EE)、和基于Web的分布式应用,提供开放式资源的又一个选择(在GNU次常规公共许可证下发布)。JAC包括统一模型语言(UML)IDE,该UML IDE模块化应用商业逻辑并且自动生成和编译纯商业逻辑Java类。这些类,在JAC容器内执行,可从一组技术和/或商业的横切关系(crosscutting concerns)[1] 如数据持久性、认证、配置文件管理、访问权限检测、演示、和负载平衡中无缝地受益。基于面向方面编程技术(AOP)的JAC将这些关系( concerns)[2]从应用程序的核心商业逻辑中分离出来。
更多JAC信息
DynamicAspects
DynamicAspects能够让你使用java编写的面向切面的程序设计,它使用在Sun JDK 1.5中介绍的"instrumentation"与"agent",Aspects能够软件各模块之间的关系在运行期安装与使用。
更多DynamicAspects信息
dynaop
dynaop框架使用一个基于运行时的编程机制将AOP代码插入对象中,而不是返回一个具有特征代码的对象。AOP将是面向对象设计(OO)的一个新的领域。
更多dynaop信息
CAESAR
CAESAR是一个新的与Java兼容的AOP语言。所有java程序多能使用CAESAR。
更多CAESAR信息
PROSE
PROSE是一个动态编排(weaving)工具(允许在运行期插入或抽取aspects)。PROSE aspects是规则的Java对象能够被发送到或从网络上的计算机接收。签名可被用于保证它们的完整性。一旦一个aspect插入到JVM中,任何事件的发生将影响在相应aspect advice执行的结果。假如一个aspect从JVM中撤消,aspect代码将被丢弃并且相应的拦截也将不会再发生。PROSE aspects是规则的Java对象能够被发送到或从网络上的计算机接收。签名可被用于保证它们的完整性。一旦一个aspect插入到JVM中,任何事件的发生将影响在相应aspect advice执行的结果。假如一个aspect从JVM中撤消,aspect代码将被丢弃并且相应的拦截也将不会再发生。下图是PROSE的体系结构图:
更多PROSE信息
FastAOP
FastAOP是一个高性能AOP框架。最初开发该框架是为了支持对大型J2EE应用程序进行性能剖析和监测。它几乎不占用运行时间。FastAOP已经在Websphere和Jboss应用服务器上得到成功测试。
更多FastAOP信息
Plastic
Plastic是一个构建在ASM 3.3之上的AOP工具包。支持类的基本加载和实例化。引进新的属性。不需要使用反射就能够访问私有属性和方法。重写属性访问权限。注入属性。Method advice(在调用现在方法之后/之前执行一些逻辑)。DIV class=date收录时间:2011-05-25 15:25:03/DIV
更多Plastic信息
Spring
spring做为现在最流行java web框架,可以作为任何一个项目的基础框架,值得仔细研究学习