stripes 源码阅读

stripes-code-1527-tags-1.5.6\stripes\src\net\sourceforge\stripes\integration\spring\SpringHelper.java



    public static void injectBeans(Object bean, ApplicationContext ctx) {        // First inject any values using annotated methods        for (Method m : getMethods(bean.getClass())) {            try {                SpringBean springBean = m.getAnnotation(SpringBean.class);                boolean nameSupplied = !"".equals(springBean.value());                String name = nameSupplied ? springBean.value() : methodToPropertyName(m);                Class<?> beanType = m.getParameterTypes()[0];                Object managedBean = findSpringBean(ctx, name, beanType, !nameSupplied);                m.invoke(bean, managedBean);            }            catch (Exception e) {                throw new StripesRuntimeException("Exception while trying to lookup and inject " +                    "a Spring bean into a bean of type " + bean.getClass().getSimpleName() +                    " using method " + m.toString(), e);            }        }

        // And then inject any properties that are annotated        for (Field f : getFields(bean.getClass())) {            try {                SpringBean springBean = f.getAnnotation(SpringBean.class);                boolean nameSupplied = !"".equals(springBean.value());                String name = nameSupplied ? springBean.value() : f.getName();                Object managedBean = findSpringBean(ctx, name, f.getType(), !nameSupplied);                f.set(bean, managedBean);            }            catch (Exception e) {                throw new StripesRuntimeException("Exception while trying to lookup and inject " +                    "a Spring bean into a bean of type " + bean.getClass().getSimpleName() +                    " using field access on field " + f.toString(), e);            }        }    }

stripes spring annotation相关推荐

  1. Spring Annotation(@Autowire、@Qualifier)

    Spring Annotation(@Autowire.@Qualifier) 1 <?xml version="1.0" encoding="UTF-8" ...

  2. DWR的学习文档(Hello World,类型转换,Spring,Annotation)

    來源:http://www.iteye.com/topic/40313 DWR是作为远程调用的ajax框架,将服务端的java类,方法和浏览器的javascript的类,方法对应起来.现在官方最新的版 ...

  3. Spring Annotation知识梳理

    2019独角兽企业重金招聘Python工程师标准>>> Spring annotation:(目的:减少applicationContext.xml文件配置) 使用注解时需要添加扫描 ...

  4. Invalid default: public abstract java.lang.Class org.mybatis.spring.annotation.MapperScan.factoryBe

    错误信息: java.lang.annotation.AnnotationFormatError: Invalid default: public abstract java.lang.Class o ...

  5. Dao层系列-4-Hibernate Spring Annotation

    2019独角兽企业重金招聘Python工程师标准>>> 之前几篇文章主要是介绍 Hibernate.Hibernate Annotation.Hibernate Spring 集成 ...

  6. Spring Annotation Processing: How It Works--转

    找的好辛苦呀 原文地址:https://dzone.com/articles/spring-annotation-processing-how-it-works If you see an annot ...

  7. Annotation 和Spring Annotation 知识整理

    话题很大,感觉能力有限,很难把这些东西一次说透,只能稍作一个整理,供参考了.Annotation , 注解.可以粗浅理解是一种方法,这种方法能够帮助我们简化代码或者资源配置文件,提高工作效率.越来越多 ...

  8. Java项目中使用spring (annotation)

    本文使用的项目和 java 项目中使用 sping (XML) 文章所使用的项目完全一样,annotation 相比于 XML 方式配置要更加方便快捷. 但是 XML 方式没有侵入性, 更加符合 sp ...

  9. spring Annotation 组件注入

    spring 注解的分类 启动spring自己主动扫描功能 <context:component-scan/> 1.@Repository: 它用于将数据訪问层 (DAO 层 ) 的类标识 ...

最新文章

  1. Geo-CNN的三维点云
  2. boost::fibers::launch::dispatch的用法测试程序
  3. 牛客网数据开发题库_数据库刷题—牛客网(21-30)
  4. centos8搭建glusterfs服务
  5. mysql 该字符串未被识别为有效的 datetime_打印报错,提示该字符串未被识别为有效的datetime...
  6. php7对redis的扩展及redis主从搭建
  7. php操作mysql数据_详解PHP操作MySQL数据库
  8. 生成微信二维码,微信扫码登录网站
  9. Linux系统基本操作及命令详解
  10. Little_Women6.txt
  11. 回首来时路——李天岩
  12. 栈的图文解析 和 对应3种语言的实现(C/C++/Java)
  13. 复现awvs——CVE-2020-1938(CNVD-2020-10487)tomcat ajp 文件包含漏洞
  14. Excel 标记重复多余项
  15. python 手机号码_Python手机号码归属地查询代码
  16. 关于DJI Phantom 3 Advanced大疆精灵3A遥控器固件升级问题的解决办法
  17. 【NOIP 2011】 观光公交
  18. 轻松搭建一个BI销售数据分析系统
  19. Ant Design of Vue中a-form-model多行表单对齐和验证
  20. 【数据结构】哈希表、哈希值计算分析

热门文章

  1. 基于 CC2530 的温度采集系统(未定稿)
  2. 地图上道路编号中的G S X Y
  3. P4343 自动刷题机题解(二分)
  4. 绚丽的野外环境AE电子相册模板
  5. Eclipse版本介绍
  6. 数十亿数量级评论系统的SQL调优实战
  7. CSAE V2X应用层MAP消息解读
  8. linux中ll下第一个字符是l,linux ls -l 详解
  9. 深度学习笔记(十四)—— 超参数优化[Hyperparameter Optimization]
  10. javaweb JAVA JSP 停车场管理系统源码停车收费系统(ssm停车场管理 停车场收费)