当前位置: 首页 > news >正文

装修公司 网站模板求人做网站的网站

装修公司 网站模板,求人做网站的网站,杭州网站制作工具,哪个网站可以做前端项目Spring底层核心组件 BeanDefinition BeanDefinition表示Bean定义#xff0c;有很多属性用来描述Bean的特点#xff1a; class#xff0c;表示Bean类型 scope#xff0c;表示Bean作用域#xff0c;单例或原型等 lazyInit#xff1a;表示Bean是否是懒加载 initMethod…Spring底层核心组件 BeanDefinition BeanDefinition表示Bean定义有很多属性用来描述Bean的特点 class表示Bean类型 scope表示Bean作用域单例或原型等 lazyInit表示Bean是否是懒加载 initMethodName表示Bean初始化时要执行的方法 destroyMethodName表示Bean销毁时要执行的方法 还有很多... 定义Bean的方式主要分为两种 申明式定义 1、bean/ 2、Bean 3、Component(Service,Controller) 编程式定义 AnnotationConfigApplicationContext context new AnnotationConfigApplicationContext(AppConfig.class);// 生成一个BeanDefinition对象并设置beanClass为User.class并注册到ApplicationContext中 AbstractBeanDefinition beanDefinition BeanDefinitionBuilder.genericBeanDefinition().getBeanDefinition(); beanDefinition.setBeanClass(User.class); beanDefinition.setScope(prototype); // 设置作用域 beanDefinition.setInitMethodName(init); // 设置初始化方法 beanDefinition.setLazyInit(true); // 设置懒加载context.registerBeanDefinition(user, beanDefinition); System.out.println(context.getBean(user)); BeanDefinitionReader BeanDefinition读取器虽然开发中用的很少但是源码中用得很多 AnnotatedBeanDefinitionReader 把某个类转换为BeanDefinition并且解析类上的注解 AnnotationConfigApplicationContext context new AnnotationConfigApplicationContext(AppConfig.class); AnnotatedBeanDefinitionReader annotatedBeanDefinitionReader new AnnotatedBeanDefinitionReader(context); // 将User.class解析为BeanDefinition annotatedBeanDefinitionReader.register(User.class); System.out.println(context.getBean(user)); 可以解析的注解Conditional、Scope、Lazy、Primary、DependsOn、 Role、Description XmlBeanDefinitionReader 解析bean/标签 AnnotationConfigApplicationContext context new AnnotationConfigApplicationContext(AppConfig.class); XmlBeanDefinitionReader xmlBeanDefinitionReader new XmlBeanDefinitionReader(context); int i xmlBeanDefinitionReader.loadBeanDefinitions(spring.xml); System.out.println(context.getBean(user)); ClassPathBeanDefinitionScanner 扫描器可以进行扫描扫描某个包路径对扫描到的类进行解析 AnnotationConfigApplicationContext context new AnnotationConfigApplicationContext(); context.refresh(); ClassPathBeanDefinitionScanner scanner new ClassPathBeanDefinitionScanner(context); scanner.scan(com.gax); System.out.println(context.getBean(userService)); BeanFactory Bean工厂负责创建Bean并且提供获取Bean的 API ApplicationContext就是BeanFactory的一种 public interface ApplicationContext extends EnvironmentCapable, ListableBeanFactory, HierarchicalBeanFactory, MessageSource, ApplicationEventPublisher, ResourcePatternResolver { ... }HierarchicalBeanFactory: 支持父子Bean工厂子Bean工厂获取不到时可以到父Bean工厂去获取 ListableBeanFactory: 展示Bean的名字、展示Bean的数量、统计的信息、拿某一个类型的Bean类似列表的功能 EnvironmentCapable: 获取环境变量的功能 ApplicationEventPublisher: 事件发布的功能 MessageSource: 国际化的功能 ResourcePatternResolver: 获取某些资源、解析某些资源的功能 Spring源码中BeanFactory接口非常重要的实现类 DefaultListableBeanFactory ApplicationContext.getBean() 调用的就是 DefaultListableBeanFactory 的getBean()方法 DefaultListableBeanFactory 可以单独使用 DefaultListableBeanFactory beanFactory new DefaultListableBeanFactory(); AbstractBeanDefinition beanDefinition BeanDefinitionBuilder.genericBeanDefinition().getBeanDefinition(); beanDefinition.setBeanClass(User.class); beanFactory.registerBeanDefinition(user, beanDefinition); System.out.println(beanFactory.getBean(user)); ApplicationContext ApplicationContext是个接口实际上也是一个BeanFactory不过比BeanFactory 更加强大 1、HierarchicalBeanFactory拥有获取父BeanFactory的功能 2、ListableBeanFactory拥有获取beanNames的功能 3、ResourcePatternResolver资源加载器可以一次性获取多个资源文件资源等等 4、EnvironmentCapable可以获取运行时环境没有设置运行时环境功能 5、ApplicationEventPublisher拥有广播事件的功能没有添加事件监听器的功能 6、MessageSource拥有国际化功能 ApplicationContext两个重要的实现类 1、AnnotationConfigApplicationContext 2、ClassPathXmlApplicationContext 国际化 定义一个MessageSource Bean public MessageSource messageSource() {ResourceBundleMessageSource messageSource new ResourceBundleMessageSource();messageSource.setBasename(messages);return messageSource; } ApplicationContext拥有国际化的功能可以直接用 context.getMessage(test, null, new Locale(en_CN)) 资源加载 可以利用ApplicationContext获取某个文件的内容 AnnotationConfigApplicationContext context new AnnotationConfigApplicationContext(AppConfig.class);Resource resource context.getResource(file://D:\\UserService.java); System.out.println(resource.contentLength()); System.out.println(resource.getFilename());Resource resource1 context.getResource(https://www.baidu.com); System.out.println(resource1.contentLength()); System.out.println(resource1.getURL());Resource resource2 context.getResource(classpath:spring.xml); System.out.println(resource2.contentLength()); System.out.println(resource2.getURL());Resource[] resources context.getResources(classpath:com/gax/*.class); for (Resource resource : resources) {System.out.println(resource.contentLength());System.out.println(resource.getFilename()); } 获取运行时环境 AnnotationConfigApplicationContext context new AnnotationConfigApplicationContext(AppConfig.class);MapString, Object systemEnvironment context.getEnvironment().getSystemEnvironment(); System.out.println(systemEnvironment); //操作系统层面的环境变量MapString, Object systemProperties context.getEnvironment().getSystemProperties(); System.out.println(systemProperties); //运行java通过-D指定的环境变量MutablePropertySources propertySources context.getEnvironment().getPropertySources(); System.out.println(propertySources); //最强大的包含上面两种和PropertySources注解的变量System.out.println(context.getEnvironment().getProperty(NO_PROXY)); //操作系统 System.out.println(context.getEnvironment().getProperty(sun.jnu.encoding)); //jvm -D指定 System.out.println(context.getEnvironment().getProperty(gax)); //property里面的 事件发布 定义一个事件监听器 Bean public ApplicationListener applicationListener() {return new ApplicationListener() {Overridepublic void onApplicationEvent(ApplicationEvent event) {System.out.println(接收到了一个事件);}}; } 发布一个事件 context.publishEvent(yeah);
http://www.hkea.cn/news/14413159/

