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

一个网站可以做多少关键字制造企业危机公关解决方案

一个网站可以做多少关键字,制造企业危机公关解决方案,百度电脑版下载官网,传奇设计师身亡Spring运行环境 Spring在创建容器时#xff0c;会创建Environment环境对象#xff0c;用于保存spring应用程序的运行环境相关的信息。在创建环境时#xff0c;需要创建属性源属性解析器#xff0c;会解析属性值中的占位符#xff0c;并进行替换。 创建环境时#xff0c…Spring运行环境 Spring在创建容器时会创建Environment环境对象用于保存spring应用程序的运行环境相关的信息。在创建环境时需要创建属性源属性解析器会解析属性值中的占位符并进行替换。 创建环境时会通过System.getProperties()获取JVM系统属性会通过System.getenv()获取JVM环境属性。 Environment在Spring中的使用 spring在创建容器时需要指定需要加载配置文件路径在加载配置文件路径时需要解析字符串中的占位符。解析占位符时需要环境信息此时会创建一个标准的spring运行环境即创建StandardEnvironment对象。 1、调用setConfigLocations方法给spring设置需要加载的配置文件的路径源码如下 // 将配置文件的路径放到configLocations 字符串数组中 public void setConfigLocations(Nullable String... locations) {if (locations ! null) {Assert.noNullElements(locations, Config locations must not be null);// 设置了几个配置文件就创一个多长的字符串数组用来存放配置文件的路径this.configLocations new String[locations.length];for (int i 0; i locations.length; i) {//解析路径将解析的路径存放到字符串数组中this.configLocations[i] resolvePath(locations[i]).trim();}}else {this.configLocations null;} }2、调用resolvePath方法解析配置文件路径中的占位符源码如下 // 解析给定的路径必要时用相应的环境属性值替换占位符。应用于配置位置。 protected String resolvePath(String path) {// 获取环境解决所需的占位符return getEnvironment().resolveRequiredPlaceholders(path); }3、调用getEnvironment方法获取环境信息如果没有指定spring的环境信息通过createEnvironment获取默认的环境也就是spring的标准环境。getEnvironment方法源码如下 // 获取spring的环境信息如果没有指定获取到的时默认的环境 Override public ConfigurableEnvironment getEnvironment() {if (this.environment null) {this.environment createEnvironment();}return this.environment; }4、调用createEnvironment方法获取默认的环境spring的标准环境使用StandardEnvironment无参构造创建对象。源码如下 // 获取默认的环境 protected ConfigurableEnvironment createEnvironment() {return new StandardEnvironment(); }Spring的标准环境StandardEnvironment Spring的标准环境StandardEnvironment适合在非web应用程序中使用。 在AbstractApplicationContext类的createEnvironment方法中会调用StandardEnvironment的无参构造方法创建环境对象。 1、调用StandardEnvironment的无参构造方法该方法中没有任何逻辑处理源码如下 public StandardEnvironment() {}2、StandardEnvironment类是AbstractEnvironment抽象类的子类因此使用StandardEnvironment的无参构造创建对象时会调用父类AbstractEnvironment的无参构造方法。AbstractEnvironment在下文中有描述。 3、重写AbstractEnvironment类中的customizePropertySources方法用于设置属性源该方法通过父类进行回调。 该方法会获取JVM系统属性和环境属性并设置到MutablePropertySources类中存放属性源的CopyOnWriteArrayList中。 1JVM系统属性通过System.getProperties()获取 2环境属性通过System.getenv()获取。 StandardEnvironment类中customizePropertySources方法源码如下 // 设置属性源JVM系统属性中的属性将优先于环境属性中的属性。 Override protected void customizePropertySources(MutablePropertySources propertySources) {/*** 1、MutablePropertySources类中使用CopyOnWriteArrayList存储属性源集合中存储PropertySource的子类* 2、PropertiesPropertySource是PropertySource的子类PropertySource类中有三个成员变量* 1logger日志对象* 2name用来保存属性源名称* 3source用来保存属性源中的属性*/// getSystemProperties()通过System.getProperties()获取JVM属性键值对并转成MappropertySources.addLast(new PropertiesPropertySource(SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME, getSystemProperties()));// getSystemEnvironment()通过System.getenv()获取环境属性键值对并撰成MappropertySources.addLast(new SystemEnvironmentPropertySource(SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME, getSystemEnvironment())); }4、StandardEnvironment类中设置了两个静态常量 1systemEnvironment以系统环境为属性源 2systemProperties以JVM系统属性为属性源 /** System environment property source name: {value}.* 系统环境属性源名:{value}。 */ public static final String SYSTEM_ENVIRONMENT_PROPERTY_SOURCE_NAME systemEnvironment;/** JVM system properties property source name: {value}.* JVM系统属性属性源名称:{value}。*/ public static final String SYSTEM_PROPERTIES_PROPERTY_SOURCE_NAME systemProperties;Spring的抽象环境AbstractEnvironment StandardEnvironment类是AbstractEnvironment抽象类的子类因此使用StandardEnvironment的无参构造创建对象时会调用父类AbstractEnvironment的无参构造方法。 1、AbstractEnvironment的无参构造方法该方法会调用AbstractEnvironment的有参构造方法源码如下 public AbstractEnvironment() {this(new MutablePropertySources()); }2、AbstractEnvironment的有参构造 该方法的主要做三件事 1给成员变量赋值 2创建属性源属性解析器 3调用子类重写的customizePropertySources方法方法回调。虽然方法回调在成员变量的赋值之后但由于是引用传递所以通过成员属性可以获取到改变之后的值。 // 使用了模板方法设计模式。 // 给成员变量赋值并调用子类重写的方法对propertySources进行操作。 protected AbstractEnvironment(MutablePropertySources propertySources) {// 给全局变量 可变属性源 赋值this.propertySources propertySources;// 创建属性解析器PropertySourcesPropertyResolver 属性源属性解析器this.propertyResolver createPropertyResolver(propertySources);// 自定义属性源此处回调子类重写的方法。子类通过重写该方法可以操作propertySources。spring标准环境StandardEnvironment重写了该方法customizePropertySources(propertySources); }3、调用createPropertyResolver创建属性解析器用于解析属性值中的占位符并进行替换。 // 在创建环境时需要创建属性解析器 protected ConfigurablePropertyResolver createPropertyResolver(MutablePropertySources propertySources) {return new PropertySourcesPropertyResolver(propertySources); }4、AbstractEnvironment的成员属性 // 指示Spring忽略系统环境变量,默认值为false。 // false表示不会忽略系统环境变量此时getSystemEnvironment方法会调用System.getenv()获取环境属性 // true表示会忽略系统的环境变量此时getSystemEnvironment方法会返回一个空的Map public static final String IGNORE_GETENV_PROPERTY_NAME spring.getenv.ignore;// 指定系统启动时使用哪些配置文件可以使用逗号隔开 public static final String ACTIVE_PROFILES_PROPERTY_NAME spring.profiles.active;// 指定系统启动时使用默认的配置文件可以使用逗号隔开 public static final String DEFAULT_PROFILES_PROPERTY_NAME spring.profiles.default;// 保留的默认的配置文件的名称如果没有显式设置默认配置文件名称也没有显式设置活动配置文件名称则默认情况下该配置文件将自动激活。 protected static final String RESERVED_DEFAULT_PROFILE_NAME default;// 日志对象 protected final Log logger LogFactory.getLog(getClass());//系统启动时使用的配置文件 private final SetString activeProfiles new LinkedHashSet();// 默认配置文件 private final SetString defaultProfiles new LinkedHashSet(getReservedDefaultProfiles());// 可变属性源使用该成员变量保存属性源及通过该属性源获取的属性 private final MutablePropertySources propertySources;// 可配置的属性解析器 private final ConfigurablePropertyResolver propertyResolver;
http://www.w-s-a.com/news/2959393/

