- 博客(44)
- 资源 (1)
- 收藏
- 关注
原创 docker-compose version is obsolete
启动时候发现有 version is obsolete警告。如果更新了docker或者docker-desktop。删除yml第一行的version字段。
2024-07-04 17:06:37
1020
原创 报错scp: .: not a regular file
如题,报错命令如下:scp /app/kafka_2.13-2.6.0.tgz root@192.168.1.21: /app/错误点::与 / 直接不能有空格
2020-08-26 14:44:02
576
2
原创 String类型的常量相加与变量相加
String类型,多个String类型相加,如果是常量相加,编译完就会优化出最佳结果,如d,如果是变量,就会创建Stringbuilder对象拼接,如cTest.javaString a = "1";String b = "2";String c = a + b;String d = "1" + "2";通过查看编译后的class文件可知Test.classString a = "1";String b = "2";String c = (new StringBulider()).ap
2020-08-20 16:23:23
976
原创 git项目合并的小坑
本地创建的项目加入了放到了gitee管理,然后需要提交到gitlab上:先拉取gitlab项目将本地项目考入gitlab项目,同时记得删除 .git 文件夹,不然容易出现冲突。正常情况下,新项目考入,version control会将每一个文件都展示出来,如果出现考入的项目是一个文件夹时,就是没有删除考入文件中的 .git一山不容二虎...
2020-08-20 16:17:50
360
原创 LinkedBlockingQueue oom问题以及退出阻塞
如果不定义长度,使用默认长度,弹出线程death,放入线程又不断put时,容易出现oomtake()和put()方法都是阻塞方法。poll()弹出顶端元素,为空时返回nullpeek()返回队顶的元素,但是不弹出,为空返回nullsize()方法会遍历整个队列,时间复杂度是O(n),所以优先推荐isEmpty()当限定队列长度时,如果取数据线程死亡,当队列满了,put就会阻塞,可以在取数据线程死亡时,用put所在线程对象调用interrupt()【Thread.currentThread().i
2020-08-20 16:13:03
2559
3
原创 springboot日志使用log4j
首先要了解日志相关概念日志门面JCLSLF4jJboss-logging日志实现框架log4jlog4j2JULLogbackspringboot默认使用的是SLF4j + logback的日志,将实现改为log4j如下:修改pom<!--排除spring-boot-starter中的logging依赖,加入log4j依赖--><dependency> <groupId>org.springframework.boot
2020-08-20 16:06:32
431
原创 使用mysql-binlog-connector报错Failed to determine binlog filename/position
使用mysql-binlog-connector进行数据同步时报错,是因为数据库没有开启binlog完。。。
2020-08-20 16:00:31
1618
原创 ext.js中combobox添加默认选中(亲测可用)
ext.js中combobox添加默认选中首先,定义的store如下: var typeData=[ ["0","间隔重复"], ["1","每天执行"], ["2","每周执行"], ["3","每月执行"] ]; var typeProxy=new Ext.data.MemoryProxy(typeData); //下拉列表的数据结构 var typeRecord=Ext.data.Record.
2020-08-14 17:22:10
1422
原创 springboot获取数组类型的配置文件
获取配置数组类型的配置文件配置文件如下:socket.socketDTOList[0].kafkaTopic=Asocket.socketDTOList[0].socketPort=8001socket.socketDTOList[1].kafkaTopic=Bsocket.socketDTOList[1].socketPort=8002socket.socketDTOList[2].kafkaTopic=Csocket.socketDTOList[2].socketPort=8003要想
2020-08-14 17:19:09
2235
原创 java项目在Linux中启动报错:找不到或无法加载主类
找不到或无法加载主类XXX报错时我的项目jar包的路径如下:BOOT-INFMETA-INForg而项目的class文件在BOOT-INF中的class路径中,所以Linux中使用脚本启动的时候,主类路径是从com开始找的。现在包路径中在com外边又包了两层,所以会出现主类找不到的错误。造成这个的罪魁祸首就是<plugin> <groupId>org.springframework.boot</groupId> <artifa
2020-08-14 17:14:17
3578
原创 mybatis 报错了 org.apache.ibatis.binding.BindingException: Invalid bound statement (not found): XXXDao
连续犯了两次这种错,打自己;原因就是mybatis的mapper中,namespace和dao对不上。!!!!!记
2020-07-10 15:00:03
153
原创 mybatis报错There is no getter for property named ‘sql‘ in ‘class java.lang.String以及查不到数据
今天拼接SQL之后,使用mybatis进行查询,出现了题目中的错误,经过排查,发现如下坑:1、明明有数据,就是查不到首先使用动态拼接的SQL,mapper中要使用${}来注入,如果使用#,会出现查不到数据的情况,2、报错There is no getter for property named ‘sql’ in 'class java.lang.String在dao中,方法参数需要添加@param注解,否则会出现题目中错误,(这个是我个人项目解决方法,仅供参考)...
2020-07-10 14:57:08
1002
原创 centOS ping不通宿主机最优解
环境:首先桥接模式下设置静态IP,要和宿主机在同一个网段。桥接模式下虚拟机ping不通主机,但是可以ping百度等,主机也可以ping到虚拟机。这是因为主机没有关闭防火墙。但是关闭防火墙很危险。这时就可以单独打开虚拟机的入站规则即可相互ping通。避免了关闭防火墙的风险。以下为步骤:1、打开控制面板2、打开Windows防火墙3、点击高级设置4、入站规则找到虚拟机相...
2020-04-14 17:57:36
1472
原创 docker中创建ftp服务器并使用kettle读取
这位老哥的安装ftp已经写得很详细了,借用他的部分文章传送门查询到ftp的docker镜像docker search vsftpd我们选择第一个拉取docker pull fauria/vsftpd 然后执行如下命令docker run -d -v /app/ftp:/home/vsftpd \> -p 20:20 -p 21:21 -p 211...
2020-01-03 11:27:58
422
原创 排雷!springboot同时接受https和http方法与坑
感谢简书嗨_等风来文章予以参考,项目需要支持http和https两种协议,网上百度一波,大家讲的都差不多,但在我使用中也走了一点点弯路,我总结一下这次的使用以及我遇到的问题,希望可以帮助和我一样的萌新一:依赖方面,初始的springboot就可以,我的是2.2.2-release版二:本地创建证书调试ps:首先进入你的Java\bin目录下,然后执行如下命令keytool -...
2019-12-23 18:58:26
696
原创 Ext.js中使用FormPanel.getForm().submit提交表单并获得返回值
话不多说,直接上图1中显示效果就是上传时有一个进度条,2中为传统写法action,3中msg要和后台传入的参数对应。2中path和fields同理,要和后台返回参数名一致然后就可以实现上传并展示结果了...
2019-12-19 10:12:25
1245
原创 Ext.js通过选择ComboBox的值来监听动作
实现通过选择不同的值来展现不同的效果 var fieldType = new Ext.form.ComboBox({ fieldLabel: '字段类型', store: new Ext.data.SimpleStore({ fields: ["type"], data:[['St...
2019-12-19 10:09:14
1726
原创 easyexcel读取任意表格以及使用中的坑
关于easyexcel通过模板读取表格的,网上已经有好多了,而且源码里也有详细的demo,这里就不在多说。这里记录一下我的使用。一: 目前有个接口是上传Excel并且返回第一行,之前用的是POI,但是数据量大的话,100w条数据就oom了,所以切换到easyexcel,之后内存占用果然小了许多。二: 首先引入依赖,目前我用的是2.1.4 <!-- 快速处理E...
2019-12-19 09:49:20
13574
原创 关于springboot微信点餐的错题集
这两天在学习微信点餐,犯了好多不该犯的错误,和一些特别简单的错误,在此记录,警醒自己不再犯错,也给和我犯同样错误的小伙伴提醒一下。1第一次用springboot有点方,用idea测试service时发现这个错误,然后发现测试类前面忘了写注解。注解是酱紫的2.0不久,出现这种情况,根据提示我们去看了数据库,发现对应字段在数据库中是以Varchar形式保存的,然而我们在...
2019-10-16 16:10:56
615
3
转载 学习group by 原理
学习group by,这篇文章通俗易懂,赶紧保存下来https://blog.csdn.net/u014717572/article/details/80687042先来看下表1,表名为test:表1 执行如下SQL语句: 1 2 SELECTnameFROMtest GROUPBYname 你应该...
2019-08-27 16:44:12
159
原创 SQL条件判断中,is 和 =(等号)的区别
在SQL中进行条件判断的时候,等号表示的是数值上的等价,比如par_id = 0is 更多表示的是一种属性。没有数值的时候,该字段就是空的。is null
2019-08-08 15:20:56
9632
原创 eclipse中,git管理的项目左边有大于号>
项目被git管理,有些项目前面会有大于号样子的标记,有些没有。经过我的实验,发现当你修改项目之后,还没有提交到git上时,就会出现这个标记。当你git push后,就没有这个标记了。...
2019-08-08 15:13:18
1851
原创 已解决Could not find value method on SQL annotation. Parsing error was found in mapping #{}.
今天启动springboot项目,报了这么一个错误然后项目启动成功了,我也就先测试一下刚才写的代码,结果mybatis的getMapper拿不到mapper。这下必须解决了查看报错信息,发现我是在dao中使用注解写SQL的,然后发现我dao中有一处空着没有写酱紫的,然后补上就可以了,...
2019-08-08 11:08:28
1157
原创 推荐算法介绍,思路,技术
最近学习推荐算法,看了一些博客,发现有一些错误的地方,故重新拿过来整合总结一下:1.基于流行度的方法根据PV(页面浏览量),UV(独立访客),日均PV来计算,优点 简单,适合新用户 缺点 无法针对用户提出个性化的推荐 2.协同过滤算法CF基于用户的CF算法 分析各个用户对item的评价(通过浏览记录、购买记录等); 依据用户对item的评价计算...
2019-03-18 15:50:17
2353
1
原创 java8新特性使用lambda表达式foreach遍历map数组
java8引入了lambda表达式,同时Map中也加入了新方法,使用foreach更优雅的遍历map public static void main(String[] args) { Map<String, String> map = new HashMap<>(); map.put("aaa", "111"); ...
2019-03-15 14:54:25
6291
原创 java 数组Array和集合List转换千万要注意 Arrays.asList
1.首先我们看看数组转集合的方法。数组转集合使用Arrays.asList()方法。首先我们试试把数组转换成集合后调用集合方法public class Array2List { public static void main(String[] args) { String[] str = {"aaa", "bbb", "ccc"}; List<...
2019-03-15 10:39:33
289
原创 两种springboot配置文件中使用${} 注入值的方法
1.在springboot中使用System.setProperty设置参数 user: user-name: ${username} age: ${age}配置文件是这种写法,我们可以用System.setProperty来设置参数,System.setProperty相当于一个静态变量,存在内存里面,使用el表达式和@value获取 public static void...
2019-03-14 10:44:10
13719
1
原创 使用itext导出数据到pdf中
最进项目中用到,先引入依赖 <dependency> <groupId>com.itextpdf</groupId> <artifactId>itextpdf</artifactId> <version>5.5.6</version>
2019-03-13 15:49:49
307
原创 java代码用itext 识别PDF中的文字然后替换
itext替换PDF的原理就是找到要替换的文字,然后计算他的位置,在哪个位置上生成覆盖层,然后在覆盖层上写内容。从网上看到的自动计算PDF中文字的位置方法。public class PdfConversion { // 定义关键字 private static String KEY_WORD = "张三"; // 定义返回值 private static...
2019-03-12 11:19:24
6690
1
原创 MySQL数据隔离grant使用
1.用户授权mysql> grant all privileges on *.* to 'user'@'%' identified by 'user123456' with grant option;关键字 描述 1、all privileges 表示将所有权限授予给用户。也可指定具体的权限,如:SELECT、CREATE、D...
2019-03-08 14:44:27
355
原创 MySQL权限grant使用
1.创建数据库 mysql -h localhost -u root -p --登录数据库 show databases; --显示当前存在的数据库 use tym; -- 使用数据库 --创建test_one数据库 mysql> create table test_one ( -> id int, -> name varchar(20) -...
2019-03-08 14:38:20
2132
原创 数据校验——Map中判断是否包含Key值
今天遇到一个问题,在做数据校验的时候要判断输入的值是否合法,规定了数据的范围,在一个map中这时可以用一个if来判断,这里用到timeUnitMap.containsKey(key)方法,key中拿到前端传过来的值,这样就可以判断该值是否是map中的key,就可以判断了,另外一种是用javax.validation.Validator,进行注解校验。下篇讨论这个问题。...
2019-02-28 15:33:04
8659
原创 出现error:"HV000030: No validator could be found for constraint 'javax.validation.constraints.Pattern'
使用JSR-303校验,然后出现这样的错误。这时候我们bean中的字段intervalNum是integer类型的,而我们加了@NotBlank注解,删掉就可以了@NotEmpty 用在集合类上面@NotBlank 用在String上面@NotNull 用在基本类型上...
2019-02-28 14:57:02
47415
8
原创 idea2018.1.1破解方法
首先下载一个jar包地址这里:https://pan.baidu.com/s/1xsBUo74Q9VOjLu3R0nVjyw提取码:cn1s将他放在你的idea安装目录的bin中然后用记事本打开bin中这两个文件在两个文件的末尾加上:-javaagent:F:\IntelliJ IDEA 2018.1.1\bin\JetbrainsCrack.jar其中F:\I...
2019-01-20 13:41:28
2122
原创 VS code 新手设置中文
最近接触到了微软的一款编辑器VS code,发现真的很好用,很强大。而且支持好多语种的拓展官方文档是这样写的,使用Ctrl + shift + P快捷键打开搜索,输入display,点击打开然后把这里的语言改为zh-CN就可以了,然后重启编辑器就是中文了如果重启还不是中文,那点击左边最下面拓展,去官方商店搜索Chinese下载中文语言包,然后重启就好了...
2018-12-10 20:40:15
1163
原创 Java 小和问题 代码解析
小和问题求解的思路就是使用归并排序, 归并排序的核心思想是将两个有序的数列合并成一个大的有序的序列。通过递归,层层合并,即为归并。归并排序算法有两个基本的操作,一个是分,也就是把原数组划分成两个子数组的过程。另一个是治,它将两个有序数组合并成一个更大的有序数组。public class SmallSort { public static int smallSort(int arr...
2018-10-11 15:07:04
358
原创 Java 中 return,break,continue的区别
话不多说,直接上代码1.0 continue,用于结束本次循环;在含有continue语句的循环体中,只要碰到continue 就结束本次循环,直接进入下一次循环。 public static void main(String[] args) { for (int j = 0; j < 2; j++) { for (int i = 0;...
2018-10-10 11:09:54
148
原创 springboot 微信点餐中lambda表达式解析
最近重温微信点餐系统,解决一下历史遗留问题,对于lambda表达式视频中只是一笔带过没有详细讲解, 通过查资料,看文档,终于有所了解,记下笔记防止再忘。在微信点餐系统中,第一次出现lambda表达式是在OrderServiceImpl类中用到了,为了得到客户端传来的订单信息来减少库存lambda表达式语法好多人都写的很明白, 比如这里,这段代码首先从orderDTO中得到商品详情列...
2018-07-16 19:52:09
770
原创 SQL中TIMESTAMP属性CURRENT_TIMESTAMP 和 ON UPDATE CURRENT_TIMESTAMP
SQL语句中TIMESTAMP类型提供一种类型,你可以使用它自动地用当前的日期和时间标记INSERT或UPDATE的操作,它有两个属性,一个是1.CURRENT_TIMESTAMP当要向数据库执行insert操作时,如果有个timestamp字段属性设为CURRENT_TIMESTAMP,则无论这个字段有没有set值都插入当前系统时间2.ON UPDATE CUR...
2018-07-16 14:48:30
9896
1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人