![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java基础
Chat world
这个作者很懒,什么都没留下…
展开
-
IDE集成docker部署spring boot项目
context folder是打包后target所在目录。1、安装docker插件。2、连接docker设置。4、配置docker配置。转载 2023-01-11 10:13:35 · 272 阅读 · 1 评论 -
文件判空工具类
之前还一直用ObjectUtils.isEmpty(),没有深究,果然是大意失荆州啊,还是太粗心了。当没有file字段可以成功判断,当未选择图片时,则失效。原创 2022-12-02 20:53:21 · 896 阅读 · 0 评论 -
MySQL查询自己创建的用户以及子用户创建的所有用户
【代码】MySQL查询自己创建的用户以及子用户创建的所有用户。转载 2022-10-08 17:56:23 · 584 阅读 · 0 评论 -
dd/MM/yyyy转yyyy-MM-dd
【代码】dd/MM/yyyy转yyyy-MM-dd。原创 2022-08-30 17:33:58 · 570 阅读 · 0 评论 -
Linux部署Kafka+sasl
本文转载自https://www.jianshu.com/p/a994bec67173kafka3.0以后不支持jdk8,需要升级版本,以下用的事Kafka2.12_2.2.1在服务器节点配置认证文件:文件路径:文件内容:注意配置文件中的两个分号的位置,多一不可,缺一不可。修改服务器节点的启动配置文件:复制 为,在文件最末尾添加:修改服务器节点的启动脚本:复制 为 ,将认证信息配置到 kafka 服务器节点的 JVM 启动参数中:启动 zookeeper:以安全认证的方式启动 kafka转载 2022-06-21 10:34:46 · 577 阅读 · 0 评论 -
postgresql查询-时间加5个小时的数据
对数据库某一日期字段这一列 统一加n小时 ?有一个用户表:user,代表时间的字段:time//查出来的数据会在原数据时间基础上加n个小时select user_id, time + interval 'n H' as time from user;Y Years;M Months;W Weeks;D Days;H Hours;M Minutes;S Seconds;.........原创 2020-04-01 15:22:36 · 3440 阅读 · 0 评论 -
自定义注解返回体提示信息中英文自动切换
整体思路:自定义注解定义切面切面任务处理定义注解定义切面任务处理注:请求头中定义language表示中文还是英文,然后将注解写在controller上即可原创 2022-06-01 17:30:31 · 375 阅读 · 0 评论 -
10进制整型通过位运算转为16进制的二字节数据
整数Data = 55851 = 0xda2b二字节数据:data[0] = (Data >>8)&0Xff =0xda,data[1] = (Data >>0)&0Xff =0x2b,通过Java代码转换如下:public static byte[] intTo16Byte(int num) { int len = 2; byte[] bytes = new byte[2]; for (int i = 0;原创 2022-05-09 16:17:39 · 584 阅读 · 0 评论 -
Linux 新建ES索引
本文参考博文:https://blog.csdn.net/qq_40694036/article/details/100217179?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522163832583416780271957604%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=16383258341678027195原创 2021-12-01 11:03:00 · 1768 阅读 · 0 评论 -
redisTemplate的操作
Redis是一个key, value的非关系型数据库,数据是保存在内存中,可以避免频繁访问数据库而增大数据库的压力,同时提高数据响应速度,Redis数据是存放在内存中,因为他的瓶颈是内存。使用redisTemplateSpring封装了一个比较强大的模板,也就是redisTemplate,方便在开发的时候操作Redis缓存。在Redis中可以存储String、List、Set、Hash、Zset。下面将针对List和Hash分别介绍。引入redisTemplate引入pom依赖<depend转载 2021-08-30 14:24:36 · 1365 阅读 · 0 评论 -
Linux日志中如何查找关键字及其前后的信息
在日常工作中,我们经常需要查看日志,比如可以通过 tail 命令实时查看日志,也可以通过 cat 等命令查看日志信息。但现在我们要讨论的是,如何从日志中通过关键字过滤出我们想要的内容,方法有多种,今天我们主要以 cat 命令来进行学习。假设存在日志文件 hrun.log,查询的关键字为"新增用户":根据关键字查看日志cat hrun.log | grep "新增用户"根据关键字查看后10行日志cat hrun.log | grep "新增用户" -A 10根据关键字查看前10行日志cat转载 2021-05-08 13:54:54 · 408 阅读 · 0 评论 -
ES设置索引的刷新时间
ES默认刷新时间是1秒在进行增删改的操作后立马去查可能会出现还是之前的数据,这时可以设置刷新间隔时间PUT http://127.0.0.1:9200/IndexName/_settings{ "refresh_interval": "40ms" }原创 2021-04-01 10:58:07 · 4356 阅读 · 0 评论 -
字符串List,根据元素长度排序
自定义排序的工具类:import java.util.Comparator; public class SortByLengthComparator implements Comparator<String> { @Override public int compare(String var1, String var2) { if (var1.length() > var2.length()) { return 1; } else if (var1.length转载 2021-03-04 19:50:00 · 1556 阅读 · 2 评论 -
Mysql给in传递参数
情景:select * from student where name in ('李四','王五','张三');查询学生表中name字段是'李四','王五','张三'的数据需求:'李四','王五','张三'这些字段需要前端传过来且数量不确定方法:使用FIND_IN_SET (name,?)第一个参数是列名,第二个参数是字符串类型的,接收传递的数据例:传一个字符串为:"张三,李四,王五"select * from student where FIND_IN_SET (name,"张三转载 2020-12-15 13:13:24 · 1800 阅读 · 4 评论 -
Objects.equals(a,b)判定
一:值是null的情况:a.equals(b), a 是null, 抛出NullPointException异常。a.equals(b), a不是null, b是null, 返回falseObjects.equals(a, b)比较时, 若a 和 b 都是null, 则返回 true, 如果a 和 b 其中一个是null, 另一个不是null, 则返回false。注意:不会抛出空指针异常。null.equals("abc") → 抛出 NullPointerException 异常转载 2020-11-27 11:36:21 · 739 阅读 · 0 评论 -
es筛选数据并导出excel
@RestControllerpublic class ElasticSearchTestController { // 初始化Logger类:使用指定的类初始化 LoggerFactory,输出日志所在类的信息。 private static Logger logger = LoggerFactory.getLogger(ElasticSearchTestController.class); private static String IP = "es地址"; priv转载 2020-11-23 10:53:10 · 2545 阅读 · 0 评论 -
java正则表达式大全
一、校验数字的表达式1 数字:^[0-9]*$2 n位的数字:^\d{n}$3 至少n位的数字:^\d{n,}$4 m-n位的数字:^\d{m,n}$5 零和非零开头的数字:^(0|[1-9][0-9]*)$6 非零开头的最多带两位小数的数字:^([1-9][0-9]*)+(.[0-9]{1,2})?$7 带1-2位小数的正数或负数:^(\-)?\d+(\.\d{1,2})?$8 正数、负数、和小数:^(\-|\+)?\d+(\.\d+)?$9 有两位小数的正实数:^[0-9]+(.[0转载 2020-10-15 17:45:47 · 4718 阅读 · 0 评论 -
linux内存占用过高问题解决方法
使用top 查看内存的占用情况,然后键入"M"命令根据内存的占用情况降序排列("P"是CPU占用情况降序排列)2.关闭掉不需要的进程,3.再使用top查看内存占用情况,发觉内存占用率已经降下来了,但是free -g却还有100G被占用(内存总共128G),vmstat发现是cache 占用了大量内存。使用 echo 1 > /proc/sys/vm/drop_caches 释放缓存常用的释放缓存的命令如下To free pagecache:仅清除页面缓存(PageCache)ech.转载 2020-09-01 14:49:54 · 8982 阅读 · 1 评论 -
ORA-20099:Login Exception:192.168.29.21用户名 PROHIBIT ACCESSING
Linux连接Oracle数据库报错如下,困扰很久尝试过其他版本的连接驱动包、修改连接池最大连接数、比对数据库用户名/密码,都没有解决ping数据库网络是通的telnet端口也是可以连接问题可能出现在:用户名没有权限或者是网络IP段被限制访问(登陆触发器限制了)解决办法:添加权限或者修改登录触发器(需要超级管理员)...原创 2020-08-31 16:44:41 · 1176 阅读 · 0 评论 -
Linux日志Given final block not properly padded. Such issues can arise if a bad key is used during
该错误是因为AES解密错误引起的开始也不知道怎么会出这个错,后来经过提醒,原来是该项目和其他项目的加密解密的密钥不一样,换了密钥,就可以了原创 2020-08-28 11:01:05 · 7347 阅读 · 0 评论 -
redis5.0.6集群搭建
搭建集群master节点至少要3个,slave节点也是3个,因为一个redis集群如果要对外提供可用的服务,那么集群中必须要有过半的master节点正常工作。基于这个特性,如果想搭建一个能够允许 n 个master节点挂掉的集群,那么就要搭建2n+1个master节点的集群2个master节点,挂掉1个,则1不过半,则集群down掉,无法使用,容错率为03个master节点,挂掉1个,2>1,还可以正常运行,容错率为14个master节点,挂掉1个,3>1,还可以正常运行,但是当挂掉2个时转载 2020-08-13 10:35:07 · 364 阅读 · 0 评论 -
mybatis + (oracle)实现主键自增 + 插入数据并返回主键
一、实现主键自增在oracle数据库中,主键并没有办法自动增长,无法使用insert对应的useGeneratedKeys和keyProperty属性自动返回增加的主键。要实现自增需要修改 ID列为number类型,一下类型作为参考oracle实现主键方式:原文链接:https://www.cnblogs.com/uzxin/p/11930347.html一、使用selectKey标签<insert id="addLoginLog" parameterType="map" >转载 2020-08-04 10:11:15 · 2062 阅读 · 2 评论 -
安装nginx报错:cp: “conf/koi-win“ 与“/usr/local/nginx/conf/koi-win“ 为同一文件
百度的解决方案./configure --prefix=/usr/local/nginx --conf-path=/usr/local/nginx/nginx.confprefix=后面是nginx安装路径conf-path=后面是nginx包下面的nginx.conf配置文件,而不是conf/nginx.conf原创 2020-07-31 14:14:34 · 3088 阅读 · 0 评论 -
linux 非root用户安装nginx
第一步:首先下载依赖包下载地址 pcre(www.pcre.org),zlib(www.zlib.org),openssl(www.openssl.org)第二步:上传那个nginx的安装包下载nginx安装包,解压tar -zxvf nginx-1.12.2.tar.gz配置nginx ./configure --with-http_stub_status_module --prefix=/opt/aspire/product/bdctool/nginx 第三步:若报依赖错,重新配置转载 2020-07-31 14:07:40 · 971 阅读 · 0 评论 -
Invalid bound statement (not found): com.demo.oracledemo.dao.UserMapper.getAll
自己搭建了一个demo玩,但是一直报错Invalid bound statement (not found): com.ymy.oracledemo.dao.UserMapper.getAlldao层和xml没有绑定在一起,因而找不到,通过在dao层写sql发现能够运行,更加确定了绑定的问题网上找解决办法,但是大多数都是说的是1、检查xml文件所在的package名称是否和interface对应的package名称一一对应2、检查xml文件的namespace是否和xml文件的package名称原创 2020-07-30 16:23:17 · 520 阅读 · 0 评论 -
Linux导入*.sql到Oracle数据库
1、oracle用户登录linux系统。2、把要执行的数据库脚本update.sql上传至服务器。3、切换至要执行的用户(usename(数据库用户)/password(数据库密码)),命令:sqlplus ‘usename/password’4、执行脚本(update.sql为要执行的脚本),命令:@update.sql5、退出,命令:quit...转载 2020-07-28 18:05:04 · 884 阅读 · 1 评论 -
Linux创建网络yum源
Linux上通过yum命令来进行安装插件,一直报错:连接超时、连接被拒绝,解决方法如下:1、查看该机可用的yum源和禁用的yum源yum repolist all2、首先在/etc/yum.repos.d/目录下创建yum163.repo文件,并完成相应功能的编辑3、vim yum163.repo4、[base] name=yum163 baseurl=http://mirrors.163.com/centos/7/os/x86_64/ gpgcheck=1 gpgkey=http://mirr原创 2020-07-17 09:57:06 · 647 阅读 · 0 评论 -
Linux上wget: 无法解析主机地址
在Linux上面需要在线下载安装一些软件的时候,如果出现了wget: 无法解析主机地址的错误,那么是你的服务器的域名解析没有配置好,我们可以使用阿里巴巴的DNS域名解析。1、进入下面目录/etc/resolv.conf2、添加/修改nameservernameserver 8.8.8.8nameserver 8.8.4.4再重新wget就可以正常下载安装了...原创 2020-07-17 09:45:10 · 10889 阅读 · 0 评论 -
拉新项目启动报错probably due to a new Java class file version that isn‘t supported yet
报错信息显示某个类的版本不支持,询问同事,他们是jdk1.7的版本编译的,但是jdk1.8应该是可以兼容的,百度一下,显示spring4以下的版本不支持1.8结果是因为拉下来的别人把spring版本注释了,如果不是需要修改依赖<dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> &l原创 2020-07-14 11:57:12 · 943 阅读 · 0 评论 -
第一天给0.01元,第二天给0.02元,以此类推,每一天是前一天的2倍,连续一个月结果
第一天给0,01元,第二天给0.02元,以此类推,每一天是前一天的2倍,连续一个月结果public class MoneyTest { @Test public void test()throws Exception{ double j = 0.01; double a = 0; ArrayList<Double> list = new ArrayList<Double>(); for (int i =原创 2020-06-07 15:36:27 · 13694 阅读 · 2 评论 -
2020-04-01T16:54:14.357+0000时间处理转换为yyyy-MM-dd HH:mm:ss
String old_time ="2020-04-01T16:54:14.357+0000"; DateFormat df = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss"); Date date = df.parse(old_time); SimpleDateFormat df1 = new SimpleDateFormat("EEE MMM...原创 2020-04-01 17:22:37 · 1809 阅读 · 0 评论 -
关于springboot中的实体类无法映射数据库中不存在的字段
在使用springboot时,我们经常要用到实体类与数据库表的映射,常用的做法是添加@Transient标记如:@Transient private transient Integer state;//geter and seter .....但经过实测发现仍旧报错,错误信息如下(这个信息不绝对):经过查阅资料发现,不仅需要添加@Transient标记,还要在申明变量时使用tra...转载 2020-04-01 17:17:49 · 2593 阅读 · 0 评论 -
PgSQL查询报错err:operator does not exist: character varying = bigint
对 postgresql 执行查询操作失败,错误信息:err:operator does not exist: character varying = bigint其中 operator 是操作符的意思发生此错误是因为 把字符类型的列和数字做比较了,postgresql不支持这样的操作,和mysql不一样。比如status 是varchar类型的, 但是sql 语句的查询条件写成, ...原创 2020-03-27 11:51:04 · 24062 阅读 · 0 评论 -
PgSQL数据库查询某些字段为null的解决
情况描述:sql语句在数据库里面可以正常查询结果,所有字段都有值,但是在代码里面一跑,返回的数据有几个字段是null原因:数据库中的字段有下划线,eg:role_id解决办法:去掉字段的下划线就可以了...原创 2020-03-19 15:16:52 · 8153 阅读 · 0 评论 -
Swagger2 @ApiImplicitParam中dataType和paramType的区别?
@ApiImplicitParam(name = "id",value = "用户id",required = true,dataType = "int",paramType = "body")dataType=“int” 代表请求参数类型为int类型,当然也可以是Map、User、String等;paramType=“body” 代表参数应该放在请求的什么地方:header–>放在...转载 2020-03-09 21:54:40 · 2572 阅读 · 0 评论 -
如何将新建的项目完整的提交到gitlab上?
描述:使用idea开发工具新建了一个项目工程,此时此刻工程没有任何的版本控制,代码存放在本地磁盘中,如果需要直接将项目工程代码提交到gitlab上,该如何操作呢?因为当前没有版本控制,不能像正常的代码那样提交,必须先创建git本地仓库,然后关联到远程的gitlab服务。1、在idea的菜单选项 VCS >> Import into Version Control >>...转载 2020-02-08 17:39:23 · 1169 阅读 · 0 评论 -
@JSONField使用
@JSONField介绍fastjson是阿里巴巴出品的快速解析json的一个工具,@JSONField就是里面为数不多的注解之一.也是最为重要的注解.它的内容如下:/* * Copyright 1999-2017 Alibaba Group. * * Licensed under the Apache License, Version 2.0 (the "License"); * ...转载 2019-12-19 11:36:33 · 237 阅读 · 0 评论 -
集合和字符串转换错误:* cannot be cast to java.lang.String
**集合和字符串转换错误:* cannot be cast to java.lang.String今天在对象集合转字符串的时候,我直接用的toString,报错对象不能转成字符串:..* cannot be cast to java.lang.String刚开始直接用的toString()方法,可是不行,后来查了下,有的说是对象不能直接用toString()方法转接成字符串,后来找到了解决...转载 2019-11-28 10:47:56 · 5078 阅读 · 0 评论 -
单例模式之饿汉模式和懒汉模式
单例模式:(饱汉模式、饥汉模式)1、构造方法私有化,让出了自己类中能创建外其他地方都不能创建2、在自己的类中创建一个单实例(饱汉模式是一出来就创建创建单实例,而饥汉模式需要的时候才创建)3、提供一个方法获取该实例对象(创建时需要进行方法同步)饿汉模式:class Singleton{private static Singleton instance = new Singleton()...原创 2019-09-11 18:26:59 · 207 阅读 · 0 评论