- 博客(37)
- 资源 (2)
- 收藏
- 关注
原创 elasticsearch中 refresh 和flush区别
elasticsearch中有两个比较重要的操作:refresh 和 flushrefresh操作当我们向ES发送请求的时候,我们发现es貌似可以在我们发请求的同时进行搜索。而这个实时建索引并可以被搜索的过程实际上是一次es 索引提交(commit)的过程,如果这个提交的过程直接将数据写入磁盘(fsync)必然会影响性能,所以es中设计了一种机制,即:先将index-buffer中文档(document)解析完成的segment写到filesystem cache之中,这样避免了比较损耗性能io操作,又
2021-07-26 20:29:15
219
原创 Springboot项目java -jar 启动jar包参数详解
命令实例:nohup java -Xms500m -Xmx500m -Xmn250m -Xss256k -server -XX:+HeapDumpOnOutOfMemoryError -jar $JAR_PATH/test-0.0.1-SNAPSHOT.jar --spring.profiles.active=daily -verbose:class &说明:–spring.profiles.active=daily, 这个可以在spring-boot启动中指定系统变量,多环境(测试、预发
2021-06-28 22:04:57
1476
原创 Caused by: java.lang.IllegalStateException: ContainerBase.addChild: start:
从gitee上拉下一个同事的项目,在本地运行之后报了以下错误:Caused by: java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: 无法启动组件[StandardEngine[Catalina].StandardHost[localhost].StandardContext[]]在网上找了很多资料看了,有说要修改tomcat配置文件的,在我
2021-06-09 08:35:05
1929
1
原创 Swagger加入拦截器后swagger-ui.html不显示问题及解决办法
问题:Swagger加入拦截器后swagger-ui.html不显示首先在拦截器中添加断点发现请求的URI地址@Componentpublic class LoginInterceptor implements HandlerInterceptor { public static boolean test = true; // 测试模式,关闭登陆验证 @Autowired private ObjectMapper objectMapper; @Override public b
2021-06-05 10:41:55
2085
1
原创 SSM中Swagger的简单使用
简介swagger是一个RESTFUL风格的web服务框架:主要还是写给前端看使用步骤:导入依赖: <!--springfox的核心jar包 --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <
2021-06-05 10:29:09
478
原创 maven dependency中provided和compile的区别
项目打成war包时,scope=provided的jar包,不会出现在WEB-INFO/lib目录下,而scope=compile的jar包,会放到WEB-INFO/lib目录scope=compile(默认) 对于scope=compile的情况(默认scope),也就是说这个项目在编译,测试,运行阶段都需要这个jar包在classpath中。 当我们用maveninstall生成最终的构件包ProjectABC.war后,在其下的WEB-INF/lib中,会包含我们被标注为scop.
2021-06-02 08:51:54
964
原创 —个线程两次调用start方法会出现什么情况?
Java的线程是不允许启动两次的,第二次调用必然会抛出illegalThreadStateException。这是一种运行时异常,多次调用 start 被认为是编程错误。出现这种情况还需要了解线程生命周期的不同状态:在Java5以后,线程状态被明确定义在其公共内部枚举类型java.lang.Thread.State 中,分别是:新建(NEW),表示线程被创建出来还没真正启动的状态,可以认为它是个 Java内部状态。就绪(RUNNABLE),表示该线程已经在 VM中执行,当然由于执行需要计算资源
2021-05-25 15:59:15
226
原创 synchronized底层如何实现?什么是锁的升级、降级?
synchronized底层的实现synchronized底层是由一对monitorenter/monitorexit指令实现的,Monitor 对象是同步的基本实现单元。在JDK1.6之前,Monitor的实现完全是依靠操作系统内部的互斥锁,只有无锁和重量级锁,涉及到用户态到内核态的切换,所以这个时候同步操作是一个无差别的重量级操作。在JDK1.6之后,JVM对synchronized进行了优化,提供了除无锁和重量级锁以外的两种锁:偏向锁和轻量级锁。提高了其性能锁的升级、降级所谓锁的升级、
2021-05-25 15:47:24
226
原创 并发包中的ConcurrentLinkedQueue和LinkedBlockingQueue有什么区别
标题ConcurrentLinkedQueue和LinkedBlockingQueue的区别ConcurrentLinkedQueueLinkedBlockingQueue是否有锁CAS的无锁技术有锁是否有界无界有界(容易误解)Concurrent 类型基于CAS的无锁技术,在常见的多线程访问场景,一般可以提供较高吞吐量。而 LinkedBlockingQueue 内部则是基于锁,并提供了 BlockingQueue 的等待性方法。ConcurrentLink
2021-05-25 15:39:47
112
原创 MultipartFile 和 CommonsMultipartFile的区别
点击查看源码发现MultipartFile 是接口, CommonsMultipartFile 是其实现类。区别:MultipartFile可以直接使用,而CommonsMultipartFile需要添加@RequestParam建议使用MultipartFile:一般情况都会使用接口,该接口可能会增加实现类,如此就不需要去修改代码中的类型;并且目前来说MultipartFile使用时不需要添加注解直接使用,比较方便。...
2021-05-20 22:19:04
827
原创 Maven工程的jar包下载出现了(Could not transfer artifact org.mybatis:mybatis)
Maven工程的jar包下载出现了(Could not transfer artifact org.mybatis:mybatis)问题描述:(Could not transfer artifact org.mybatis:myb)很大可能由于外网连接慢导致的,因此更换镜像源配置还有修改一些IDEA的配置解决办法:在maven的setting.xml文件中配置一下阿里云镜像,不要配置阿里的公共仓库。PS:华为云镜像最近莫名好用 <mirror> <id&
2021-05-18 22:28:29
1601
原创 Vue中的style标签的lang=“ “和scpoed属性
Vue中的style 的lang=" "和scpoed属性普通的 style 标签只支持普通的样式,如果想要启用 scss 或 less ,需要为 style 元素,设置 lang 属性vue组件中的style标签官方推荐开启 scoped属性。表示只在当前组件域中生效<style lang="scss" scoped> .login-box { border: 1px solid #DCDFE6; width: 350px; margin: 180px
2021-05-15 14:20:44
2362
原创 Windows记事本的一些问题
微软记事本的一些问题1.BOM Byte Order Mark字节顺序标记BOM头:微软记事本保存其他格式时,会在文件开头添加BOM头来识别是什么格式。可以利用其他高级软件(如EditPlus)保存。2.联通问题:把gbk编码的联通字符当成了utf-8的格式,显示错误。...
2021-05-14 18:56:10
212
原创 在Mac上安装Vue
在Mac上安装Vue1. 安装Node.js1.1利用brew安装首先要在mac上安装brewbrew 是 Mac 下的一个包管理工具,作用类似于 centos 下的 yum。brew 可以用一条命令,就可以在mac上安装、卸载、更新各种软件包,因为brew的使用方便,如今已成为使用mac电脑的程序员的必备工具如果mac没有安装brew,执行下面的命令安装/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Hom
2021-05-13 22:03:47
639
3
原创 mybatis报错:A query was run and no Result Maps were found for the Mapped Statement ‘com.
mybatis报错:A query was run and no Result Maps were found for the Mapped Statement 'com.仔细查看mybatis的配置文件,发现遗漏一个属性:**resultType斜体样式 **报错的配置是:<select id="ID" parameterType="com.xxx.xxx">正确的配置应该是:<select id="ID" parameterType="com.xxx.xxx" resultTy
2021-05-12 19:34:40
513
原创 LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443
解决git clone 出现fatal: unable to access ‘https://github.com/ring04h/wydomain.git/’: LibreSSL SSL_connect: SSL_ERROR_SYSCALL in connection to github.com:443 问题+解决过程关键在于SSL_ERROR_SYSCALL in connection to github.com:443这句话在浏览器地址栏中输入 github.com:443,发现进入的是GitH
2021-05-11 20:59:55
1288
原创 Mac IntelliJ IDEA 快捷键终极大全,速度收藏!
Mac IntelliJ IDEA 快捷键终极大全!一、Editing(编辑)二、Search/Replace(查询/替换)三、Usage Search(使用查询)四、Compile and Run(编译和运行)五、Debugging(调试)六、Navigation(导航)七、Refactoring(重构)八、VCS/Local History(版本控制/本地历史记录)九、Live Templates(动态代码模板)十、General(通用)十一、Other(一些官方文档上没有体现的
2021-05-10 17:41:55
249
原创 Uncaught SyntaxError: Invalid or unexpected token
Uncaught SyntaxError: Invalid or unexpected token问题:无效或意外的访问。原因:多加了或者少加了标点符号。解决:只能花点眼力见找。避免:还是要仔细,写代码不要追求速度,而不注意质量。
2021-05-08 19:59:38
515
原创 For input string: “4.8“
For input string: “4.8”NumberFormitException:只有纯数字的字符串才能转换成整型,不能包含任何标点符号,包括空格和小数点
2021-05-08 13:54:50
498
原创 mac 终端查看端口命令
mac 终端查看端口命令以8080端口为例,基本上8080端口出现占用的次数最高多查看端口所在线程 lsof -i:8080查看mac终端端口命令netstat -AaLlnW (相当于linux的 netstat -lntp)查看端口是否被占用 sudo lsof -i :8080结束占用端口的所有进程lsof -P | grep ':8080' | awk '{print $2}' | xargs kill -9...
2021-05-07 19:42:46
3216
原创 java.sql.SQLException:
java.sql.SQLException: Wrong number of parameters: expected 1, was given 2 Query问题原因:还是不细心呀1、参数需要的是数组,传过来的是集合,需要toArray();2、?是中文的,改成英文?即可
2021-05-07 10:18:48
925
原创 java.sql.SQLException:
java.sql.SQLException: Table ‘bookshop.tb_user’ doesn’t exist Query: select * from tb_user where username = ? Parameters: [ad]原因:直接将properties文件copy过来忘记更改数据库了
2021-05-04 13:32:09
288
原创 mac Java编程相关的环境配置
mac Java编程相关的环境配置打开终端输入vim ~/.bash_profile或Open ~/.bash_profile可以对maven、jdk、Tomcat进行配置export PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbinexport PATH=${PATH}:/usr/local/mysql/binexport PATH=$PATH:/usr/local/mysql/binexport PATH=$PATH:/usr/loc
2021-04-30 08:41:52
90
原创 VS CODE配置JDK11
VS CODE配置JDK11idea打开项目的速度有点感人,小项目或者练习还是用VS CODE来的实惠配置步骤如下:快捷键cmd+shift+p,打开setting.json(ps:不会还有人不会安装下载的吧)直接选择第一个就行2.在setting.json中配置java.home和java.configuration.runtimes3.重启VS CODE就生效了...
2021-04-27 09:20:37
732
原创 Java中map.getOrDefault()方法的使用
Java中map.getOrDefault()方法的使用Map.getOrDefault(Object key, V defaultValue)方法的作用是: 当Map集合中有这个key时,就使用这个key值; 如果没有就使用默认值defaultValue。hashMap中会经常使用到
2021-04-27 08:47:10
114
原创 Filter过滤器
Filter过滤器一、Filter过滤器是什么?二、Filter过滤器的应用1.禁止浏览器缓存动态页面(老问题,只有老浏览器会有这种问题,现在一般不会发生),比如验证码2.设置浏览器缓存一些数据,比如图片等等一些资源3.**自动登录**。简单demo,还有很多功能没实现4.过滤文明词汇(简单实现)5.内容压缩(简单实现,JSP页面,不同文本)一、Filter过滤器是什么?概念:处于客户端与服务器目标资源之间的一道过滤技术。作用:在访问目标资源文件之前,通过一系列的过滤器对请求进行修改、判断等,把不
2021-04-25 20:37:17
190
原创 监听器Listener
监听器Listener一、Listener是什么?二、简单GUI编程理解监听器:三、监听器原理四、监听器类型一、生命周期监听器:(使用较多)1.上下文监听器: ServletContextlistener接口2.Session监听器: HttpSessionListener接口(使用较少)3.request监听器: Servletrequestlistenerf接口(使用较少)二、属性变化监听器(了解)4.ServletContext属性变化监听器5.session属性变化监听器6.request属性变化监
2021-04-25 20:11:41
236
原创 文件的上传下载
文件的上传下载上传文件上传下载的工具类package com.hs.util;import java.io.File;import java.util.HashMap;import java.util.UUID;/** * @author hs * @date 2021年04月24日 上午10:17 */public class FileUtils { //生成新的文件名 public static String makeFileName(String oldFil
2021-04-24 21:27:14
102
原创 面试题
Java面试题(日常更新)文章目录Java面试题(日常更新)前言一、java中String、StringBuffer、StringBuilder的区别1.可变与不可变2.是否多线程安全**3.为什么尽量用StringBuilder和StringBuffe**4.使用StringBuilder与StringBuffer的不同二、int和Integer的不同三、Java如何保证集合是线程安全的ConcurrentHashMap如何实现高效地线程安全总结前言每日一个面试题一、java中String、Str
2021-04-24 21:24:24
75
1
原创 安装 Homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"将以上命令粘贴至终端。
2019-06-05 09:13:15
141
翻译 Mac用vim简单编写c
Mac用vim简单编写c在macOS10.10以后,系统中已经内置了vim工具。如果你的系统没有vim软件,可以使用命令brew install vim来安装,brew是包管理器,用于管理Mac电脑上的开源软件。brew的安装可以查看以前的文章。运行vim的方法是在命令行状态键入命令vim 要编辑的文本文件名。vim默认不支持鼠标,具有3种工作状态,分别是“光标状态”、“输入状态”、“命令状...
2019-06-02 12:29:56
1070
转载 解决mac耳机没有声音了
一、选择正确音频设备法如果在插入耳机或将 Mac 连接到外部音频设备后听不到任何声音,那你可能遇到了 macOS 中最为常见的音频错误之一。虽然确切的原因尚不清楚,但有时 Mac 在添加或插入新音频设备时会选择到错误的音频输出设备。1.点击「系统偏好设置」—选择「声音」—点击「输出」选项卡2.为您的音频选择正确的输出设备3.如果要播放声音的设备已被选中,请在选择其他音频设备后再重新选回您...
2019-03-13 18:06:10
24513
1
转载 mac 配置Clion C++环境
1.首先我们可以下载homebrew在命令行输入:/usr/bin/ruby -e “$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)”2.然后我们需要下载gcc的编译器brew install gcc如果你的电脑已经有gcc编译器的话,那么这句命令会显示出你的编译器文件所在的位...
2019-02-28 10:58:54
16461
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人