相关文章:

  • 个人网站设计开题报告上海哪个网站专门做宝宝宴的
  • 初创公司 建网站更换网站ico
  • php导航网站wordpress 下一页
  • 企业适合用模板网站企管宝
  • 网站注册时间上海微信小程序网站建设
  • 网站被挂广告怎么办wordpress my visitors 数据备份恢复
  • 网站推广外包社交app网站开发
  • 怎么学习制作网站杭州百度seo优化
  • 聚美优品网站建设分析工地木模板多少钱一张
  • jsp简单的网站开发例子青岛建站价格
  • 手机做网站知乎上海品牌营销咨询公司
  • 河北邯郸做网站的公司网站建设价格就要用兴田德润
  • 图片生成网站wordpress 滑动解锁
  • 郑州php网站建设阿里巴巴国际网站建设
  • 网站建设过程总结报告企业注册地址变更流程
  • 网页微信登录长尾词优化外包
  • 网站建设方案书制作wordpress值得买模板
  • 网络推广的基本方法有哪些惠州网站建设公司推荐乐云seo
  • 中国行业网站在家做兼职的网站
  • 本地镇江网站建设泉州网站制作建设
  • 简单的购物网站开发网络推广网站电话
  • 个人网站模板大全杭州城西做网站的公司
  • 怎么做英文的网站首页贴图库wordpress
  • 网站建设中网站图片如何修改扬中网站设计公司
  • 广州 建设 招聘信息网站linux系统服务器怎么做网站
  • 网站域名空间租用合同企业官网门户网站管理系统
  • 公司网站被百度收录杭州网络网站建设
  • 记事本网站开发如何查询中小企业名单
  • vue做网站的实例深圳建站公司外围
  • 本地wordpress 外网访问不了优化seo多少钱