Bee*_*Bee 7 java reflection spring
我需要动态创建对象.我使用Spring创建了一个类名映射.现在我可以用了
弹簧 ApplicationContext.getbean(className)
要么
Java Class.forName(className).newInstance().
哪种方法更有效?
谢谢.
如果spring bean是一个原型范围的bean,Spring将不得不用反射来实例化它,因此必须做你的第二个代码片段.但是要求Spring上下文获取bean不仅仅会让你获得一个新的类实例.它返回一个Spring bean,你可以在其上应用方面(安全性,事务性等),注入依赖项等.
您不应该根据性能选择要调用的内容,而应该选择要获得的内容.无论如何,与你的应用程序的其他部分(网络调用,数据库查询等)相比,这两个调用的成本可能微不足道.
| 归档时间: |
|
| 查看次数: |
11370 次 |
| 最近记录: |