反射机制的运用
来源:互联网 发布:大神小的知错了微盘 编辑:程序博客网 时间:2024/05/21 06:28
前边一篇博客写过相关反射机制的基础知识:java中的反射机制。写完这篇后有一条评论“反射反射程序员的快乐”,为什么说“快乐呢”,咱们看看反射的强大功能吧!这篇博客简单说一下反射机制的运用。
反射机制,很多来说是Java中比较那学的东西,为什么?很多说是因为它比较抽象!说的也对,因为理解不了么,所以比较抽象。但是经过项目实践,框架的深究,感觉到反射有着强大的作用。是很多优秀框架的技术根源,是实现复用,达到解耦合的有利得手。因为反射不需要直到类,xml文件,等等的内容,只需要我们提前制定一种规则,那么我们就可以通过反射使我们的系统达到异常灵活的地步,使我们的开发有了那些提前写好可复用的代码——框架,这些可都是基于反射的强大作用。
从现实生活中,我们找个反射的例子吧?什么类似Java中的反射机制呢???画家,它会画人像。来人出钱画个上学的学生,他马上画出来了;有来人出钱画个收小麦的农民,他也画出来了…… 这就像我们的反射,过来什么类我们进行反射获取具体的类,就可以用它了,不用提前知道传过来的类的具体。而假如我们传统的new对象的画,必须知道传过来的对象,这样就很难达到多态的效果了。就像这个画家,如家就会画上学的儿童,那么那些想让他画农民的客户来了,就白跑了,这样显得画家的水平特别低了。转到我们的软件就是软件的功能特别单一了。
那么通过反射在那些地方用的到呢?这里举两个例子:
一,1,问题描述:一般在servlet或者anction类中,我们通过获取request中的数据,进行数据的封装,需要利用request的getParameter一一取出数据来,然后再通过对象的set方法进行赋值,这样来看是非常麻烦呢?
2,问题解决:通过反射我们可以不用知道request传过来的数据,只需要知道我们要封装的对象,就可以进行赋值,一次代码重复利用,达到了很好的复用效果。
我们来看这个工具类:
3,注意事项:当然,这里需要我们满足javabean规范,而且jsp页面的字段和bean里边的要一样等,就有一些规范了。
二,1,问题描述:一般三层架构和MVC架构的层与层之间实现解耦合,而直接的分层加接口,耦合度还是很高的,如何使之间彼此不受影响呢?
2,问题解决:利用反射:
当然需要我们的xml文件来进行一些约束,有了一些规范:
这里是一个利用反射获取了service类,并且关联了dao类,感觉反射的作用是非常强大的。
通过项目的实践,不仅加深了对反射机制的理解,更感觉到了它的无限魅力,有了反射,感觉很多问题都迎刃而解了!
- 反射机制的运用
- 反射机制的运用
- java反射机制的运用
- java反射机制的运用
- 运用反射机制的JDBC封装
- 运用反射机制捕获类的原型
- Java反射机制的运用-Json解析
- 反射机制之运用
- C#反射机制小运用
- java反射机制和运用
- JAVA 反射机制简单运用
- JAVA反射机制运用教程
- [JAVA]运用反射机制,抛出的异常的捕获方法
- 运用类反射机制简化Struts应用程序的开发
- 运用类反射机制简化Struts应用程序的开发
- 运用类反射机制简化Struts应用程序的开发
- 运用类反射机制简化Struts应用程序的开发
- 运用类反射机制简化Struts应用程序的开发
- SPRING 的任务调度
- JavaBean技术
- [已解决]Android 5.1 上面进行debug的时候 debug 的界面总是不消失 一直显示 Application is waiting for the debugger to attach
- 管理员命令下pip错误unable to create process using的解决方法
- sqoop导出hive数据到mysql错误: Can't parse input data java.util.NoSuchElementException解决办法
- 反射机制的运用
- 超过单行多余的显示...与显示多行超出的显示...
- 集合框架-产生10个1-20之间的随机数,要求随机数不能重复
- HDU 1003 Max Sum
- 辨清DOM元素的特性与属性
- mysql的启动相关操作
- Chrome浏览器前端开发常用的插件和扩展程序
- MySQL基础知识七
- Elimination Game