
java学习笔记
文章平均质量分 69
全端工程师
DevOps 前端 后端 数据库 网络 都感兴趣~
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Stream API 进阶:筛选、映射、查找、归约
详细讲解流的各种实用操作:**筛选**、**切片**、**映射**、**查找**、**匹配**和**归约**。掌握这些高级操作将使你能够更加游刃有余地处理各种数据处理任务。通过丰富的代码示例,你将掌握如何利用这些操作高效处理数据,并体会到 Stream API 的强大之处。原创 2025-02-08 14:50:15 · 1097 阅读 · 0 评论 -
深入理解流(Streams)—— 声明式数据处理的艺术
Java 8 的流(Streams)是一种强大而优雅的数据处理工具。它通过声明式、函数式的风格,使代码更简洁、易读、高效。原创 2025-02-07 23:04:31 · 767 阅读 · 0 评论 -
Java 8 Lambda表达式详解:从入门到实践
Lambda表达式的引入,是Java语言发展的一个重要里程碑。它不仅使Java代码更简洁、更易读,还为Java带来了函数式编程的强大能力。Lambda表达式与Stream API(后续章节将详细介绍)的结合,更是开启了Java集合处理的新篇章。原创 2025-02-07 16:54:10 · 2062 阅读 · 0 评论 -
解密 Java Lambda 表达式中的 “effectively final“ 陷阱
本文深入探讨了 Java Lambda 表达式中 **"Variable used in lambda expression should be final or effectively final"** 错误的本质,全面解析了 **effectively final** 概念。 通过实例、变量捕获分析、`final` 与 effectively final 对比,以及对数据一致性和线程安全的理解,我们揭示了 effectively final 概念的重要性。原创 2025-02-06 23:03:14 · 1124 阅读 · 2 评论 -
Java行为参数化:从啰嗦到简洁的代码进化
行为参数化是一种强大的编程思想,它可以让你编写出更灵活、更可复用、更易于维护的代码。Java 8 的 Lambda 表达式为行为参数化提供了简洁、优雅的语法支持,大大提高了开发效率。原创 2025-02-06 20:16:09 · 575 阅读 · 0 评论 -
接口和抽象类的区别
接口与抽象类的区别原创 2022-07-27 21:54:21 · 622 阅读 · 0 评论 -
OpenFeign日志
OpenFeign日志1、作用2、日志级别3、配置日志bean4、开启日志5、修改logback日志级别6、查看结果1、作用OpenFeign提供了日志打印功能,我们可以通过配置来调整日志级别,从而了解OpenFeign中Http请求的细节。即对OpenFeign远程接口调用的情况进行监控和日志输出2、日志级别NONE:默认级别,不显示日志BASIC:仅记录请求方法、URL、响应状态及执行时间HEADERS:除了BASIC中定义的信息之外,还有请求和响应头信息FULL:除了HEADERS中定原创 2021-05-25 15:43:46 · 535 阅读 · 0 评论 -
LocalDateTime的json格式化问题
LocalDateTime的json格式化问题package com.atguigu.srb.base.config;import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;import org.springframework.beans.factory.annotation.Value;import org.springframework.boot.autoconfigure.jackson.Jackson原创 2021-05-25 13:55:05 · 624 阅读 · 0 评论 -
ListToTreeUtil(从数据库查出List转成Tree)
ListToTreeUtil(从数据库查出List转成Tree)一、实体二、使用工具类直接生成前言:在开发中,经常会碰到需要将数据库中的List转换成一个Tree,例如:评论列表、系统菜单、部门关系、商品分类等等。这个工具类就是用来直接将数据库中的List数据,根据parentId和id字段将其直接转成一个前端可以使用的Tree。一、实体@Data@JsonInclude(JsonInclude.Include.NON_NULL)public class SumTree<T> {原创 2021-04-06 15:18:19 · 716 阅读 · 0 评论 -
SpringBoot中配置一个Interceptor
SpringBoot中配置一个Interceptor一、准备JWT解析token1. 在appcation.yml文件中配置公钥所在地址和Cookie的名称2. 编写一个配置属性类,读取值二、编写拦截器三、将拦截器注册前言:在B站学习springBoot商城项目的时候,做到购物车模块,前台要向数据库中添加商品,或者删除、修改时,每一个Controller方法都必须先解析token中的用户信息,才能明白要添加到谁的购物车,所以我们抽取一层,把解析用户信息的工作放到拦截器中。一、准备JWT解析token原创 2021-03-20 12:02:39 · 1185 阅读 · 0 评论 -
ThymeLeaf实现页面静态化
页面静态化一、简介1.什么是页面静态化?2.如何实现静态化?二、实现静态化1. ThymeLeaf概念2.代码实现一、简介1.什么是页面静态化?静态化是指把动态生成的HTML页面变成静态内容来保存,之后用户的请求到来,直接访问静态页面,不再经过服务的渲染。静态的HTML页面时可以部署在nginx中,从而极大地提高并发访问能力,减小tomcat压力。2.如何实现静态化?静态化页面都是通过模板引擎来生成的,而后保存到nginx服务器部署,常用的模板引擎有:FreemarkerVelocityT原创 2021-03-04 19:01:54 · 1041 阅读 · 4 评论 -
JSR303自定义校验
文章目录前言一、编写一个自定义校验注解1.新建一个Annotation二、使用步骤1.引入库2.读入数据总结前言虽说BeanValidation支持使用@Pattern做正则校验,但是很多时候还是不能满足我们的需求。譬如如下场景:显示状态showStatus只支持0和1两种情况。这时,我们就可以用到自定义校验。一、编写一个自定义校验注解1.新建一个Annotation注解必须满足JSR303规范。二、使用步骤1.引入库代码如下(示例):import numpy as npimpor.原创 2021-01-22 17:33:33 · 532 阅读 · 0 评论 -
使用@ControllerAdvice+@ExceptionHandler做统一异常处理
学习目标:提示:这里可以添加学习目标例如:一周掌握 Java 入门知识学习内容:提示:这里可以添加要学的内容例如:1、 搭建 Java 开发环境2、 掌握 Java 基本语法3、 掌握条件语句4、 掌握循环语句学习时间:提示:这里可以添加计划学习的时间例如:1、 周一至周五晚上 7 点—晚上9点2、 周六上午 9 点-上午 11 点3、 周日下午 3 点-下午 6 点学习产出:提示:这里统计学习计划的总量例如:1、 技术笔记 2 遍2、优快云 技术博客 3 篇原创 2021-01-21 23:38:49 · 282 阅读 · 4 评论 -
JSR303——Bean Validation的介绍以及使用
JSR303——Bean Validation的介绍以及使用JSR是Java Specification Requests的缩写,意思是Java 规范提案,是Java的一个重要标准。JSR-303 是JAVA EE 6 中的一项子规范,叫做Bean Validation,Hibernate Validator 是 Bean Validation 的参考实现 。一、如何使用?1.给实体类添加校验注解图中是这个包下所有能用的校验注解,用法参考如下代码@Data@TableName("pms_br原创 2021-01-21 21:03:56 · 373 阅读 · 6 评论 -
OSS服务端签名后直传
OSS服务端签名后直传1.阿里云OSS启动器快速上手1)引入oss-starter // 1)引入oss-starter <dependency> <groupId>com.alibaba.cloud</groupId> <artifactId>spring-cloud-starter-alicloud-oss</artifactId></dependency>2)在配置文件中配置好ak、as、ep相关信息即可原创 2021-01-20 22:37:04 · 1207 阅读 · 0 评论 -
三种常见的单点登录方式
三种常见的单点登录方式原创 2020-12-20 21:01:52 · 211 阅读 · 1 评论