- 博客(42)
- 收藏
- 关注
原创 poi操作word docx文档内容替换,解决占位符被Run分割
param的k为word模板中要替换的占位符,v为要替换成的文字本文的占位符为${} 可自行修改替换//替换word中的占位符 private void replaceWordText(List<XWPFParagraph> paragraphList, Map<String, Object> param) { for (XWPFParagraph paragraph : paragraphList) { // 遍历获取段落中
2022-05-18 18:48:18
3860
转载 CAS及CAS自旋
1. CAS简介比较并交换(compare and swap, CAS),是原子操作的一种。在多线程没有锁的状态下,可以保证多个线程对同一个值的更新。CAS可用于在多线程编程中实现不被打断的数据交换操作,从而避免多线程同时改写某一数据时由于执行顺序不确定性以及中断的不可预知性,产生的数据不一致问题。该操作通过将内存中的值与指定数据进行比较,当数值一样时将内存中的数据替换为新的值。2. CAS的特点1、CAS结合volatile可以实现无锁并发,适用于线程数少,多核CPU场景下。线程数不要超过CP
2022-05-13 16:31:49
4239
原创 layui复选框,设置部分可选
话不多说直接上代码关键代码是,table的done回调和table.on复选框监听layui.use(['table', 'util'], function () { var table = layui.table; tableObj = table.render({ elem: '#testId', height: 460, page: true, .
2022-04-14 17:44:31
1468
原创 java代码块执行顺序
目录 静态代码块 格式 执行时机 静态代码块的作用 静态代码块不能存在任何方法体中 静态代码块不能访问普通变量 构造代码块 格式 执行时机 构造代码块的作用 构造函数 普通代码块 执行顺序 父类和子类执行顺序 1.静态代码块1.1.格式在java类中(方法中不能存在静态代码块)使用static关键字和{}声明的代码块:public class CodeBlock { static{
2021-12-18 10:30:37
1040
原创 java操作es(elasticsearch)使用scroll取出全部数据
public void scrollDemo() { //transportClient配置自行处理此处不做演示 SearchResponse scrollResp = transportClient.prepareSearch("order_stage")//指定index .setTypes("order")//指定type//.addSort(FieldSortBuilder.DOC_FIELD_NAME, SortOrder.ASC...
2021-07-26 12:09:58
3826
原创 java双重校验锁(DCL)
获取线程安全的单例模式请看文末最后一段代码先简单说下java对象的创建过程:1.在堆内存中为对象分配内存空间2.执行对象的构造方法初始化对象3.对象引用指向堆内存中分配的内存地址但是当我们编译的时候,编译器在生成汇编代码时候会对流程顺序进行优化(重排序),优化后的执行顺序不是我们可以控制的。重排序后在单线程的情况下是可以保证最后的结果是一致的单线程里2和3虽然被重排序了,但是不影响串行语义以”懒汉式“单例模式为例,多线程情况下2和3重排序后会导致出现多个对象的问题。问题例举
2021-01-13 14:05:00
2562
原创 java8新日期类常用操作
1.获取当前日期 @Test public void demo1(){ //获取当前年月日 LocalDate today = LocalDate.now(); System.out.println("当前的日期年月日:" + today); //获取当前年月日时分秒 LocalDateTime localDateTime = LocalDateTime.now(); System.out.p
2021-01-11 20:27:01
1853
原创 layui设置select下拉列表展示框的宽度
添加样式,可以放到head里面<style type="text/css"> input.layui-input.layui-unselect {width:200px}</style>
2020-06-23 18:28:39
6724
原创 idea新建的springBoot项目,自动生成的入口类中提示错误Cannot resolve symbol '@springbootapplication'
或者项目入口类和springBoot配置文件无法识别将模块从maven移除重新添加到maven中
2020-04-18 11:37:54
316
原创 阿里easyexcel读取excel文件
maven依赖,内部依赖poi,注意处理冲突<!-- alibaba/easyexcel --><dependency> <groupId>com.alibaba</groupId> <artifactId>easyexcel</artifactId> <version>2.0.5</...
2020-01-16 19:49:55
1401
原创 java反射使spring依赖注入和AOP失效
因为我们是手动通过反射获得的Bean的实例,这种方式相当于我们new Bean(),此Bean的实例已完全脱离Spring容器,所以Spirng无法感知它的存在,所以调用类中的依赖注入类和AOP会失效解决方法:以下均为局部核心代码,需要根据自己场景相应调整1:WebApplicationContext wac = ContextLoader.getCurrentWebApplicat...
2019-12-31 11:30:21
834
转载 ExecutorService和ExecutorCompletionService多线程有返回值任务的区别
通常Java线程池执行的任务有两种类型,一种是不带返回值的Runnable, 另一种是带返回值的Callable。对于不带返回值的任务通常我们不太关注任务是否执行结束以及结束后应该做做些什么,我们将任务提交给线程池, 然后顾自己干别的事情。带返回值的任务执行结果通常受到当前任务的依赖,任务提交给线程池后还需要等待任务的返回。对于任务结果我们会有不同的需求,有时候当前任务依赖所有提交给线程池...
2019-09-21 19:08:32
640
2
原创 使用Idea进行java应用的远程调试(Remote debugging)
本文可以解决如下两个问题:1.如何处理和调试那些只发生在生产环境(或其他远程环境)而本地开发环境可能没办法重现的“问题”。2.只有一个可以部署的war/jar包,只有class没有java源代码,而应用部署在本地/远程后,如何去调试解决方案:部署远程调试远程调试包括两个步骤:启动Tomcat启用远程调试 用 IDE (这里用IntelliJ IDEA)要能够调试远程Tomcat...
2019-08-13 19:52:26
3389
原创 持续集成Continuous Integration(CI)和持续交付Continuous Delivery(CD)
在软件开发中经常会提到持续集成Continuous Integration(CI)和持续交付Continuous Delivery(CD)这几个术语。但它们真正的意思是什么呢?在谈论软件开发时,经常会提到持续集成Continuous Integration(CI)和持续交付Continuous Delivery(CD)这几个术语。但它们真正的意思是什么呢?在本文中,我将解释这些和相关术语背后的...
2019-08-06 16:18:44
1146
原创 java代码实现:n个集合每次从每个集合里面取出一个元素组成一个字符串,列出所有组合
List集合中有多个List集合,每个集合中存储多个字符串,每次从每个集合里面取出一个元素组成一个字符串使用递归实现下面直接上代码:public class Test { public static void main(String[] args) { List<List<String>> strings = new ArrayList...
2019-08-04 16:24:21
2681
原创 java中PO,BO,VO等各种O区别
PO(bean,entity等命名):persistant object持久对象,数据库表中的记录在java对象中的显示状态最形象的理解就是一个PO就是数据库中的一条记录。好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。BO(service,manager,business等命名):business object业务对象主要作用是把业务逻辑封装为一个对象。这个对象可...
2019-07-25 18:13:51
1033
原创 mac破解软件后运行提示“已经损坏,无法打开,移动废纸篓”
或者由于不是在App Store中下载,无法安装等等!如果你是10.1.2以下的系统,直接修改系统配置:系统偏好设置... -> 安全性与隐私。修改为任何来源即可!如果你是10.12及其以上系统,就要打开终端,执行命令完成设置!终端输入以下代码需要输入密码sudo spctl --master-disable如上图所示修改完成...
2019-07-17 12:13:44
925
原创 Java注解@PostConstruct和@PreDestory
1.@PostConstruct说明 被@PostConstruct修饰的方法会在服务器加载Servlet的时候运行,并且只会被服务器调用一次,类似于Servlet的inti()方法。被@PostConstruct修饰的方法会在构造函数之后,init()方法之前运行。2.@PreDestory说明 被@PreDestory修饰的方法会在服务器卸载Servlet的时候运行,并且只会被服务器调用一次,类似于Servlet的destroy()方法。被@PreDestory修饰的方法会在...
2019-07-10 11:21:34
516
2
原创 maven打包时跳过test测试
命令方式:mvn install -DskipTests或者mvn install -Dmaven.test.skip=trueIDEA方式:点击闪电符号的按钮即可跳过test
2019-07-05 18:12:34
6942
原创 maven命令 mvn clean package, mvn clean install ,mvn clean deploy区别
mvn clean package依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)等7个阶段。mvn clean install依次执行了clean、resources、compile、testResources、testCompile、test、jar(打包)、install等8个阶段。mvn clean ...
2019-07-05 17:22:44
5506
原创 git push 后产生多余的日志信息
在使用 Git 的进行代码版本控制的时候,往往会发现在 log 中出现 "Merge branch 'master' of ..." 。日志中记录的一般为开发过程中对代码的改动信息,如果出现过多例如上述描述的信息会造成日志的污染。产生原因分析当多人合作开发一个项目时,本地仓库落后于远程仓库是一个非常正常的事情,可参考下图。 A-B-C(master) \ ...
2019-07-05 11:53:31
1608
原创 调用dubbo接口报错,java.net.ConnectException,java.nio.channels.ClosedChannelException: null
调用dubbo接口报错,java.net.ConnectException: Connection refused: no further informationjava.nio.channels.ClosedChannelException: null错误信息:解决方案:VM options :-Djava.net.preferIPv4Stack=true 不要有空格...
2019-07-03 18:37:18
1963
原创 Spring Cloud 分布式开发mapper映射异常:Field typeMapper in xxx required a bean of type 'xxx'
Spring Cloud 分布式开发mapper映射异常,出现如下图所示异常:解决方案;SpringBoot主配置上添加mapper扫描,如下图:检查SpringBoot的yml配置文件中,整合mybatis时指定的mapper映射配置文件的位置是否正确对应检查调用mapper的类中是否正确纳入IOC容器 ...
2019-02-22 21:16:56
956
原创 spring cloud feign远程调用接口 异常:Load balancer does not have available server for client:xxx
异常如下图:解决方案:application.yml配置文件添加application:name (name的值为远程调用接口所属的服务模块名)instance:appname:为spring cloud注册中心显示的名字注:若没有配置instance:appname则注册中心显示application:name的名字若instance:appname和applicat...
2019-02-21 15:33:07
42588
8
原创 阿里云OSS上传错误:java.lang.ClassNotFoundException:org.apache.http.ssl.TrustStrategy
问题产生的原因就是jar包版本问题,阿里的SDK引入的pom中依赖的httpclient和httpcore版本高于当前项目中已经设置的版本。解决: 删除低版本后,更新下项目。阿里云oss依赖 <dependency> <groupId>com.aliyun.oss</groupId> <artifac...
2019-02-18 13:47:07
2134
原创 上传阿里云对象存储oss报错:java.security.NoSuchAlgorithmException
java上传阿里云对象存储oss报错:java.security.NoSuchAlgorithmException:Algorithm HmacSHA1 not available解决方法:修改项目 jdk指向路径:如下图,由原先的D:\Program Files\Java\jdk1.8.0_181 改为 D:\Program Files\Java\jre1.8.0_181...
2019-02-18 10:33:57
641
原创 web连接mysql时报错:Establishing SSL connection without server's identity verification is not recommended.
WEB应用中连接mysql数据库时后台出现如下提示:Establishing SSL connection without server's identity verification is not recommended. According to MySQL 5.5.45+, 5.6.26+ and 5.7.6+ requirements SSL connection must be es...
2019-02-17 10:02:49
371
原创 MySQL的JDBC连接URL参数
例:jdbc:mysql://192.168.137.3:3306/test?useSSL=false&useUnicode=true&characterEncoding=UTF-8列举几个重要的参数:参数名称 参数说明 缺省值 最低版本要求 user 数据库用户名(用于连接数据库) 所有版本 password 用户密码...
2019-02-17 09:52:15
3895
转载 python容器(列表、元组、字典、集合)的应用
将列表当做堆栈使用列表方法使得列表可以很方便的作为一个堆栈来使用,堆栈作为特定的数据结构,最先进入的元素最后一个被释放(后进先出)。用 append() 方法可以把一个元素添加到堆栈顶。用不指定索引的 pop() 方法可以把一个元素从堆栈顶释放出来。例如:>>> stack = [3, 4, 5]>>> stack.append(6)>>...
2018-08-16 19:59:52
260
原创 python运算符
1、算术运算符 加:‘ + ’,减:‘ - ’,乘:‘ * ’,除:‘ / ’(结果为浮点型),整除:‘ // ’(结果为整型), 幂:‘ ** ’,取模:‘ % ’(返回除法的余数)2、比较运算符 大于:‘ > ’, 小于:‘ < ’,等于:‘ == ’,不等于:‘ != ’,大于等于:‘ >= ’,小于等于:‘ <= ’3、赋值运算...
2018-08-14 19:56:44
151
原创 python打印空心正方形
第一种方法:单for循环#定义正方形边长rows = 5#for循环打印for x in range(rows): #if判断,筛选第一行与最后一行 if x == 0 or x == rows-1: print(' *' *rows) #else筛选打印剩余行数 else : print(' *' + ' '* (rows-2) + ' *')第二...
2018-08-07 14:34:35
12727
2
原创 python打印实心正方形
第一种方法:单for循环#定义正方形边长rows = 5#for循环打印for x in range(rows): print(' *' * rows)第二种方法:双for循环嵌套#键盘输入正方形边长,因为input()函数获取的是字符串数据,#所以要调用int()函数将其转化为整数,然后赋值给变量xx = int(input('请输入正方形边长:'))#通过if语...
2018-08-06 23:50:40
10185
原创 python使用循环求出0-100所有偶数的和
#创建一个变量x初始化为2x = 2#创建一个变量sum初始化为0sum = 0#使用while循环求出0-100所有偶数的和while x <= 100 : sum += x x += 2#打印输出求和结果print(sum) ...
2018-08-05 21:03:09
32020
原创 python使用for循环计算0-100的整数的和
#创建一个变量初始化为0sum = 0#调用range()函数创建一个有序数列并通过for循环遍历数列for n in range (101) : #将遍历的数列元素求和 sum += n #打印输出求和结果print(sum) ...
2018-08-05 20:43:35
38634
3
原创 python打印数字0-100
range()函数可以生成一个有序数列,可用list()函数转化成listfor m in range (101) : #将range()函数生成的数列分别赋值给m print(m)通过list()函数转化range()函数生成的有序数列for m in list(range (101)) : print(m) ...
2018-08-05 20:19:33
15191
原创 python容器
1. 列表 (list):是一种有序的集合,可以添加和删除类表中的元素 。占用内存小,但随着元素的增多会减慢插入和查找速度list.append(x) 把一个元素添加到列表的结尾,相当于 a[len(a):] = [x]。 list.extend(L) 通过添加指定列表的所有元素来扩充列表,相当于 a[len(a):] = L。 list.insert(i, x) ...
2018-08-05 16:44:44
382
原创 python的数据类型
1.整数(int):可以是任意整数,包括负整数2.布尔型(bool):即true,false3.浮点型(float):即小数,可以使用科学计数法表示,例如:2.45x10^5 ,在python中表示法为:2.45e5, 0.0025在python 表示为:2.5e-34.字符串:python中字符串用 ' ' 或 " " 括起来表示,转义字符为" \ " ,\t 制表符 ,\...
2018-08-05 10:38:17
253
原创 python用“\”来连接多行较长的语句
python中较长的语句如果一行写不完可以用“\”来连接多行语句在(),{},[] 中无需用“\”连接print('hello world,\I am \KangKang')s = [1,2,3, 4,5,6, 7,8,9]print(s)运行结果如下hello world,I am KangKang[1, 2, 3, 4, 5, 6, 7, 8, 9] ...
2018-08-04 22:13:20
15315
原创 python注释
python用“#”注释单行文本多行注释可以用 ''' 或 """ 或多个 # 号开头#这是单行注释print('hello')'''这是第一种多行注释的方法'''print('world')"""这是第二种多行注释的方法"""print('I am KangKang')#这是第三种#多行注释#的方法 ...
2018-08-04 22:03:24
740
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人