相关文章:

  • 网站维护费怎么做分录成都网站建设重庆最加科技
  • 免费获取源码的网站百度投诉中心在线申诉
  • 网站服务器ip地址怎么查岳阳网红打卡地
  • 做网站的工作量wordpress怎么做说说
  • 绍兴优秀做网站的wordpress付款后下载
  • 网站文章怎么做才能被快速收录宿迁明远建设有限公司网站
  • 做网站设计公司赚钱吗网站建设宗旨是什么
  • 园林绿化网站建设太原网站建设培训班
  • 建设销售网站的好处郑州哪家专业做淘宝网站
  • 网站怎么建立数据库江宁区建设局网站
  • 公司最近想做个网站怎么办开发网站的流程细节
  • 宁志网站两学一做网站制作流程是什么
  • 一个服务器可以做两个网站今天国内重大新闻事件
  • 汕头市通信建设管理局网站企业咨询公司名字大全
  • 网站建设推广济南兴田德润优惠吗做网站工作都包括什么
  • 做流程图表的网站营销网站建设技术
  • 京东网站建设流程网站维护怎么样
  • 如何避免网站被耍流量南阳微信网站
  • 东莞百度网站推广烟台网站优化
  • 网站建设新手指南自己如何做网站优化
  • 网站设计的需求分析wordpress ios版
  • 网站建设怎么宣传手机网页翻译
  • 最新创建的网站知名品牌形象策划公司
  • 网站打不开dns修改吗湖南网站设计
  • 淮北官方网站二维码在线生成制作
  • 北京海淀区邮编wordpress优化服务器
  • 网站的通知栏一般用什么控件做学编程软件
  • 厚街商城网站建设ppt超级市场
  • 建站开发重庆网站建设方案书
  • c#网站开发工具哈尔滨城乡建设网站