Java
文章平均质量分 69
Java
艾利克斯冰
行于世,聪者不敏,慧者不骄,谋者不霸,强者不惧。谨记
展开
-
Maven使用${revision}实现多模块版本统一管理及注意事项
在 Maven 中,确实可以利用来实现多模块项目的版本统一管理,尤其是在使用一些高级特性如 Maven Release Plugin 或者是在 CI/CD 流程中动态设置版本时。是一个特殊的变量,它允许你在构建时动态地使用或设定项目的版本号,这对于自动化的版本管理和持续集成特别有用。原创 2024-06-07 15:12:57 · 1578 阅读 · 0 评论 -
Java 8 新特性详解及应用示例
随着Java平台的不断演进,Java 11引入了模块系统,Java 17及后续版本继续深化模块化、提升性能、增强安全性,并拥抱最新技术趋势,比如对Valhalla项目(价值类型和泛型特化)、Loom项目(虚拟线程)的探索,预示着Java将继续其在现代软件开发领域的领导地位。未来版本将更加注重提升开发者的生产效率、应用的性能与安全性,同时保持语言的简洁与一致性,确保Java生态系统的持续繁荣与发展。总之,Java 8不仅是Java发展史上的一个重要转折点,也是推动整个生态系统向前迈进的关键力量。原创 2024-05-21 11:11:26 · 1884 阅读 · 0 评论 -
突发事件!关系到每个人,尤其是程序员!
馆长准备了很多学习资料,其中包含java方面,jvm调优,spring / spring boot /spring cloud ,微服务,分布式,前端,js书籍资料,视频资料,以及各类常用软件工具,破解工具 等资源。请关注“IT技术馆”公众号,进行关注,馆长会每天更新资源和更新技术文章等。原创 2024-05-18 14:58:44 · 274 阅读 · 0 评论 -
强烈推荐! Idea用了它,开发速度直接提升10倍,再也不怕摸鱼
Bito自己的介绍就是:Bito AI使编写代码,理解语法,编写测试用例,解释代码,评论代码,检查安全性甚至解释高级概念变得容易。经过数十亿行代码和数百万个文档的培训,我们可以帮助您完成的工作,而无需搜索网络或浪费时间在繁琐的事情上,这真是令人难以置信。Bito是一款能在各主流ide中使用的编程辅助插件,它是由ChatGPT团队开发的,是一款能提高开发效率的工具。好了,今天馆长就先讲到这里,欢迎大家关注我,了解更多最实用的开发工具,了解更多好玩的知识技能。安装完成后,重启IDEA,插件生效。原创 2024-04-17 08:42:04 · 597 阅读 · 0 评论 -
Java终极技能!学会这些,编程速度会提升数倍,很有可能直接飞起!!
今天就给大家讲一下如何提高自己的开发速度,还有提高自己的工作效率。以下是馆长在开发中,感觉非常实用的资源。分享给大家,资源地址在文章末尾会提供。原创 2024-02-29 11:49:37 · 1133 阅读 · 0 评论 -
【转存】从 JMM 透析 volatile 与 synchronized 原理
ObjectMonitor 中有两个队列,_WaitSet 和 _EntryList,用来保存 ObjectWaiter 对象列表( 每个等待锁的线程都会被封装成 ObjectWaiter 对象),_owner 指向持有 ObjectMonitor 对象的线程,当多个线程同时访问一段同步代码时,首先会进入 _EntryList 集合,当线程获取到对象的 monitor 后进入 _Owner 区域并把 monitor 中的 owner 变量设置为当前线程同时 monitor 中的计数器 count 加 1。原创 2023-09-11 15:34:46 · 189 阅读 · 0 评论 -
分清 PO、VO、DAO、BO、DTO、POJO 含义
分清 PO、VO、DAO、BO、DTO、POJO 含义原创 2023-04-14 10:43:15 · 839 阅读 · 0 评论 -
java 概率抽奖代码实现
概率抽奖代码实现原创 2023-02-08 08:59:37 · 1111 阅读 · 0 评论 -
关于spring mvc 的 addPathPatterns 拦截配置常见问题
关于spring mvc 的 addPathPatterns 拦截配置常见问题原创 2023-02-06 16:43:05 · 4243 阅读 · 1 评论 -
drawImage 详解
drawImage 详解原创 2023-01-04 10:11:31 · 3457 阅读 · 0 评论 -
java -jar 指定外部日志配置文件
java -jar 指定外部日志配置文件原创 2023-01-03 16:59:55 · 2272 阅读 · 0 评论 -
【转存】干掉 “重复代码”,这三种方式绝了!
干掉 “重复代码”,这三种方式绝了!原创 2022-11-28 10:15:09 · 147 阅读 · 0 评论 -
Controller层代码就该这么写,简洁又优雅!【转存】
Controller层代码就该这么写,简洁又优雅!原创 2022-11-23 15:43:38 · 172 阅读 · 0 评论 -
MyBatis 的配置文件设置和属性
https://mybatis.org/mybatis-3/zh/configuration.html原创 2022-09-03 17:39:04 · 170 阅读 · 0 评论 -
@Autowired和@Resource区别
@Autowired和@Resource区别原创 2022-08-30 15:44:04 · 2856 阅读 · 0 评论 -
身份证处理工具类(java)
身份证处理工具类(java)原创 2022-08-30 14:44:31 · 484 阅读 · 0 评论 -
地图坐标的转换与说明
地图坐标的转换与说明原创 2022-08-15 11:19:12 · 1346 阅读 · 0 评论 -
【转存】玩转Java8 Stream,代码效率飞升
Stream 是 Java8 中处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。使用 Stream API 对集合数据进行操作,就类似于使用 SQL 执行的数据库查询。也可以使用 Stream API 来并行执行操作。简而言之,Stream API 提供了一种高效且易于使用的处理数据的方式。...原创 2022-06-06 13:54:59 · 229 阅读 · 0 评论 -
Typora 教程
Typora 教程小哈发现一篇非常不错的 Typora 教程,分享给大家呀。另外,本文中配置图床部分使用的 gitee, 前段时间已经加了防盗链,现在已经不好使了,略过即可。原文链接:https://www.cnblogs.com/hyacinthLJP/p/16123932.html作者:MElephantTypora使用教程前言一次偶然的机会,让我接触到了 .md 文档,进而开始摸索,并意外结识了 Typora 这个编辑器。MarkDown简介Markdown原创 2022-05-18 09:15:05 · 587 阅读 · 0 评论 -
【已解决】Spring Cloud Feign 上传文件,提示:the request was rejected because no multipart boundary was found的问题
我在网上查了很多关于 Spring Cloud 文件上传的相关资料也花费了不少时间,根据他们提供的方案修改也没有得到解决,终于在朋友的帮忙下,终于解决了我的问题,也与大家分享了下,如下:一、项目结构首先介绍一下项目结构,我们开发的项目结构比较简单xxx-api工程:这个工程主要是对外提供接口.service-xxx工程:这个工程承载核心业务处理服务二、上代码对于开发者来说,看代码比较实在,如下:xxx-api工程下的文件上传相关代码:1、xxx-api项目的 Controll原创 2022-04-14 11:52:19 · 3698 阅读 · 0 评论 -
Java List对象集合按对象属性分组、分组汇总、过滤等操作示例
import java.util.ArrayList;import java.util.List;import java.util.Map;import java.util.stream.Collectors;public class Test { public static void main(String[] args){ List<PersonData> list = new ArrayList<PersonData>(); ...原创 2022-04-07 10:15:01 · 4159 阅读 · 0 评论 -
启动spring boot 常用命令
方法一(测试时使用):java -jar xxxx.jar可按ctrl+c打断程序运行,或直接关闭窗口,程序退出。方法二(debug时使用):java -jar xxxx.jar &&表示在后台运行。当窗口关闭时,程序中止运行。方法三:nohup java -jar xxxx.jar &nohup 意思是不挂断运行命令,当账户退出或终端关闭时,程序仍然运行。缺省情况下该作业的所有输出被重定向到nohup.out的文件中方法四:nohup原创 2022-04-01 15:50:43 · 3704 阅读 · 0 评论 -
JAVA报错Error attempting to get column ‘XXX’ from result set. Cause: java.sql.怎么解决?
java中的实体类用到了LocalDateTime 类型。在转换时候报错Error attempting to get column ‘XXX’ from result set. Cause: java.sql.解决方法最为简单。是因为com.alibaba 的版本问题。切换版本号到1.1.22 即可消除问题com.alibaba druid-spring-boot-starter 1.1.22...原创 2022-03-30 10:51:55 · 7143 阅读 · 0 评论 -
【转载】Mybatis @xxxProvider 脚本组装器的使用
前言为什么会写这篇文章, 因为在看到MapperAnnotationBuilder构造方法初始化时, 发现了四个从未见过的注解 1 2 3 4 5 6 7 8 9 10 11 12 public MapperAnnotationBuilder(Configuration configuration, Class<?> type) { ... sq...原创 2022-03-29 17:53:12 · 105 阅读 · 0 评论 -
【转存】SpringBoot+Prometheus+Grafana打造可视化监控
一、背景SpringBoot的应用监控方案比较多,SpringBoot+Prometheus+Grafana是目前比较常用的方案之一。它们三者之间的关系大概如下图:关系图二、开发SpringBoot应用首先,创建一个SpringBoot项目,pom文件如下:<dependency><groupId>org.springframework.boot</groupId><artifactId&...原创 2022-03-23 09:34:42 · 343 阅读 · 0 评论 -
execution 表达式用法汇总
1.切所有controller下的请求项目结构任意公共方法的执行: 1 execution(public * (…)) ##public可以省略, 第一个 代表方法的任意返回值 第二个参数代表任意包+类+方法 (…)任意参数配置切入点: 1 2 @Pointcut("execution(* com.gcol.qy.web.system.controller..*.*(..))") public voi原创 2022-01-28 11:40:07 · 8109 阅读 · 1 评论 -
关于BindingResult的使用总结及注意事项
这篇文章主要介绍了关于BindingResult的使用总结及注意事项,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教BindingResult总结及注意事项记一个简单又好用的API:BindingResultBindingResult使用起来很简单,一般在controller中使用作用:用于对前端穿进来的参数进行校验,省去了大量的逻辑判断操作相关的校验API空检查@NotEmpty:用在集合类上面;不能为null,而且长度必须大于0 @N原创 2022-01-26 16:26:14 · 3087 阅读 · 0 评论 -
【转存】JWT (Json Web Token)详解
1. JSON Web Token是什么JSON Web Token (JWT)是一个开放标准(RFC 7519),它定义了一种紧凑的、自包含的方式,用于作为JSON对象在各方之间安全地传输信息。该信息可以被验证和信任,因为它是数字签名的。2. 什么时候你应该用JSON Web Tokens下列场景中使用JSON Web Token是很有用的:Authorization(授权) : 这是使用JWT的最常见场景。一旦用户登录,后续每个请求都将包含JWT,允许用户访问该令牌允许的路由、服务和资.原创 2022-01-25 15:06:27 · 340 阅读 · 0 评论 -
clickHouse 使用过程中注意的小细节(持续更新,欢迎留言)
1、clickHouse 查询时,大小写敏感,查询字段时,要注意设计字段的大小写。2、clickHouse 关联数据查询时,关联字段的类型要一致,如不一致可转换一下,如toString()3、clickHouse 虽与Mysql查询相似,但有些存在不同,注意多库查询时,进行数据库转换时的脚本组装,如 exists 关键字。...原创 2021-11-29 11:50:10 · 1581 阅读 · 0 评论 -
【转存】Spring boot +easyPOI Excel操作实现
我们不造轮子,只是轮子的搬运工。(其实最好是造轮子,造比别人好的轮子)开发中经常会遇到excel的处理,导入导出解析等等,java中比较流行的用poi,但是每次都要写大段工具类来搞定这事儿,此处推荐一个别人造好的轮子【easypoi】,下面介绍下“轮子”的使用。1、 在pom.xml中加入依赖<!--excel操作--><dependency> <groupId>cn.afterturn</groupId> <.原创 2021-11-17 14:46:20 · 1324 阅读 · 0 评论 -
spring boot-整合多数据源配置【转存】
简介主要介绍两种整合方式,分别是 springboot+mybatis 使用分包方式整合,和 springboot+druid+mybatisplus 使用注解方式整合。一、表结构在本地新建两个数据库,名称分别为db1和db2,新建一张user表,表结构如下:SQL代码:CREATE TABLE `user` ( `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '主键', `name` varchar(25) NOT NULL..原创 2021-11-12 14:16:36 · 178 阅读 · 0 评论 -
【转存】Spring AOP详解
Spring AOP详解一.前言 在以前的项目中,很少去关注spring aop的具体实现与理论,只是简单了解了一下什么是aop具体怎么用?,看到了一篇博文写得还不错,就转载来学习一下。AOPAOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过OOP允许开发者定义纵向的关..原创 2021-11-12 09:32:42 · 252 阅读 · 0 评论 -
spring boot 上传图片以及访问图片实现
在springboot中,上传图片或文件上传成功后,却无法访问。在springboot中,用相对的路径储存,也只是存储在临时的目录,一重启文件就会没有了。并且打为jar后,存入文件也会有问题。这时,需要配置一个虚拟路径,映射到物理路径上。比如在服务器将文件存在/usr/upload文件夹下,同时映射的路径为http://localhost:8080/image。那么处理上传文件的后台程序则写入文件/usr/upload文件夹下,通过浏览器访问localhost:8080/image/xxx.png,原创 2021-11-04 16:05:36 · 3710 阅读 · 0 评论 -
【转存】JAVA Tree 树形结构设计
一.树形结构数据一般都是以子父id的形式存在数据库中,查询的时候只是带有子id和parent_id的List集合并不是树形结构,所以我们现在要将普通的List集合转换为树结构数据(本工具类扩展操作树结构数据方法)1.工具类(TreeNodeUtil)代码示例:package com.ywb.pms.util.tree;import com.alibaba.druid.util.StringUtils;import com.ywb.pms.vo.BaseTreeNode;i原创 2021-11-03 14:00:27 · 883 阅读 · 0 评论 -
【转存】Swagger2 常用注解介绍
Swagger2常用注解介绍一、@Api用在请求的类上,表示对类的说明常用参数:tags="说明该类的作用,非空时将覆盖value的值"value="描述类的作用"其他参数:description 对api资源的描述,在1.5版本后不再支持basePath 基本路径可以不配置,在1.5版本后不再支持position 如果配置多个Api 想改变显示的顺序位置,在1.5版本后不再支持produces原创 2021-11-02 16:25:40 · 851 阅读 · 0 评论 -
Apache POI 之简单介绍
很多时候,需要一个软件应用程序来生成Microsoft Excel文件格式的报告。有时,甚至希望应用程序接收Excel文件作为输入数据。例如,为公司财务部门开发的应用程序将需要在Excel中生成所有输出。任何想要生成MS Office文件作为输出的Java程序员都必须使用预定义的只读API来执行此操作。Apache POI概述什么是Apache POI?Apache POI是一种流行的API,允许程序员使用Java程序创建,修改和显示MS Office文件。它是由Apache Software原创 2021-11-02 09:38:38 · 2677 阅读 · 0 评论 -
Activiti 基础信息汇总
1Activiti5.22.0 开发指南作者:竹子。时间: 2017 年 10 月版本: 0.0.11本文档主要的目标是总结 Activiti 开发问题。数据库Activiti 数据库命名activiti-5.22.0 总共有 25 张数据表,表的命名主要分为三个段,每个段之间都以下划线"_"隔开。且每个表都以 ACT 开头(第一段);第二段一般用两个字符表示功能模块,此段大体与服务 API 是匹配的;第三段以及之后才是表的正名。ACT_RE_*: "RE" 表示.原创 2021-11-02 09:37:10 · 572 阅读 · 0 评论 -
【转存】如何生成SSH key
如何生成SSH keySSH key提供了一种与GitHub通信的方式,通过这种方式,能够在不输入密码的情况下,将GitHub作为自己的remote端服务器,进行版本控制步骤检查SSH keys是否存在 生成新的ssh key 将ssh key添加到GitHub中 gevin-essay-how-to-generate-SSH-key.png 1. 检查SSH keys是否存在输入下面的命令,如果有文件id_rsa.pub 或 id_dsa.pub,则直接进入步..原创 2021-10-28 08:54:31 · 240 阅读 · 0 评论 -
【转存】java高并发解决方案
知识点线程安全,线程封闭,线程调度,同步容器,并发容器,AQS,J.U.C,等等高并发解决思路与手段扩容:水平扩容、垂直扩容缓存:Redis、Memcache、GuavaCache等队列:Kafka、RabitMQ、RocketMQ等应用拆分:服务化Dubbo与微服务Spring Cloud限流:Guava RateLimiter使用、常用限流算法、自己实现分布式限流等服务降级与服务熔断:服务降级的多重选择、Hystrix数据库切库,分库分表:切库、分表、多数据源高可原创 2021-08-10 15:17:11 · 1632 阅读 · 0 评论 -
Apache POI 教程
很多时候,需要一个软件应用程序来生成Microsoft Excel文件格式的报告。有时,甚至希望应用程序接收Excel文件作为输入数据。例如,为公司财务部门开发的应用程序将需要在Excel中生成所有输出。任何想要生成MS Office文件作为输出的Java程序员都必须使用预定义的只读API来执行此操作。Apache POI概述什么是Apache POI?Apache POI是一种流行的API,允许程序员使用Java程序创建,修改和显示MS Office文件。它是由Apache Software原创 2021-07-19 15:17:16 · 496 阅读 · 1 评论