properties

How to make a reference type property “readonly”

℡╲_俬逩灬. 提交于 2020-01-20 17:30:48
问题 I have a class Bar with a private field containing the reference type Foo . I would like to expose Foo in a public property, but I do not want the consumers of the property to be able to alter Foo ... It should however be alterable internally by Bar , i.e. I can't make the field readonly . So what I would like is: private _Foo; public Foo { get { return readonly _Foo; } } ...which is of course not valid. I could just return a clone of Foo (assumming that it is IClonable ), but this is not

SpringBoot日记——国际化篇

情到浓时终转凉″ 提交于 2020-01-20 06:41:02
听起来高大上的国际化,起始就是在利用浏览器语言,或者页面中的中英文切换,将页面的文字在其他语言和中文进行切换,比如: 我们想让这个功能实现,点击中文,页面就是中文的,点击英文就是英文的。 国际化配置 那么我们来看,SpringBoot默认是按照你浏览器的语言来切换中英文的,配置文件呢,我们可以在resources中这样写: 1. 新建一个名叫“i18n”的包,我们用来存放国际化配置,然后在这个包下,我们再创建几个properties的配置文件,用来配置语言:   如图方式,我们创建3个文件,分别是无语言配置时候生效的login.properties;中文生效的login_zh_CN.properties;英文生效的login_en_US.properties;   也就是以下划线的组合:文件名_区域_语言.properties;当我们这样命名生成文件后,IDEA也会帮我们识别这是个国际化配置包,自动转换成如下的模式:   当然变成如上模式的时候,我们再需要添加配置文件,直接在包右键new就可以了 方便了许多~ 2. 我们要在这些配置文件里做些改动,先来点击login_en_US的配置文件,然后点击下边如图所示的Resource Bundle的按钮,切换编辑模式:   按照如图的方法,点击加号,添加一个key,我们取名叫login.tip就是页面中用到的提示的意思 接下来

Mybatis学习总结(三)——SqlMapConfig.xml全局配置文件解析

戏子无情 提交于 2020-01-20 00:40:35
经过上两篇博文的总结,对mybatis中的dao开发方法和流程基本掌握了,这一节主要来总结一下mybatis中的全局配置文件SqlMapConfig.xml在开发中的一些常用配置,首先看一下该全局配置文件中都有哪些可以配置的东西: 配置内容 作用 <properties> 用来加载属性文件 <settings> 用来设置全局参数 <typeAliases> 用来设置类型的别名 <typeHandlers> 用来设置类型处理器 <objectFactory> 用来设置对象工厂 <plugins> 用来设置插件 <environments> 用来设置mybatis的环境 <mappers> 用来配置映射文件 从前面的博文中可以看出,<environments>是用来配置mybatis的环境的,在和Spring整合前是由mybatis自己管理的,但是和Spring整合后,这些配置都将被废弃掉,<environments>部分在前面已经有提到过,这里就不再赘述了。然后objectFactory和plugins一般我们不用,所以在这里就不总结了,<typeHandlers>类型处理器是mybatis中用来完成jdbc类型和java类型之间转换的,mybatis默认支持的类型处理器基本够我们使用了,一般不需要自定义。这篇博文主要来总结一下剩下的几个配置的用法。 1、properties属性

手把手带你YAML快速入门

时间秒杀一切 提交于 2020-01-19 23:35:29
我们学习Java,都是先介绍properties文件,使用properties文件配合Properties对象能够很方便的适用于应用配置上。然后在引入XML的时候,我们介绍properties格式在表现层级关系和结构关系的时候,十分欠缺,而XML在数据格式描述和较复杂数据内容展示方面,更加优秀。到后面介绍JSON格式的时候,我们发现JSON格式比较XML格式,更加方便(除去数据格式限制之外),所以现在很多配置文件(比如Nginx和大部分脚本语言的配置文件)都习惯使用JSON的方式来完成,包括Springboot的出现目的也是在一定程度上去掉XML的繁琐配置。 在Springboot中,推荐使用properties或者YAML文件来完成配置,但是对于较复杂的数据结构来说,YAML又远远优于properties。本文就快速介绍YAML的常见语法格式。 先来看一个Springboot中的properties文件和对应YAML文件的对比: #properties(示例来源于Springboot User guide): environments.dev.url=http://dev.bar.com environments.dev.name=Developer Setup environments.prod.url=http://foo.bar.com environments.prod

一步一步教你YAML快速入门

