
java常用小功能
文章平均质量分 58
。。
厄尔尼诺的夏天
热爱各有不同,青年本该如此,每一代逐日移山的青年,都有自己奋不顾身的热爱,每一份炽烈的热爱,都值得被用心对待
展开
-
@Autowried注入bean失效为null问题以及解决办法
引用的类没有被容器管理也会出现bean失效为null的问题,因为其他原因,引用的类无法被容器管理。所以只能使用其他办法注入bean。或者直接使用hutool的工具类 springUtil的getBean()3.new的对象中的@Autowried也会有null问题。1.有没有被容器管理的注解。4.注解用在了静态对象上。原创 2024-08-30 11:17:38 · 328 阅读 · 0 评论 -
CSV文件导出
txt、csv、tsv都属于文本文件csv又有叫做Char-separated values(字符分隔值类型),通过字符值进行分隔。但因为半角逗号在数据中出现的的可能性比较大,所以经常会使用文本包装符来标识逗号为数据中的一部分,或者直接使用其它特殊符号作为分隔符。转载 2023-09-04 21:43:19 · 2479 阅读 · 0 评论 -
java的动态代理
jdk动态代理cglib动态代理jdk动态代理是由java内部的反射机制来实现的,cglib动态代理底层则是借助asm来实现的。反射机制在生成类的过程中比较高效,而asm在生成类之后的相关执行过程中比较高效(可以通过将asm生成的类进行缓存,这样解决asm生成类过程低效问题)。jdk动态代理的应用前提是目标类必须基于统一的接口。因此,jdk动态代理有一定的局限性,cglib这种第三方类库实现的动态代理应用更加广泛,且在效率上更有优势。转载 2022-10-13 16:09:41 · 5251 阅读 · 1 评论 -
java中使用hutool调用get请求,post请求
2、java中https协议调用get请求。1、java中http协议调用get请求。原创 2022-10-13 15:28:48 · 17597 阅读 · 0 评论 -
常用的工具类
1. Collectionsjava.util包下的Collections类1.1 排序 List<Integer> list = new ArrayList<>(); list.add(2); list.add(1); list.add(3); Collections.sort(list);//升序 System.out.println(list); Collections.reverse(list);//降序 System.out.pr转载 2022-05-30 15:40:26 · 728 阅读 · 0 评论 -
String的replaceAll()方法
代码: String tempName1 = "M3".replaceAll("([A-Z])([0-9])", "_$0"); System.out.println(tempName1); String tempName2 = "M3".replaceAll("([A-Z])([0-9])", "_$1"); System.out.println(tempName2); String tempName3 = "M3".r.原创 2022-05-16 17:45:12 · 1463 阅读 · 0 评论 -
创建线程池并使用
文章目录一、pandas是什么?一、pandas是什么?原创 2021-11-23 20:14:22 · 363 阅读 · 0 评论 -
MapStruct使用
MapStruct是一个Java注释处理器,用于生成类型安全的bean映射类。您要做的就是定义一个映射器接口,该接口声明任何必需的映射方法。在编译期间,MapStruct将生成此接口的实现。此实现使用简单的Java方法调用在源对象和目标对象之间进行映射,即没有反射或类似内容。与手动编写映射代码相比,MapStruct通过生成繁琐且易于出错的代码来节省时间。遵循配置方法上的约定,MapStruct使用合理的默认值,但在配置或实现特殊行为时不加理会。原创 2023-02-04 23:09:49 · 823 阅读 · 0 评论 -
使用反射调用父类,超父类中方法
/可以调用类中的所有方法(不包括父类中继承的方法)Method method=clazz.getMethod(name);//可以调用类中有访问权限的方法(包括父类中继承的方法)返回描述此 Method 的字符串,包括类型参数。1.创建一个Person类,写几个方法。返回描述此 Method 的字符串。2.使用反射调用私有方法。原创 2023-01-31 21:19:13 · 737 阅读 · 0 评论 -
手动触发参数上枚举校验
【代码】手动触发参数上枚举校验。原创 2023-01-30 20:49:09 · 494 阅读 · 0 评论 -
java异步功能
异步执行对于开发者来说并不陌生,在实际的开发过程中,很多场景多会使用到异步,相比同步执行,异步可以大大缩短请求链路耗时时间,比如:发送短信、邮件、异步更新等,这些都是典型的可以通过异步实现的场景。线程ThreadFuture异步框架CompletableFutureSpring注解@AsyncSpring ApplicationEvent事件消息队列第三方异步框架,比如Hutool的ThreadUtilGuava异步。转载 2023-01-27 22:35:18 · 1860 阅读 · 0 评论 -
自定义注解校验枚举值
如果状态是0,1,3 则可以用不连续数字自定义注解校验// 元注解表示该注解可以用在的地方,此定义注解可以用在属性上// 元注解被它所注解的注解保留多久String message() default "类型不匹配";Class原创 2023-01-08 11:03:45 · 1798 阅读 · 0 评论 -
定时任务 cron表达式
整体规则cron表达式格式:{秒数} {分钟} {小时} {日期} {月份} {星期} {年份(可为空)} Cron表达式范例: */5 * * * * ? :每隔5秒执行一次0 */1 * * * ? :每隔1分钟执行一次0 0 23 * * ? :每天23点执行一次0 0 1 * * ? :每天凌晨1点执行一次:0 0 1 1 * ? :每月1号凌晨1点执行一次0 0 23 L * ? : 每月最后一天23点执行一次0 0 1 ? * L :每周星期天凌晨1点实行一次0 26,原创 2021-12-30 16:46:42 · 4654 阅读 · 0 评论 -
springBoot监听器ApplicationEventPublisherAware应用
好处监听器可以使核心业务与子业务进行解耦,也方便后期的业务的扩展。如新用户注册之后,发送邮件或短信,此时可以在保存用户之后,发布一个新用户的注册成功事件,通过监听该事件来实现发送邮件或短信的功能。后期新增一个对新用户进行xxx功能,此时可以新写一个监听注册成功事件的监听器,来处理新的业务逻辑,而不需要修改之前的注册逻辑。代码实体类package com.erp.payroll.evenlistener;/** * @author guang * @version V1.0 * @Packa原创 2021-12-01 10:34:19 · 1955 阅读 · 1 评论 -
post传递url调用爬虫
post传递url调用爬虫private void executePost(CommodityDetailsVo commodityDetailsVo) { CloseableHttpClient httpClient = HttpClients.createDefault(); Map<String, Object> paramMap = new HashMap<>(); paramMap.put("member_id", comm原创 2021-08-13 12:47:03 · 159 阅读 · 0 评论 -
少量枚举类自定义注解校验参数
自定义注解前言一、枚举校验二、连续数字状态校验三、不连续数字自定义注解校验注意前言传参时候总会遇到各式各样的传参,有些状态传参,0或1,有些不连续的数值传参像1,2, 5等,本文主要记录这两种参数校验的解决方式一、枚举校验枚举校验一般是用在逻辑之中进行的参数校验private void checkStatus(Integer imgStatus) { if (ObjectUtil.isEmpty(BankBannerEnums.STATUS.findByCode(imgSta原创 2021-10-22 14:31:27 · 262 阅读 · 0 评论 -
IService和他的多个ServiceImpl
记录简单的接口和他的多个实现类的准确调用IService和他的多个ServiceImpl先上接口代码public interface IWorkFlowHandler<REQ1, VO1, REQ2, REQ3, REQ4, REQ5, REQ6, REQ7, REQ8, VO8, REQ9> { /** * 分页列表 * @param req1 * @return */ IPage<VO1> listPage(REQ原创 2021-10-29 14:24:01 · 2004 阅读 · 0 评论 -
idea快捷键技巧
Idea使用技巧随着IDEA的大热,越来越多的人想要学习Idea的使用,但是idea和eclipse完全不同的快捷键和操作方式使得大家的学习成本非常高昂,虽然idea提供了eclipse的快捷键模式,但是兼容度并不完美,还有部分按键的混乱让人使用起来非常的不爽。如果你也有以上烦恼,那么恭喜你找到了捷径,本文提供了让你快速上手idea的机会。本文和市面上大多的博文的不同之处在于,本文并没有随意的罗列idea那庞大的快捷键清单。而是选择了工作中你常用的,并且使用频率在100%、80%、60%、30%等非常高频原创 2021-10-10 22:46:27 · 1446 阅读 · 0 评论 -
Java项目启动时执行指定方法的几种方式
很多时候我们都会碰到需要在程序启动时去执行的方法,比如说去读取某个配置,预加载缓存,定时任务的初始化等。这里给出几种解决方案供大家参考。一、使用@PostConstruct注解这个注解呢,可以在Spring加载这个类的时候执行一次。来看一下下方代码。@Componentpublic class Test { public Test(){ System.out.println("我最先执行"); } /**原创 2021-11-30 19:46:16 · 2753 阅读 · 1 评论 -
@mapper导包错误
项目场景:启动项目时候出错问题描述:提示报错信息Can't generate mapping method with primitive return type.Can't generate mapping method from iterable type to non-iterable type.Can't generate mapping method from non-iterable type to iterable type.Can't generate mapping meth原创 2021-10-27 17:22:32 · 1157 阅读 · 0 评论 -
batchUpdate sql异常
项目场景:batchUpdate,书写 sql时候出现sql异常问题描述:batchUpdate,书写 sql时候出现sql异常,之前公司一直使用,没有问题<update id="updateAllAvailable"> <foreach collection="skuOptionList" item="item" index="index" open="" close="" separator=";"> update t_xxx <s原创 2021-10-27 17:28:15 · 507 阅读 · 0 评论 -
Integer 在-128-127之间发生了什么?
Integer 在-128-127之间发生了什么?Integer的.equals和==思考最初的问题静态内部类IntegerCache初始化缓存的过程如下Integer的.equals和==这是一个基础的问题,掌握一些java的人,或许能讲出一些为什么。但是再深究一下才会发现这究竟是为什么一段普通的代码public class Demo { public static void main(String[] args) { Integer i1 = 100;原创 2021-10-28 21:02:12 · 442 阅读 · 0 评论 -
定时任务 @Scheduled(cron = “ “)
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档定时任务一、定时任务 @Scheduled(cron = " ")二、其他定时任务一、定时任务 @Scheduled(cron = " ")简单的定时任务,在方法上加入注解就可以实现定时,定时规则如下按顺序依次为秒(0~59)分钟(0~59)小时(0~23)天(月)(0~31,但是你需要考虑你月的天数)月(0~11)天(星期)(1~7 1=SUN 或 SUN,MON,TUE,WED,THU,FRI,SAT)7.年份(原创 2021-08-03 22:13:40 · 1881 阅读 · 0 评论 -
java8 stream 的项目应用
提示:项目中常用lambda的表达式java8 stream 的项目应用案例案例// 转成set时直接用toSet,或者用.distinct()做去重// 把实体类的集合抽出某属性转成listList<Integer> collect = banners.stream().map(BankBanner::getPictureSort).collect(Collectors.toList());// 把实体类的集合转map//返回 对象集合以类属性一升序排序list.s原创 2021-10-22 17:25:27 · 594 阅读 · 0 评论 -
解决try-catch (持续学习更新.......)
简洁代码格式,持续学习更新解决try-catch 一、解决controller层过多的try-catch一、解决controller层过多的try-catch1.使用注解@ControllerAdvice@ExceptionHandler@ControllerAdvicepublic class ExceptionConfigController { // 专门用来捕获和处理Controller层的空指针异常 @ExceptionHandler(NullPointerExce原创 2021-10-27 16:02:19 · 219 阅读 · 0 评论