- 博客(23)
- 收藏
- 关注
原创 sql批量更新单字段值并拼接某个特定的值
update 表名 set 字段 =CONCAT(left(字段,length(字段) -6),‘2022-’,right(字段,6)) where year = 2022。
2023-02-01 14:06:03 739
原创 hutool工具包 中的雪花算法Snowflake 获取Long类型id 或者String 类型id(全局唯一id解决方案)
【代码】hutool工具包 中的雪花算法Snowflake 获取Long类型id 或者String 类型id。
2022-10-25 10:54:48 16660
原创 BigDecimal保留有效位,小数点末尾0去除,仅保留有效位
DecimalFormat decimalFormat = new DecimalFormat("###################.###########"); System.out.println(decimalFormat.format(new BigDecimal("1000.1200")));控制台打印 1000.12
2022-01-18 14:33:42 1407
原创 RestTemplate发送get,post,patch,put请求
平时工作中有对接外部接口的需求,这边将自己用的做一个总结,大概用了四种1.发送get请求返回对象/** * Result返回的是接口返回的格式公共响应对象 */private <T> Result<T> getForObject(String url, Class<T> clazz) { try { ResponseEntity<String> response = getStringResponseEnt
2021-07-14 14:48:18 674
原创 一段明文用MD5加密后转为32位小写字符
String s=“username123456password”;//将上面字符串MD5加密后的32位字符转为小写String MD5Str = Md5Utils.MD5(s).toLowerCase();s为需要转换的字符串,MD5Str为转换后加密的字符串
2021-07-09 11:44:46 1033
原创 java8数组也支持foreach方式遍历
java8数组也支持foreach方式遍历,这样更快1.切割字符串String s = "A,B,C,D"String[] s1Arr = s.split(",");for (String s1 : s1Arr ) { System.out.println(s1);}// 依次打印出 A B C Dmap//通常这样遍历一个MapMap items = new HashMap<>();items.put(“A”, 10);items.
2021-06-17 15:05:45 556
原创 org.apache.commons.lang3.StringUtils.isNotBlank和isEmpty方法
今天做项目的时候遇到一个小问题,检验字段不为空后,对其切割,用了isEmpty判断,报了空指针异常,最后发现库表里该字段为长度不为0空白字符串,这里isEmpty判断不了,下面列出来StringUtils.isEmpty(null) = trueStringUtils.isEmpty("") = trueStringUtils.isEmpty(" ") = falseStringUtils.isEmpty("111") = falseStringUtil
2021-06-16 14:11:19 1437
原创 Lists.newArrayList()和new arraylist() 区别
使用Lists.newArrayList实例化和 new ArrayList() 两者在运行时没有太大区别,只是使用 Lists.newArrayList () 时代码相对简单些,因为它能够自动推导泛型类型
2021-06-11 16:45:09 1776
原创 Java面试题总结(面试宝典) JAVA基础
1.JDK和JRE有什么区别?JDK:Java Development Kit 的简称,Java开发工具包,提供了Java的开发环境和运行环境.JRE:Java Runtime Environment 的简称,Java运行环境,为Java的运行提供了所需环境.具体来说JDK其实包含了JRE,同时还包含了编译Java源码的编译期Javac,还包含了很多Java程序调试和分析的工具.简单来说:如果你需要运行Java程序,只需安装JRE就可以了,如果需要编写JAVA程序,需要安装JDK.2.== 和 eq
2021-02-25 14:24:15 155 1
原创 缓存
在接口服务中,有必要对于接口进行缓存处理,尤其是GET请求,如果每个接口单独添加的话会存在很多的重复的逻辑,所以可以编写一套通用的解决方案。实现思路:通过拦截器实现对请求的拦截,在拦截器中实现缓存的命中。通过ResponseBodyAdvice进行对响应的拦截,可以将数据缓存到Redis中。考虑到,不能对于所有的请求都一刀切,所以需要创建@Cache注解进行标记,只有标记的Controller才进行缓存处理。缓存的处理中,仅针对GET请求处理,其他的请求均不做处理。1.自定义注解impor
2021-01-05 23:01:32 179
原创 SpringBoot整合其他框架
1.SpringBoot整合Junit测试类需要写在引导类所在的包及其子包。否则,需要加@SpringBootTest(classes = SpringbootConfigApplication.class)实现步骤:1.搭建SpringBoot工程2.在pom文件引入starter-test起步依赖<dependency> <groupId>org.springframework.boot</groupId> <artifactId>s
2020-12-19 21:55:30 376 1
原创 ZK-分布式锁流程
•核心思想:当客户端要获取锁,则创建节点,使用完锁,则删除该节点。1.客户端获取锁时,在lock节点下创建临时顺序节点。2.然后获取lock下面的所有子节点,客户端获取到所有的子节点之后,如果发现自己创建的子节点序号最小,那么就认为该客户端获取到了锁。使用完锁后,将该节点删除。3.如果发现自己创建的节点并非lock所有子节点中最小的,说明自己还没有获取到锁,此时客户端需要找到比自己小的那个节点,同时对其注册事件监听器,监听删除事件。4.如果发现比自己小的那个节点被删除,则客户端的 Watcher会.
2020-12-18 13:54:55 196
原创 zookeeper&dubbo-admin相关
zk&dubbo-admin解压提供的虚拟机导入虚拟机,双击vmx文件lee-all.vmx开启虚拟机用户名:root密码:root3.1 修改静态ip• 首先查看虚拟机的网段• 修改静态ip[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 [root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
2020-12-16 19:34:38 102
原创 Maven的下载,安装与环境配置
maven的官网:http://maven.apache.org/1 下载官方下载地址:http://maven.apache.org/download.cgi2 安装maven是一个绿色软件,解压即安装,非常容易解压完成后我们可以查看一下maven自己的一个目录结构如下各目录结构说明:bin:可执行程序目录,boot:maven自身的启动加载器conf:maven配置文件的存放目录lib:maven运行所需库的存放目录3 环境配置maven的运行需要java的环境,需要我们配置J
2020-11-23 18:49:53 137
原创 如何同时访问内外网
查看当前内外网网关C:\Windows\system32>ipconfig以太网适配器 以太网: 连接特定的 DNS 后缀 . . . . . . . : 本地链接 IPv6 地址. . . . . . . . : fe80::54bd:1749:893b:3de7%17 IPv4 地址 . . . . . . . . . . . . : 192.168.19.22 子网掩码 . . . . . . . . . . . . : 255.255.255.0 默认网关
2020-11-21 18:12:19 361 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人