文档章节

Reflection for Java framework

九州暮云
 九州暮云
发布于 2016/04/20 17:17
字数 221
阅读 23
收藏 0

First of all, the key difference between a framework and a regular library is called Inversion of Control(IoC). That's an object is typically registered with the framework that takes the responsibility of invoking methods on the registered object at an appropriate time or event. You can only declare your class and config it to the framework by using XML or annotation. Dependency on XML-based metadata and excessive use of reflection and bytecode manipulation may impact application performance [1]. Reflection is one of the most important features of Java and it beneficial for understanding how those popular frameworks work. In brief, Java Reflection provides the following functions:

  • Examine an object's class at runtime
  • Construct an object for a class at runtime
  • Examine a class's field and method at runtime
  • Invoke any method of an object at runtime

Reference:

  1. Kayal, Dhrubojyoti. Pro Java EE Spring Patterns: Best Practices and Design Strategies Implementing Java EE Patterns with the Spring Framework. Apress, 2008.

本文转载自:http://www.programcreek.com/2012/08/reflection-problem-on-java-framework/

九州暮云
粉丝 71
博文 159
码字总数 116095
作品 0
海淀
高级程序员
私信 提问
Ceylon 1.0.0 发布,JVM 上的新语言

Ceylon 1.0.0 发布了,Ceylon面向企业级应用开发设计,在JVM运行时基础上执行,支持与Java的交互操作。Ceylon语言充分借鉴了Java语言的优势并屏蔽其在设计上的不足,使用静态类型并提供高阶函...

红薯
2013/11/14
1K
4
Java 7 爆最新漏洞,10年前的攻击手法仍有效

据SECLISTS透露,他们发现新的Reflection API在引进Java SE 7时并未经过非常安全的复查,并且存在着一个非常大的漏洞。 该漏洞可以允许黑客利用10年前便广为人知的手法来攻击Java虚拟机。Jav...

oschina
2013/07/19
5K
68
Kotlin M11 发布,基于 JVM 的编程语言

Kotlin M11 发布,此版本包括二级构造函数,反射支持等等新特性。 Kotlin M11 主要改进如下: 语言改进:多个构造函数,Prefixes For Initializer Blocks,Companion Objects (Class-Object...

oschina
2015/03/20
1K
4
grails团队的新框架:micronaut

http://micronaut.io/ 体积更小,内存占用更小,性能更优?同时支持java,groovy,kotlin三种编程语言。grails框架我用过,做过若干个项目,确实比较方便,脚手架快速生成页面(当然结合ieda来...

swingcoder
2018/05/24
697
2
3.2 Spring AOP的设计与实现

JVM的动态代理特性 在Spring AOP实现中,使用的核心技术是动态代理,这实际上是JDK的一个特性(JDK1.3以上的版本有这个特性)。通过JDK的动态代理特性,可以为任意Java对象创建代理对象,对于...

edwardGe
2018/05/30
38
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周二乱弹 —— 开发语言和语言开发的能一样么

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @花间小酌:#今日歌曲推荐# 分享The Score的单曲《Revolution》 《Revolution》- The Score 手机党少年们想听歌,请使劲儿戳(这里) @批判派...

小小编辑
今天
687
9
oracle ORA-39700: database must be opened with UPGRADE option

ORA-01092: ORACLE instance terminated. Disconnection forced ORA-00704: bootstrap process failure ORA-39700: database must be opened with UPGRADE option 进程 ID: 3650 会话 ID: 29......

Tank_shu
今天
3
0
分布式协调服务zookeeper

ps.本文为《从Paxos到Zookeeper 分布式一致性原理与实践》笔记之一 ZooKeeper ZooKeeper曾是Apache Hadoop的一个子项目,是一个典型的分布式数据一致性的解决方案,分布式应用程序可以基于它...

ls_cherish
今天
4
0
聊聊DubboDefaultPropertiesEnvironmentPostProcessor

序 本文主要研究一下DubboDefaultPropertiesEnvironmentPostProcessor DubboDefaultPropertiesEnvironmentPostProcessor dubbo-spring-boot-project-2.7.3/dubbo-spring-boot-compatible/au......

go4it
昨天
2
0
redis 学习2

网站 启动 服务端 启动redis 服务端 在redis 安装目录下 src 里面 ./redis-server & 可以指定 配置文件或者端口 客户端 在 redis 的安装目录里面的 src 里面 ./redis-cli 可以指定 指定 连接...

之渊
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部