Chinaunix首页 | 论坛 | 博客
  • 博客访问: 17500
  • 博文数量: 21
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 211
  • 用 户 组: 普通用户
  • 注册时间: 2015-12-09 16:47
文章分类

全部博文(21)

文章存档

2017年(1)

2016年(9)

2015年(11)

我的朋友
最近访客

分类: Java

2015-12-18 10:21:11

spring 中的bean中的简单映射原理。首先会根据配置文件能够解析出对应的类的Class。比如如下的一段xml的片段

点击(此处)折叠或打开

  1. <bean id="news" class="model.News">
  2.            <property name="content" value="12312"></property>
  3.    </bean>
首先会解析到对应的class属性,然后通过解析xml获取到对应的字符串,此时spring 通过如下代码进行创建类的实体

点击(此处)折叠或打开

  1. String clName = "model.News";
  2.         //根据名称得到类的模型

  3.         Class targetClass = Class.forName(clName);
  4.         //根据类的模型得到具体的实例

  5.         News newx = (News) targetClass.newInstance();
然后继续解析property的name属性,然后按照约定,获得了对应的方法

点击(此处)折叠或打开

  1. String temStr ="123123";
  2.         Method method = targetClass.getMethod("setContent",temStr.getClass() );
  3.         method.invoke(temStr, temStr.getClass());
其中的getMethod的第一个参数是解析name属性的content然后自动加载变成setContent字符串,然后根据方法的名称以及参数的属性去获取对应的方法。然后点用method.invoke就可以对代理对象的对应方法传递值。


阅读(497) | 评论(0) | 转发(0) |
0

上一篇:spring 的使用

下一篇: Spring 中AOP的使用

给主人留下些什么吧!~~