Spring 静态变量注入赋值,静态方法调用,静态语句块

soゝso 2016-08-22 16:03:03 7201

静态语句块

我在百度百科创建了这个词,静态语句块-百度百科

static String x;
//静态语句块
static{
	x = "测试静态语句块。";
}

静态方法调用,静态变量赋值。

看了网上好多讲解的都有问题。 Spring  提供了一个类:

org.springframework.beans.factory.config.MethodInvokingFactoryBean

使用方法详解:

在Spring配置文件中配置:

<bean class="org.springframework.beans.factory.config.MethodInvokingFactoryBean">
     <property name="staticMethod" value="com.sojson.core.domain.DomainDistribution.setDomainInfo"/>
     <property name="arguments">
     	<array>
     		<value>{"convert":"word2spell,cn2spark,pingindic,low2up,fullhalf"}</value>
     		<value>{"color":"cj,img,online,page,select,use,web"}</value>
     	</array>
     </property>
</bean>

name="staticMethod" :固定写法,顾名思义就是静态方法。

value="com.sojson.core.domain.DomainDistribution.setDomainInfo" :对应的静态方法,

com.sojson.core.domain.DomainDistribution 是类的全路径,而setDomainInfo 是静态方法名称。

name="arguments" :参数,而我的array 是因为我要注入的是一个数组,其实是一个 json  数组。

对应的Java代码:

package com.sojson.core.domain;

import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Set;

public class DomainDistribution {
	static String x;
	//静态语句块
	static{
		x = "测试静态语句块。";
	}

	public static Map<String,Set<String>> domainMap = new LinkedHashMap<String,Set<String>>();

	/**
	 * 静态调用方法测试
	 * @param domainInfo
	 */
	public static void setDomainInfo(String[] domainInfo) {
		
		for (String json : domainInfo) {
			System.out.println(json);
		}
	}
	
}

你可以复制代码测试一下。

都是在项目启动的时候,按加载顺序进行加载,当然也是可以赋值 Java  bean。

有问题加群交流!


版权所属:SO JSON在线解析

原文地址:https://www.sojson.com/blog/129.html

转载时必须以链接形式注明原始出处及本声明。

本文主题:

如果本文对你有帮助,那么请你赞助我,让我更有激情的写下去,帮助更多的人。

关于作者
目前就职于国内某电商平台公司打杂。。
相关文章
Spring 静态变量注入赋值静态方法调用静态语句
Spring 静态注入讲解(MethodInvokingFactoryBean)
Freemarker静态化加载模板的三种方式
Urlrewrite Java 伪静态 urlrewrite.xml 配置参数描述
Spring 3.x 升级到Spring 4.x 意事项和步骤,错误解决方法
为什么undefined、NaN和Infinity可以被赋值,而null不可以?
MySql数据库优化意的四个细节(方法
Shiro教程(三)Shiro web.xml中Filter配置,配置意事项
Redis教程,Redis集群搭建与Spring-data-redis的使用(介绍篇)
Shiro 教程,关于最近反应的相关异常问题,解决方法合集。
最新文章
天气API,全国天气 JSON API接口,可以获取十五天的天气预报 10
Springboot + Freemarker 集成配置 45
DNS查询, DNS测速检查接口,DNS测速接口 17
Mysql 并发插入、存在不插入,存在更新操作 36
SOJSON 阿里云活动达到67人,最终获得5年的1核2GB的ECS服务器使用权益 25
Java 完美解析.plist & 生成plist ,Android 解析.plist 28
Java SHA1的几种实现方式,Java SHA1 签名 50
Mac下Charles-proxy 抓包工具,iPhone 抓包演示 16
Mac Fidder 抓包替代方案 Charles-proxy 抓包工具下载 + 安装 + 破解 charles.jar 下载 178
阿里ECS云服务,1核2G1M宽带 40G SSD硬盘, 9 9一年,189二年,279三年 23
最热文章
Elasticsearch教程(四) elasticsearch head 插件安装和使用 117135
Elasticsearch教程(六) elasticsearch Client创建 75853
Elasticsearch教程(八) elasticsearch delete 删除数据(Java) 72356
Elasticsearch教程(二),IK分词器安装 70214
免费天气API,全国天气 JSON API接口,可以获取五天的天气预报 64083
Elasticsearch教程(一),全程直播(小白级别) 57793
Elasticsearch教程(五) elasticsearch Mapping的创建 55748
Elasticsearch教程(三),IK分词器安装 (极速版) 55125
Elasticsearch教程(七) elasticsearch Insert 插入数据(Java) 50396
Elasticsearch权威指南-中文.pdf,Elasticsearch 中文文档下载 43317

骚码加入我们 / 千人QQ群:259217951

入群需要5元,如果没有QQ钱包,可以先Alipay、微信,赞助然后加群主拉进。

二维码生成 来自 >> 二维码生成器

支付扫码

所有赞助/开支都讲公开明细,用于网站维护:赞助名单查看

正在加载... ...