
java
weixin_43034862
这个作者很懒,什么都没留下…
展开
-
线程池怎么控制执行速度的快慢
线程池怎么控制执行速度的快慢原创 2022-07-05 15:09:49 · 736 阅读 · 1 评论 -
栈的深度以及stackoverflow解决方案
栈是一种逻辑数据结构,是JVM虚拟机中的一块内存区域,栈深度就表示着栈所占内存的大小,深度越大,代表可以执行的方法越多。栈的深度参考:https://blog.youkuaiyun.com/qq_28385797/article/details/534686651)StackOverFlowError:若Java虚拟机栈的内存大小不允许动态扩展,那么当线程请求的栈深度大于虚拟机允许的最大深度时(但内存空间可能还有很多),就抛出此异常2)OutOfMemoryError:若Java虚拟机栈的内存大小允许动态原创 2021-07-20 09:53:30 · 881 阅读 · 0 评论 -
保证接口的幂等性
幂等性原理和实现的几种方式:幂等性是分布式环境下常见的问题;幂等性指的是多次操作,结果是一致的。(多次操作数据库数据是一致的。)常见的解决幂等性的方式有以下:1.唯一索引;保证插入的数据只有一条;2.token机制;每次接口请求前先获取一个token,然后再下次请求的时候在请求的header体中加上这个token,后台进行验证,如果验证通过删除token,下次请求再次判断tokenhttps://blog.youkuaiyun.com/LiuAustin/article/details/104439239原创 2021-05-21 14:32:39 · 123 阅读 · 0 评论 -
redis数据结构
redis底层数据结构https://blog.youkuaiyun.com/abel_liujinquan/article/details/89339599redis set数据结构https://www.jianshu.com/p/28138a5371d0?utm_campaignredis zset数据结构https://www.jianshu.com/p/fb7547369655redis hash 数据结构https://blog.youkuaiyun.com/mccand1234/article原创 2021-02-24 15:16:16 · 88 阅读 · 0 评论 -
@ControllerAdvice中使用redis记录缓存
需求controller的url及参数作为key值,缓存结果及接口返回结果,redis需要有开关,开关开启正常使用redis缓存,禁用时不再对任何结果进行缓存@ControllerAdvice("com.newtv.search.serviceapi.controller")配置需要被缓存的接口路径,以防其他不需要被缓存的接口也走进来开关启用和关闭的实现,当配置中spring.cache.type = REDIS时才启用,否则此ResponseBodyAnalysis类不生效。@Condit.原创 2020-11-02 14:33:21 · 278 阅读 · 0 评论 -
springboot配置拦截器
package com.newtv.search.serviceapi.config;import com.alibaba.fastjson.serializer.SerializerFeature;import com.alibaba.fastjson.support.config.FastJsonConfig;import com.alibaba.fastjson.support.spring.FastJsonHttpMessageConverter;import com.newtv.sea.原创 2020-11-02 14:25:41 · 122 阅读 · 0 评论 -
springboot整合redis
实例化RedisTemplate<String, Object>package com.newtv.search.serviceapi.config;import com.newtv.search.serviceapi.common.RedisUtil;import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;import org.springframework.context.anno.原创 2020-11-02 14:19:57 · 144 阅读 · 0 评论 -
替换具体对象中的“null“属性值的字段值为null
在java对象中"null"属性值不太合理,用null来代替会更好public List<CmsContentDTO> deleteNullData(List<CmsContentDTO> newList){ Class c = CmsContentDTO.class; Field[] fileds = c.getDeclaredFields(); for(int i=0;i<newList.size();i++){ CmsCont原创 2020-09-11 16:32:18 · 985 阅读 · 0 评论 -
springboot 整合swagger 404问题解决
写个类UrlMatchConfig extends WebMvcConfigurationSupport 再加上下面的代码@Overridepublic void addResourceHandlers(ResourceHandlerRegistry registry) { registry.addResourceHandler("/**").addResourceLocations( "classpath:/"); registry.addResourc..原创 2020-07-30 11:20:13 · 840 阅读 · 0 评论 -
分布式,多线程,高并发区别
参考:https://mp.weixin.qq.com/s/Wr_Mri4XGYk7HbyPVQq4iA原创 2020-07-21 15:18:20 · 102 阅读 · 0 评论 -
Gson JsonObject转String,Object转JsonElement,String转JsonElement
JsonObject转String:Gson gson = new Gson();String jsonString = gson.toJson(object);JsonParser jsonParser = new JsonParser();String转JsonElement:JsonElement appKey = jsonParser.parse("aaa");Object转JsonElement:JsonElement classifyElement = jsonParser.原创 2020-07-08 10:25:29 · 6696 阅读 · 0 评论 -
mybatis ${},#{}两种传参区别
#{}拿到值之后,拼装sql,会自动对值添加单引号”${}则把拿到的值直接拼装进sql,如果需要加单引号”,必须手动添加,一般用于动态传入表名或字段名使用,同时需要添加属性statementType=”STATEMENT”,使用非预编译模式。查询表明动态变换时可以使用${}方式传入表名查询排序order by XXX时使用${}方式凡是不需要单引号的参数传参 都要使用${}方式使用#可以很大程度上防止sql注入#{param} :以预编译的形式,将参数设置到sql语句中,Prepare.原创 2020-07-03 10:50:00 · 245 阅读 · 0 评论 -
nested嵌套查询和aggregations
嵌套查询查的secondCategory必须是[]这样的数据才可以,如下图classify是不可以的GET cms_5/_search{ "query": { "nested": { "query": { "match": { "category.id": {...原创 2020-07-03 10:21:11 · 800 阅读 · 0 评论 -
@JSONField(name = “XXX“)不生效
我项目是springboot ,@JSONField(name = "XXX")不生效,试了网上说的方法都不行网上说的配置启动项继承WebMvcConfigurerAdapter加上以下bean或者重写 下面的方法@Beanpublic HttpMessageConverters fastJsonHttpMessageConverters() { FastJsonHttpMessageConverter fastConverter = new FastJsonHttpMessag原创 2020-07-02 16:18:42 · 9618 阅读 · 0 评论 -
浏览器请求接口,返回字体显示不同原因分析
我原来的接口返回是第二张图的效果,修改后是第一张图的效果,单看返回的话只是以为是字体的问题,而且第一个在添加如下http配置之前还是乱码:http: encoding: force: true charset: utf-8 enabled: true修改后的代码直接返回一个对象,未做任何处理。分析原来的代码返回值不是直接返回对象,而是这样ResponseEntity.ok().header("Connection","keep-alive").body(data)原创 2020-07-01 17:13:06 · 470 阅读 · 0 评论 -
用swagger测试springboot项目中的controller接口
1.swagger环境配置:在需要使用swagger的模块pom下添加以下配置:<dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>RELEASE&l...原创 2020-04-22 14:54:11 · 554 阅读 · 0 评论 -
spring定时器设置
SPRING定时器设置头部设置要启动的定时器 配置我的定时器 <bean id="syncJdOrderYesterdayTrigger" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean"> <...原创 2018-11-06 15:34:10 · 306 阅读 · 0 评论 -
遍历
遍历MapMap<String,String> map = getWXpayState(result);Iterator<Entry<String, String>> it = map.entrySet().iterator();while (it.hasNext()) {Entry<String, String> entry = it.ne...原创 2018-11-06 15:35:37 · 140 阅读 · 0 评论 -
XML解析成string
String data = XMLUtils.Progress_resultParseXml(xml);StringReader read = new StringReader(xml); InputSource source = new InputSource(read); SAXBuilder sb = new SAXBuilder(); org.jdom.Document doc...原创 2018-11-06 15:37:38 · 536 阅读 · 0 评论 -
unix时间戳转换成指定格式日期字符串
/*** Java将Unix时间戳转换成指定格式日期字符串* @param timestampString 时间戳 如:“1473048265”;* @param formats 要格式化的格式 默认:“yyyy-MM-dd HH:mm:ss”;** @return 返回结果 如:“2016-09-05 16:06:42”;*/public static String TimeSta...原创 2018-11-06 15:46:57 · 795 阅读 · 0 评论 -
截取两个字符串中间的字符串
public String getCoupon(String couponinfo) {String coupon = “”;String regex = “减(.*)元”;//要获取减和元中间的字符串Pattern pattern = Pattern.compile(regex);Matcher matcher = pattern.matcher(couponinfo);// 匹配类w...原创 2018-11-06 15:49:44 · 2478 阅读 · 0 评论 -
excell表数据导入出现异常空格不能删掉
EXCEL导入的奇怪空格下表列举了一些常用字符的转义序列。Unicode 字符值 转义序列 含义 类别\u0008 \b Backspace \u0009 \t 制表符 空格\u000A \n 换行 行结束符\u000B \v(参见此表后面的注释。) 垂直制表符 空格\u000C \f 换页 空格\u000D \r 回车 行结束符\u0020 空格 空格\u0022 " 双...原创 2018-11-06 15:58:58 · 861 阅读 · 0 评论 -
double类型数据转为string不要逗号不要科学计数法
//double转为string不要科学计数法,且转化后的数据不要逗号DecimalFormat decimalFormat = new DecimalFormat("#,##0.00");//格式化设置getMincond = decimalFormat.format(minCond);getMincond = getMincond.replaceAll(",", “”);...原创 2018-11-06 15:28:39 · 2181 阅读 · 0 评论