如果你用过Maven,可能听说过BOM,这是一个解决Java项目版本冲突的有效工具。
在早先的Gradle版本中,是没有原生BOM支持的,只能通过一些很蹩脚的方式引用Maven的BOM。
在5.0+后,提供了platform机制,可以更加"原生“的实现类似BOM的方法,而且更加简洁。
1 在Gradle中定义你的BOM
build.gradle
只有中间的dependencies部分是可能需要调整的
plugins {
id 'java-platform[......]
最近在写一个hadoop的job,其中依赖了guava,我需要的版本是27.2-jre
然而,不幸的是,Hadoop集群上是2.7.2,其中也有guava版本,11.0.2
更坑的是,guava在16之后有break change,无法向下兼容。
导致不管怎么运行,都会出现:
Error: com.google.common.hash.Funnels.stringFunnel(Ljava/nio/charset/Charset;)Lcom/google/common/hash[......]
sudo add-apt-repository ppa:webupd8team/java
sudo apt update
sudo apt install oracle-java8-installer
sudo apt install oracle-java8-set-default
[......]
需求是:小数最多展示2位,如果没有就不展示。
NumberFormat nf = NumberFormat.getNumberInstance();
// max 2 digits
nf.setMaximumFractionDigits(2);
// min 0 digits
nf.setMinimumFractionDigits(0);
nf.setRoundingMode(Roundi[......]
转载自:http://laolang.xtmm.cn/?p=13514
Session是由应用服务器维持的一个服务器端的存储空间,用户在连接服务器时,会由服务器生成一个唯一的SessionID,用该SessionID 为标识符来存取服务器端的Session存储空间。而SessionID这一数据则是保存到客户端,用Cookie保存的,用户提交页面时,会将这一 SessionID提交到服务器端,来存取Session数据。这一过程,是不用开发人员干预的。所以一旦客户端禁用Cookie,那么Ses[......]