2018-08-13 15:02:05

NIO Paths工具对文件操作

path—路径操作 path类定义了路径操作的功能。java1.7为了向后兼容,在传统iojava.io.file类中添加了file.topath方法用于将file对象转成path。 同样的java.nio.file.path中也定义了一个path.tofile方法向前兼容 为了平台的无关性,java提供了一个paths工厂类让不同平台的jdk创建..

JAVA
1115
0
2018-08-13 14:52:47

Java匿名内部类赋值给外部参数

//如果局部变量不需要传出外部类,只是需要使用它的指, //那么可以在内部类定一个属性,然后内部类使用该属性就可以了,如 void test() { final string name = "test"; class inner { string innername; {innername=name;} //定一个属性 public void innerte..

JAVA
1438
0
2018-07-31 00:04:46

MySql分表分页

mysql的多表分页一直是一个比较困难的问题。常见的多表分页场景主要出现在统计页面中,比如统计多维度的数据,或者按照固定顺序取多个数据表数据。 方案一:创建临时表。 创建临时表是一个最简单快捷的方案。在对数据实时性要求不高的情况下,可以创建一个临时表,使用程序整理要查询的数据,并定时把整理好的数据insert到临时表中,展示时直接从临时表中读取数据。..

JAVA
1605
0
2018-07-23 11:06:07

springBoot动态切换application.properties配置文件

在spring boot 中如果想使用application-xx.properties配置文件有3中办法 1:在application.properties配置文件中配置spring.profiles.active=xx,xx和application-xx.properties中对应 2:在spring boot启动类中 使用springappli..

JAVA
1210
0
2018-07-23 11:03:34

SpringBoot @Transactional事务处理

简单使用 在启动类上方添加 @enabletransactionmanagement注解 使用时直接在类或者方法上使用 @transactional注解 如: import org.mybatis.spring.annotation.mapperscan; import org.springframework.boot.springapplica..

JAVA
1448
0
2018-07-23 10:53:54

SpringBoo使用jasypt加密配置文件

1.引入依赖:(针对springboot的) <dependency> <groupid>com.github.ulisesbocchio</groupid> <artifactid>jasypt-spring-boot-starter</artifactid> <version>1...

JAVA
927
0
2018-07-23 10:49:57

Springboot使用外部Tomcat

