![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
xiao1122
互联网产品研发
展开
-
Springboot+nacos配置自动刷新后触发其他初始化
springboot项目通过nacos获取配置后如何触发程序初始化,比如说限流组件设置的是20,跟改后配置后,如何再触发流控组件初始化?原创 2023-02-21 09:32:28 · 589 阅读 · 1 评论 -
媒资融合
项目需要爬取全网的媒资内容并将相同的媒资融合在一起,例如腾讯有天龙八部,芒果也有天龙八部,这样就会生成一个天龙八部的融合合集,下面关联不同cp的天龙八部合集,用户在检索媒资的时候,会首先出现融合合集,然后可以选择不同cp合集,合集的名称有很多种,如天龙八部第一部、天龙八部第1部等,如何将其归类到同一个融合合集,我们很容易的能想到通过正则来处理合集名称做兼容处理, 处理方式...转载 2020-05-29 16:55:12 · 461 阅读 · 0 评论 -
elasticsearch零宕机切换索引
我们在用es做搜索查询,经常会遇到数据需要重建索引的情况,生产环境如果在不影响业务的前提下来重建索引呢?,其实es已为我们提供了解决方案,通过es的别名机制能很容易的实现索引的平滑切换。具体实现方法如下:1.为老索引建立别名PUT /old_index/_alias/my_inde2.建立新索引new_index3.重跑old_index的数据到new_index4.数据重跑完成后,切换索引POST /_aliases{“actions”: [{ “remove”: { “index”:转载 2020-05-15 09:32:30 · 324 阅读 · 0 评论 -
java处理文件hash
在做项目中要求获取文件的hash并按照hash命名存储文件,整理了一个帮助类,可以获得文件、文件流、字符串的hash值,详情请看代码package com.mgtv.media.vrs.util;import java.io.*;import java.math.BigInteger;import java.nio.ByteBuffer;import java.nio.channels...原创 2020-04-21 14:43:35 · 854 阅读 · 0 评论 -
通过切面记录业务日志记录的一种模式
背景我们在做业务系统研发的时候,总会有这种需求,用户做了哪些操作、修改了哪些数据都需要记录下来,有没有一种通用的方式来记录业务日志并且与业务逻辑解耦,今天我们就来讲一种通过切面来记录日志的一种方式,并通过约定对开发流程定一些基本的规范来达到减少硬编码的目的。原理1、【客户端】提交的内容都是变更内容的核心参数,非变更内容不提交。所有修改操作 Request Body 需要绑定 提交前的变更内容...原创 2020-04-20 14:58:56 · 856 阅读 · 0 评论 -
java获得文件编码格式
java在读取文件时容易出现乱码,究其原因是读取文件的编码跟文件本身的编码不一致,那在解析文件前如何获取文件的编码格式呢?本文主要通过google开源的 juniversalchardet 来实现。首先在项目中引入jar包 <dependency> <groupId>com.googlecode.juniversalchardet&...原创 2020-04-03 11:27:39 · 960 阅读 · 1 评论 -
JAVA汉字拼音解析
进入了媒资行业,项目需求需要将片名生成拼音并支持多音字处理,主要使用pinyin4j库。结合业务跟网上的例子,整理了一个拼音处理工具类。项目中需要引入jar包:<dependency> <groupId>com.belerweb</groupId> <artifactId>pinyin4j</artifa...原创 2020-02-18 22:45:03 · 386 阅读 · 0 评论 -
[爬坑] springboot @async 无效
最开始使用Springboot ,发现加上注解@Async后没有效果, 然后度了一下 ,才知道需要三步配置.在@SpringBootApplication启动类 添加注解@EnableAsync异步方法使用注解@Async ,返回值为void或者Future切记一点 ,异步方法和调用方法一定要**** 写在不同的类中 ****,如果写在一个类中,是没有效果的@Async具体解释和实现代...原创 2020-02-12 16:54:18 · 671 阅读 · 0 评论 -
java爬取豆瓣影片信息
最近在工作中需要从豆瓣网爬取影片信息,一讲到爬取大家都会想到python,确实python在各种库的支持下写个爬虫特别容易,但是java其实也很方便,本次就是使用的jsoup来爬取并解析,《jsoup官方文档》直接上代码package com.mgtv.media.vrs.crawler.impl;import cn.hutool.core.date.DatePattern;import...原创 2020-02-10 20:35:19 · 3144 阅读 · 0 评论 -
Mybatis Plus 如何通过lambda获取属性名,源码解析
最近项目中使用mybatisplus 作为项目的orm,效率比mybatis提升了不少,用起来相当方便,其中通过lambda表达式取得字段名,特别方便 LambdaQueryWrapper<SpClips> where = new LambdaQueryWrapper<>(); where.in(SpClips::getClipId, ...原创 2019-11-25 11:04:52 · 5004 阅读 · 1 评论 -
logback输出json格式日志并带traceId
java日志接入elk 要求 输出json格式,之前通过layout 自定义json格式,消息里有引号不能解析,收录报错现提供一种方式,通过logstash-logback-encode 和 skywalking 结合 输出 json格式日志并带上traceId。1、pom.xml 引入 jar包 <dependency> <groupId...原创 2019-10-09 11:42:28 · 3575 阅读 · 0 评论