
Java 随手记
Java 随手记
王疏蔬
不积跬步无以至千里,不积小流无以成江海
展开
-
Java EasyExcel 导入带图片
项目中,要求批量导入 Excel 数据并读取其中图片,目前 EasyExcel 不支持读取图片,因此需要使用 Apache POI 进行导入。然而Apache POI 需要开发者手动管理行、列、单元格等对象,相对较为底层且繁琐。作者随即想到了一种方法,既能够使用 EasyExcel 的简便导入方式,又能够识别图片并进行处理。原创 2024-10-22 15:50:34 · 2001 阅读 · 2 评论 -
IDEA 自定义注释模板
【配置】IDEA 自定义注释模板。原创 2024-04-23 17:07:05 · 3890 阅读 · 0 评论 -
SpringBoot 实现发送邮件及工具类封装
pom.xml 引入相关依赖 <!--mail--> <dependency> <groupId>com.sun.mail</groupId> <artifactId>javax.mail</artifactId> <version>1.6.2</version> </dependency> <!--邮件模块依赖--> <dependency&g转载 2022-05-26 12:16:51 · 1449 阅读 · 6 评论 -
MyBatis-Plus 多数据源
引言一个基于springboot的快速集成多数据源的启动器。这是一个第三方 mybatis 扩展库,与 mybatis-plus 本身无关。dynamic-datasource-spring-boot-starter 是一个基于springboot的快速集成多数据源的启动器。其支持 Jdk 1.7+, SpringBoot 1.4.x 1.5.x 2.x.x。使用方法1. 引入dynamic-datasource-spring-boot-starter。<dependency&g原创 2022-04-27 16:52:09 · 270 阅读 · 0 评论 -
解决浏览器跨域访问
引言直接关闭浏览器的跨域检测。方法新建一个Chrome浏览器快捷方式。右击,属性,修改启动参数设置启动参数--disable-web-security --user-data-dir=D:\chrome-temp原创 2022-04-24 09:06:20 · 1864 阅读 · 0 评论 -
Redis Key 键值公共方法定义
引言经常使用redis,固定前缀key每次都定义在当前类下,查询或储存redis时总是需要key+参数去操作,开发人员固守自封,后期维护成本加大,也看的不是很直观。在最近的项目业务中,发现了比较好的处理方式,所以拿出来一起分享,当然还有很多更加优秀的方案,这里只是分享出来,供大家参考研究。说一下该方案大体的思路,通过定义公共key键值类,定义公共的查询key键值方法,来来统一管理,大大提升了代码的通用性。当然,该方案思路不仅限于redis,可合理化的修改为自己想要的方案,这里通过redis实例来进原创 2022-04-24 09:06:29 · 826 阅读 · 0 评论 -
MySQL 函数递归查子级
一、选择函数,新建函数二、定义函数文件名称,选择函数,选择完成三、查看函数内容四、把代码替换到上图,然后保存CREATE DEFINER=`admin`@`%` FUNCTION `get_value_of`(in_id varchar(32)) RETURNS varchar(1000) CHARSET utf8begin declare ids varchar(1000) default ''; declare tempids varchar(1000); set tem原创 2022-04-24 09:06:44 · 6415 阅读 · 0 评论 -
Java 操作 Linux 服务器 上传文件并执行脚本
一、本项目核心目的(目前支持.sql 和 .py脚本,.java脚本跟.py脚本大同小异,只是命令不同)1.从A服务器获取脚本文件2.上传到B服务器指定文件夹3.通过命令执行上传后得脚本文件4.返回执行结果二、核心jar包<!--sftp文件上传--> <dependency> <groupId>com.jcraft</groupId> <artifactId>jsc原创 2022-04-24 09:06:37 · 1182 阅读 · 0 评论 -
MultipartFile 对上传的文件大小进行限制
@Slf4j@Componentpublic class MultipartFileUtil {private final static Integer FILE_SIZE = 5;//文件上传限制大小private final static String FILE_UNIT = "M";//文件上传限制单位(B,K,M,G) /** * @param len 文件长度 * @param size 限制大小 * @param unit 限制单位(B,K,M原创 2022-04-22 11:22:20 · 11306 阅读 · 0 评论 -
Java 外部接口MD5验签
import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONObject;import org.apache.commons.lang3.StringUtils;import org.springframework.util.DigestUtils;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bi原创 2022-04-22 11:18:01 · 1480 阅读 · 0 评论 -
Java 两个List按照其中一个List元素顺序对另一个List元素进行排序
根据orderList顺序排序,orderList不存在的元素放置在targetList最后面 // 根据orderList顺序排序,orderList不存在的元素放置在targetList最后面 private static void sort1(List<String> targetList, List<String> orderList) { targetList.sort(((o1, o2) -> { int .原创 2022-04-22 11:16:17 · 4198 阅读 · 0 评论 -
Java 递归生成层级树
引言通用于菜单树、机构树、组织树等方法 /** * 返回层级结构树 */ public List<实体> getStructure() { //查询所有数据 List<实体> allList = mapper.selectAll(); //查询顶级数据 List<实体> topList = mapper.getTop(); //为一级数据设置子数据,getChild是原创 2022-04-22 11:10:26 · 780 阅读 · 0 评论 -
JPA 自定义sql语句
1.什么是JPAJPA是Java Persistence API的简称,中文名Java持久层API,是JDK 5.0注解或XML描述对象关系表的映射关系,并将运行期的实体[对象持久化]到数据库中。Sun引入新的JPA ORM规范出于两个原因:其一,简化现有Java EE和Java SE应用开发工作;其二,Sun希望整合ORM技术,实现天下归一。#2.insert 插入时规避值 为null的字段/** *复杂JPA操作 使用@Query()自定义sql语句 根据业务id UId去更新整原创 2022-04-22 11:04:23 · 4271 阅读 · 0 评论 -
Java设计RestCodeEnum枚举,实现接口统一格式返回
1.接口返回值枚举定义 /** *接口返回枚举定义 */ public enum RestCodeEnum { SUCCESS("200", "处理成功"), ERROR("500", "系统异常"); private String code; private String msg; RestCodeEnum(String code, String msg) { this.code = code;原创 2022-04-22 10:59:30 · 2401 阅读 · 0 评论 -
Java 枚举定义
第一种:valuepublic enum JdbcDriverTypeEnum { /** * mysql */ MYSQL("com.mysql.cj.jdbc.Driver"), ORACLE("oracle.jdbc.driver.OracleDriver"); private String value; JdbcDriverTypeEnum(String value) { this.value = value;原创 2022-04-22 10:22:38 · 2130 阅读 · 0 评论