1.重写springbootapp初始化方法 @springbootapplication public class kafkaapplication extends springbootservletinitializer { //继承初始化类,并重写该方法 public static void main(string[] args) { spring..

JAVA
978
0
2018-07-01 18:33:01

SpringBoot从application.yml中获取自定义常量

注意 application.yml 中不能用驼峰式写法(systemparams)要改成system-params 要导入依赖 pom.xml <dependency> <groupid>org.springframework.boot</groupid> <artifactid>spring-b..

JAVA
1555
0
2018-07-01 18:26:55

SpringBoot自定义配置文件及读取配置文件

读取核心配置文件 核心配置文件是指在resources根目录下的application.properties或application.yml配置文件,读取这两个配置文件的方法有两种,都比较简单。 核心配置文件application.properties内容如下: server.port=9090 test.msg=hello world spri..

JAVA
1273
0
2018-06-26 14:32:44

Nginx支持字体文件

为了在前端正确地显示字体,浏览器必须使用正确的http header来接受字体文件。如果服务器没有设置要求的头信息,那么有些浏览器就会在控制台报错或者直接不能显示。 可能你的服务器已经配置好了,你无须再动任何东西。如果没有配置好,那么你需要注意下面几点: 首先,修改mime-type headers; 其次设置cors headers-仅当你从不..

JAVA
1238
0
2018-06-25 22:06:30

mysql-connector-java-8.0.11连接MySQL 8.0问题

loading class `com.mysql.jdbc.driver'. this is deprecated. the new driver class is `com.mysql.cj.jdbc.driver'. the driver is automatically registered via the spi and manual loading..

JAVA
1380
0
2018-06-24 09:59:22

Elasticsearch 6.3.0 SQL查询

elasticsearch 6.3.0 官方新增的sql功能,下面介绍其使用方法: 通过sql实现查询功能(代码中直接操作sql,从配置中加载sql) 将sql转换为dsl功能 sql查询: @test public void testquery(){ clientinterface clientutil = elasticsearchh..

JAVA
987
0
2018-06-09 17:42:26

RabbitMQ 延迟队列取消订单

问题描述 在订单系统,当用户下单后需要在10分钟内完成支付,否则取消订单。 解决方案 如果我们使用定时任务来做,那这个失效时间对不准确,当时可以提高定时任务的执行频率来减小这个误差。 使用延迟队列,我们这里主要将这种方式。 基本概念 所谓的‘延迟队列“就是消息被发送以后,不直接被消费者消费,而是等到特定时间后消费者才能拿到消..

JAVA
1155
0
2018-06-09 17:34:07

RateLimiter抢购秒杀限流

常用的限流算法有漏桶算法和令牌桶算法,guava的ratelimiter使用的是令牌桶算法,也就是以固定的频率向桶中放入令牌,例如一秒钟10枚令牌,实际业务在每次响应请求之前都从桶中获取令牌,只有取到令牌的请求才会被成功响应,获取的方式有两种:阻塞等待令牌或者取不到立即返回失败 也许是出于简单起见,ratelimiter 中的时间窗口能且仅能为 1..

JAVA
948
0
2018-06-09 13:21:48

Redis实现分布式锁

使用redis setnx实现 setnx命令(set if not exists) 语法:setnx key value 功能:原子性操作,当且仅当 key 不存在,将 key 的值设为 value ,并返回1;若给定的 key 已经存在,则 setnx 不做任何动作,并返回0。 注意: 使用setnx和expire实现锁的时候,一定要..

JAVA
1902
0
2018-06-09 12:57:08

Redis实现分布式限流

我们做一个简单的封装,把限流器定义成一个注解,然后定义2个属性,时间和次数,这也是计数器的2个核心属性 import org.springframework.core.ordered; import org.springframework.core.annotation.order; import java.lang.annotation.docum..

JAVA
1138
0
2018-06-09 12:45:05

Guava RateLimiter令牌桶算法限流

ratelimiter提供了令牌桶算法实现:平滑突发限流(smoothbursty)和平滑预热限流(smoothwarmingup)实现。 ratelimiter limiter = ratelimiter.create(5); system.out.println(limiter.acquire()); system.out.println(..

JAVA
1400
0
2018-06-09 10:38:00

Redis+Lua实现分布式限流

限流接口 public interface easyratelimiter { void acquire(int permits); } 调用示例 @resource(name = "rediseasyratelimiterimpl") private easyratelimiter easyratelimiter; @test pu..

JAVA
1130
0
2018-06-09 10:18:59

RateLimiter限流问题

1. 如果设置每秒存放100个令牌, 但过了好久都没有请求, 这时令牌数可能已经非常大了, 这时突然来了大量请求, 那服务器可能就会崩掉, 所以能不能限制令牌的最大数; 2. 如果令牌数巨大, 会不会占用一些资源 , 如内存资源; 3. 如果按ip限流, 每个ip对应一个ratelimit, 随..

JAVA
1609
0
2018-06-09 10:01:33

Elasticsearch 6.0 性能调优

配置jvm heap map $ sudo vim /etc/elasticsearch/jvm.options "" -xms4g -xmx4g "" $ sudo systemctl restart elasticsearch.service 参考:https://stackoverflow.com/questions/18132719/how-t..

JAVA
846
0
2018-06-09 09:48:09

Elasticsearch score 评分计算

function_score 自定义 score 评分使用 函数 min_score 最小score 的值, 显示大于当前score 的值 score_mode score 评分计算方式 ; script_score script 的作用 ,如果 rank 字段的值等于 0 该记录的score 评分 = score评分 - 4; 比如 原来 评分 1..

JAVA
1229
0
2018-05-28 18:36:23

java.lang.NoSuchMethodException: org.openxmlformats.schemas.wordprocessingml.x2006.main.impl.CTPictureBaseImpl错误

使用poi对office文档进行操作的时候,出现以下异常 java.lang.nosuchmethodexception: org.openxmlformats.schemas.wordprocessingml.x2006.main.impl.ctpicturebaseimpl.<init>(org.apache.xmlbeans.sch..

JAVA
3152
0
2018-05-27 11:35:43

HttpClient请求API返回结果中文乱码

在和电子面单接口使用httpclient发送post请求的时候时,接收到了服务器返回的数据,打印内容,发现中文有乱码: <title>沙箱调试电子面单模板</title> 那为什么会有中文乱码?来看看代码怎么写的: httpresponse response = httpclie..

JAVA
1960
0
2018-05-27 11:21:19

Maven编译项目“不可映射字符”解决

在myeclipse中使用maven编译项目源代码时,执行"maven install"命令编译项目时就会出现"编码gbk的不可映射字符"错误,导致项目编译失败。 解决办法   解决这个问题的思路: 在maven的编译插件中声明正确的字符集编码编码——编译使用的字符集编码与代码文件使用的字符集编码一致!!   安装系统之后,一般中文系统默认字..

JAVA
1105
0
2018-05-27 11:08:07

Non-terminating decimal expansion; no exact representable decimal result异常解决

通过bigdecimal的divide方法进行除法时当不整除,出现无限循环小数时,就会抛异常的 异 常 :java.lang.arithmeticexception: non-terminating decimal expansion; no exact representable decima..

JAVA
936
0
2018-05-23 12:39:43

Eclipse 安装JavaFx插件

JAVA
1155
0
2018-05-17 22:03:20

Maven打包war包含空文件夹

<plugins> <plugin> <artifactid>maven-war-plugin</artifactid> <version>2.6</version> <configuration> <includeemptydirectories>true&lt..

JAVA
967
0
2018-05-16 00:14:40

MyEclipse Maven项目加入本地jar包

myeclipse的maven项目src/main/resources目录下建立lib文件夹,将要用到的jar包放到文件夹里面。 修改pom.xml文件 <plugins> <plugin> <artifactid>maven-compiler-plugin</artifactid> <..

JAVA
1208
0
2018-05-09 21:00:42

MyBatis动态SQL

1.where,if用法 如下面动态select的写法,当where句中的if判断的是参数中给的数据,而不是数据库中的值。若条件不成立的时候,则忽略where语句。 注意下面子句中使用了 and name like 这里的and会由mybatis进行自动判断,若只有一个子句会自动被去掉。 <mapper namespace="dao.studen..

JAVA
1053
0
2018-05-09 20:55:49

elasticsearch经纬度范围查询

索引mapping定义: 索引中定义一个字段pin,添加一个属性location,type为geo_point "pin" : { "properties" : { "location" : { "type" : "geo_point" } } } dsl: 报文中的包含一个match all的query , filter中的distance指定了..

JAVA
1175
0