- 博客(45)
- 收藏
- 关注
原创 maven打包报错A required class was missing while executing net.revelc.code.formatter:formatter-maven-plug
maven打包报错A required class was missing while executing net.revelc.code.formatter:formatter-maven-plugin:2.10.0:format: org/apache/commons/collections/FastHashMap。Maven plugin里面缺少FastHashMap所在jar包,需要在对应的plugin下添加dependencies。在对应的plugin配置下粘贴。
2023-12-02 12:59:05 997
原创 Chrome插件开发
当用户点击这个选项时,会将选中的文本发送到后端API,并将返回的解释显示在一个弹出框中。打开Chrome,进入chrome://extensions/页面,开启"开发者模式",然后点击"加载已解压的扩展程序",选择你创建的myExtension文件夹。mediaType: 如果点击的元素是媒体元素,这个字段表示其类型,可能的值有"image"、"video"、"audio"。4. `highlighted`: 如果标签页被高亮显示(例如,它是当前活动的标签页或者被选中的标签页),这个字段为true。
2023-09-11 20:04:42 512
原创 Goland报错Found several packages [http, main] in ‘/usr/local/go/src/net/http;/usr/local/go/src/net/ht
这是一个 Goland 的版本问题,主要是由于 golang 语言的版本太高了,使用的还是老版本的 Goland,更新一下 Goland即可。我的Golang版本是1.21.0,Goland版本是20年的,更新成23年新版解决。使用Goland IDE,import包的时候报错,包名显示红色下划线,提示。
2023-08-29 16:25:50 1401
原创 MyBatis NPE报错,PersistenceException,错误堆栈ObjectPropertyAccessor.getProperty
参考该bug的issues:https://github.com/mybatis/mybatis-3/issues/199。这个是mybatis的一个BUG,解决办法:MyBatis升级到3.3.0版本以上。
2023-08-28 17:08:57 322
原创 JDK低版本导致SunCertPathBuilderException unable to find valid certification path to requested target 证书异常
与SRE开会沟通,SRE提起说之前处理过类似的问题,原因是因为jdk8的版本过低,升级jdk8的子版本,问题解决,如何查看网站证书:https://blog.csdn.net/ever_peng/article/details/93720072。1.服务器证书过新,jdk识别不了:比如新增的加密算法、不同的证书格式等,会直接阻塞。系统调用外部Https接口,外部接口提供方更换了网站证书,导致我们(https客户端)报错。2.服务器证书过旧,jdk识别不了,但是jdk一般会向下兼容。
2023-04-05 21:27:13 366
转载 org.apache.ibatis.ognl.NoSuchPropertyException问题解决
org.apache.ibatis.ognl.NoSuchPropertyException问题解决
2022-12-24 17:54:52 2417
原创 SAXParseException/SAXParseException/XRRuntimeException报错解决
SAXParseException/SAXParseException/XRRuntimeException 报错解决
2022-10-19 19:59:03 2675 1
原创 application.xml加载多个properties 文件 报错 “Could not resolve placeholder ‘xxx‘ in string value “${xxx}“
确认下是否在context的配置中配置了对应properties文件的路径(location),例如<context:property-placeholder location="classpath:database.properties,classpath:config.properties,classpath:mq.properties"/>
2021-11-21 13:54:19 1021
原创 使用Gson序列化对象将属性值中“=”转为“\u003d”问题及解决
问题场景:发现json序列化之后,本来预期json ky的值为{"url":"xxx.com?param=xxx"},结果打印日志发现变成了{"url":"xxx.com?param\u003dxxx"},且代码本身并没有对“=”进行decode操作,经过排除法发现是gson序列化问题,上网搜索得知,Gson默认是进行HTML ESCAPE,也就是转码,因此对象中有=时,Gson就会把=转码;解决方案、1.gson设置不用HTML ESCAPE2.使用fastjsonpublic st.
2021-11-21 13:51:25 3258
原创 阿里云ECS打包上传并运行Springboot服务
1.将本地项目通过maven package命令将项目打成jar包2.将jar包上传到阿里云服务器scp /你的项目路径/target/xxx.jar root@你的阿里云ip地址:/你的阿里云项目路径3.登录你的阿里云机器,用 java -jar xxx.jar 命令启动但是这个命令只能让java进程在前台运行,退出前台则进程停止如果想让进程在后台运行可以1. java -jar xxx.jar(启动) 2.ctrl+z(将一个前台执行的进程放到后台并暂停执行) 3. bg(将一个在后
2021-08-08 14:20:08 341
原创 MyBatis动态代理
先看一个MyBatis的使用demo @Resource SqlSessionFactory sqlSessionFactory; @RequestMapping(value = "/query", method = RequestMethod.GET) public String query(@RequestParam("name") String name) { //获取sqlSession SqlSession sqlSession
2020-10-09 17:22:02 177 1
原创 Spring MVC处理文件上传之MultipartFile
API接口Demo:package com.test.server.spring;import lombok.extern.slf4j.Slf4j;import org.apache.commons.lang3.StringUtils;import org.apache.tomcat.util.http.fileupload.IOUtils;import org.springframework.web.bind.annotation.*;import org.springframework
2020-08-30 18:41:46 860
原创 Service Mesh
Service Mesh是什么:Service Mesh是一个基础设施,处理服务间通信,提供服务间通信的各种功能(服务路由,熔断降级,监控上报等)。Service Mesh诞生的背景:1.微服务之间的调用关系越来越复杂,服务治理也越来越困难2.微服务之间存在跨语言调用场景,现有RPC框架支持多语言的情景成本较高(比如Thrift为每种语言都实现了相应的客户端,Dubbo干脆不支持多语言)3.微服务框架的客户端逻辑越来愈重4.容器技术的不断普及Service Mesh解决的问题:
2020-05-09 21:15:00 482
原创 SQL执行报错The MySQL server is running with the read-only
The MySQL server is running with the--read-only option so it cannot execute this statement看下global设置 select @@read_only; 如果结果是1 这种错误意味着这个数据库是只读数据库。不能进行DML、增删改等语句可能的你连接到了从库,或者,如果你有权限的话修改@@read_only的值为0...
2020-05-09 10:58:49 3075
原创 FreeMarker语法用法总结
FreeMarker是一种模板引擎,通过定义的模板和数据来生成文本1.定义并使用一个变量,注意布尔值后面必须要跟 “?c”:<#assign num=10>${num}<#assign name="字符串">${name}<#assign b=true>${b?c}<#assign map={"name":"张三","age":...
2020-04-19 14:41:10 1170
原创 实现PropertyPlaceholderConfigurer在Spring中静态的获取property配置
PropertyPlaceholderConfigurer 是个BeanFactoryPostProcessor实现,可以实现在XML配置文件中通过占位符,引入外部属性文件(properties文件)PropertyPlaceholderConfigurer实现BeanFactoryPostProcessor源码:public void postProcessBeanFactory...
2020-04-18 11:17:56 383
原创 java输出csv文件
使用CSVPrinter类,apache CSVPrinter类官方API文档:官网API样例:1.引入POM依赖 <dependency> <groupId>org.apache.commons</groupId> <artifactId>commons-csv<...
2020-04-06 12:57:12 1281
原创 Error creating bean with name ‘OptionalValidatorFactor‘ 报错解决
启动服务失败发现日志报错:[ERROR] main DispatcherServlet Context initialization failedorg.springframework.beans.factory.BeanCreationException: Error creating bean with name 'org.springframework.validation.bea...
2020-02-26 22:27:11 475
原创 哲学家进餐问题解决思路 JAVA实现
package com.test.server.current;import java.util.concurrent.ArrayBlockingQueue;import java.util.concurrent.ExecutorService;import java.util.concurrent.ThreadPoolExecutor;import java.util.concurr...
2019-07-21 19:33:10 764 2
原创 编译原理-词法分析 之 正则表达式、NFA与DFA
1.正则表达式:正则表达式是一种更紧凑的正则文法,正则表达式、正则文法、NFA、DFA他们存在一一对应关系2.什么是DFA:DFA有如下几个部分构成,初始状态、终态、输入字母表(可以理解成合法的输入)、状态集、以及状态转换表(状态集与合法输入笛卡尔积而成,每一个状态接收到一个合法的输入后都会得到一个唯一确定的状态)。什么是NFA:基本与DFA相同,不同点是,NFA的状态转换规则,一个状态接收...
2019-07-20 22:13:52 1947
原创 微信小程序开发(2 wxml)
一.按钮(button)组建点击事件与传值 <button class='login_button' id='{{item.id}}' data-time='{{item.createTimeStr}}' data-name='{{item.passbookName}}' bindtap='useAction'>立即使用</button>1.bindTap,点按事...
2019-06-02 15:53:17 157
原创 微信小程序开发(1 基本)
一.Page对象生命周期1.data对象:页面初始数据,可以在里面定义一些wxml里展示的对象,可以用setData方法为其赋值,当然也可以取值 赋值(that是Page对象):2.onload方法:页面初次加载时调用的方法,入参options会携带有跳转到此页面时的所带参数,例如:可以按红框中所示获取options中前置页面传来的对象3.onshow方法:每次页...
2019-06-02 15:12:21 237
原创 Java设计模式-责任链模式
责任链模式:一、特点:1.将请求和处理分离,请求不知道是谁处理的,而各个处理器并不需要知道处理流程的全貌。2.可按事件先后灵活添加处理顺序。二、实现1.规定一个顶级的抽象执行器接口,该接口应该具有责任链传递和处理事件的方法。2.执行器是有序的,在每个执行器执行结束后,应执行下一个执行器的处理方法,直至结束。3.参考netty的channlePipe,将一组执行器封装在一个执行器pip...
2019-04-07 11:41:39 88
原创 一致性哈希
传统哈希的问题:1.节点动态改变:例如,原先的hash规则是key%4,增加节点后规则变为key%5,为保证存量数据可以背准确映射,需对其进行数据迁移(rebalance)又例如,原先的hash规则是key%4,删除一个节点后规则变为key%3,导致缓存击穿缓存雪崩一致性哈希:节点动态增加/改变造成的数据迁移/缓存穿透的成本最小1.原理:我们将节点映射在0-2^32的环上,对请求进行...
2019-04-07 11:37:22 121
原创 SpringBoot+ElasticSearch小结
首先先安装并启动ElasticSearch,别忘了按装ik分词器。如何查看ElasticSearch是否启动,Ik分词器是否安装:ES安装启动教程:IK分词器安装启动教程:1.ElasticSearch的HTTP默认端口是9200,我们可以postman get请求查看2.我们可以用Http请求ES接口来确认Ik分词器是否安装完成3.用@Configuration创建ES客...
2019-02-05 12:33:36 277
原创 SpringBoot 实现token登录验证
具体步骤:1.登陆拦截器继承HandlerInterception接口,拦截Http请求2.重写preHandler方法,返回类型为布尔型,true代表放行,false代表不放行,获取Http请求的请求头,验证token是否存在、有效,如果有效则将token放入线程本地变量保管3.重写afterCompletion方法 清除线程本地变量里的token4.实现,重写addHandle...
2018-10-11 11:02:29 9368 1
原创 对线程本地变量的理解,将登录信息存放到线程本地变量中
在获取用户的登录信息时,我们一般从ThreadLocalMap中获取,ThreadLocalMap中存放的变量就是线程本地的变量,是线程隔离的,使用线程本地变量而非局部变量的原因:方便我们对这些变量统一管理,免去频繁地传参。ThreadLocal 原理:实质上,线程本地变量并不是存储在ThreadLocal中,而是存放在ThreadLocalMap中,ThreadLocalMap是...
2018-10-08 12:14:00 1786
原创 mybatis使用@Insert @SelectKey 执行插入语句时获得主键自增长值
@Insert(" insert into table(c1,c2) " + " values (#{c1},#{c2}) ")@SelectKey(resultType = long.class,keyColumn = "id",before = false,statement = "SELECT LAST_INSERT_ID() AS id",keyProperty ...
2018-07-12 10:28:30 2257
原创 替换空格(时间空间复杂度最低)
请实现一个函数,将一个字符串中的空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 思路:在同一串预留好空间的字符串(或数组)从后向前查找找替换,减少字符移动笔记收藏Scanner sca=new Scanner(System.in); StringBuffer str=new StringBuffer(sca.nextL...
2018-05-30 21:22:01 262
原创 电路布线问题BFS
import java.util.*;import java.util.concurrent.LinkedBlockingQueue;class Node{ int var;//是否走得通,访问过即走不通 int x; int y; int step=0;//记录步数 }public class Main{ public static boolean isInmap(int...
2018-05-27 23:01:45 308
原创 导弹拦截问题-动态规划
4某国为了防御敌国的导弹袭击,发展出一种导弹拦截系统。但是这种导弹拦截系统有一个缺陷:虽然它的第一发炮弹能够到达任意的高度,但是以后每一发炮弹都不能高于前一发的高度。某天,雷达捕捉到敌国的导弹来袭。由于该系统还在试用阶段,所以只有一套系统,因此有可能不能拦截所有的导弹。输入格式 Input Format 输入导弹依次飞来的高度(导弹数最多不超过20枚,雷达给出的高度数据是不大于30000的正整数)...
2018-05-25 22:42:03 2734
原创 DFS最大相邻的的0的个数(4个方向相邻)
最近DFS真的做烦了。import java.util.ArrayList;import java.util.Scanner;class Node{ int var; boolean isleftvisit=false; boolean isupvisit=false; boolean isrightvisit=false; boolean isdownvisit=false;...
2018-05-22 14:01:21 328
原创 回溯法 n个数从中选取若干个组成m
import java.util.*;public class Main{ //深搜 n个数从中选取若干个组成mpublic static int need;public static boolean flag=false;//是否找到public static void DFS(int t,int[] a,int sum){if(t>=a.length)return;for(int i...
2018-05-22 13:56:56 1139
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人