烂漫一生 提交于 2020-01-19 23:35:01
Java学习之路迢迢,无论是开局hello word,还是从头文件说起,总之,都是有顺序可言。 我们学习Java,都是先介绍properties文件,使用properties文件配合Properties对象能够很方便的适用于应用配置上。然后在引入XML的时候,我们介绍properties格式在表现层级关系和结构关系的时候,十分欠缺,而XML在数据格式描述和较复杂数据内容展示方面,更加优秀。到后面介绍JSON格式的时候,我们发现JSON格式比较XML格式,更加方便(除去数据格式限制之外),所以现在很多配置文件(比如Nginx和大部分脚本语言的配置文件)都习惯使用JSON的方式来完成,包括Springboot的出现目的也是在一定程度上去掉XML的繁琐配置。 在Springboot中,推荐使用properties或者YAML文件来完成配置,但是对于较复杂的数据结构来说,YAML又远远优于properties。本文就快速介绍YAML的常见语法格式。 先来看一个Springboot中的properties文件和对应YAML文件的对比: #properties(示例来源于Springboot User guide): environments.dev.url=http://dev.bar.com environments.dev.name=Developer Setup

Springboot之YAML快速入门教学

偶尔善良 提交于 2020-01-19 23:32:50
Java作为高级编译程序的元老,以一处编译到处运行的特点,广受开发者喜爱 我们学习Java,都是先介绍properties文件,使用properties文件配合Properties对象能够很方便的适用于应用配置上。然后在引入XML的时候,我们介绍properties格式在表现层级关系和结构关系的时候,十分欠缺,而XML在数据格式描述和较复杂数据内容展示方面,更加优秀。到后面介绍JSON格式的时候,我们发现JSON格式比较XML格式,更加方便(除去数据格式限制之外),所以现在很多配置文件(比如Nginx和大部分脚本语言的配置文件)都习惯使用JSON的方式来完成,包括Springboot的出现目的也是在一定程度上去掉XML的繁琐配置。 在Springboot中,推荐使用properties或者YAML文件来完成配置,但是对于较复杂的数据结构来说,YAML又远远优于properties。本文就快速介绍YAML的常见语法格式。 先来看一个Springboot中的properties文件和对应YAML文件的对比: #properties(示例来源于Springboot User guide): environments.dev.url=http://dev.bar.com environments.dev.name=Developer Setup environments.prod.url

springboot配置

半世苍凉 提交于 2020-01-19 22:08:49
YAML语法 基础语法: k:(空格) v 以此来表示一对键值对(空格不能省略);以空格的缩进来控制层级关系,只要是左边对齐的一列数据都是同一个层级的。 注意 :属性和值的大小写都是十分敏感的。例子: server: port: 8081 path: /hello 值的写法 字面量:普通的值 [ 数字,布尔值,字符串 ] k: v 字面量直接写在后面就可以 , 字符串默认不用加上双引号或者单引号; “” 双引号,不会转义字符串里面的特殊字符 , 特殊字符会作为本身想表示的意思; 比如 : name: "kuang \n shen" 输出 : kuang 换行 shen '' 单引号,会转义特殊字符 , 特殊字符最终会变成和普通字符一样输出 比如 : name: ‘kuang \n shen’ 输出 : kuang \n shen 对象、Map(键值对) k: v1: v2: 在下一行来写对象的属性和值得关系,注意缩进;比如: student: name: qinjiang age: 3 行内写法 student: {name: qinjiang,age: 3} 数组( List、set ) 用 - 值表示数组中的一个元素,比如: pets: - cat - dog - pig 行内写法 pets: [cat,dog,pig] 修改SpringBoot的默认端口号 配置文件中添加

一目了然之SpringBoot中yml和properties配置文件

自闭症网瘾萝莉.ら 提交于 2020-01-19 05:58:46
1、什么是yml什么是properties? 对于刚接触springboot的同学,肯定存在一时搞不清楚yml和properties配置文件有什么区别。首先,无论是yml还是properties,都是SpringBoot配置文件中的一种格式,默认名为application.yml或application.properties ,默认放在resources文件夹下,当然,放在resources/config文件夹下也是可以读取到的。 2、各自的优点? 下面我们以配置redis缓存数据库的配置文件为例子进行说明: yml格式配置文件: properties格式配置文件: 可以看到,yml格式的配置文件有着可读性更强的树型结构,也更加简洁,但对于新手而言,properties格式的配置文件也是不错的选择,易于理解,总之,两种格式的配置文件殊途同归,springboot项目都可以识别。 3、yml格式配置文件写法和坑点 对于properties格式的配置文件,我无需多言,所有学习springboot的同学最开始接触的还是properties格式的配置文件。那么properties格式配置文件如何转yml格式呢? (1)不同等级用冒号隔开,次等级前用空格,不能用制表符tab,如spring.redis.host=127.0.0.1配置文件中,spring作为第一级,redis作为第二级.

Are C# auto-implemented static properties thread-safe?

旧城冷巷雨未停 提交于 2020-01-19 05:37:09
问题 I would like to know if C# automatically implemented properties, like public static T Prop { get; set; } , are thread-safe or not. Thanks! 回答1: It appears not. This is the decompilation with Reflector: private static string Test { [CompilerGenerated] get { return <Test>k__BackingField; } [CompilerGenerated] set { <Test>k__BackingField = value; } } 回答2: Section 10.7.4 of the C# specification states: When a property is specified as an automatically implemented property, a hidden backing field