![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
文章平均质量分 63
Program W
这个作者很懒,什么都没留下…
展开
-
Java 8 Stream 流式操作
Stream不同于其他集合框架,它也不是某种数据结构,也不会保存数据,但是它负责相关计算,使用起来更像一个高级的迭代器。在之前的迭代器中,我们只能先遍历然后在执行业务操作,而现在只需要指定执行什么操作,Stream 就会隐式的遍历然后做出想要的操作。另外 Stream 和迭代器一样的只能单向处理,如同奔腾长江之水一去而不复返。转载 2022-04-12 09:55:58 · 142 阅读 · 0 评论 -
SpringBoot单体任务调度
一、可变对象把对象a赋值给对象b,更改对象b的属性值,被引用的对象a也随之改变,这就是可变对象。var a = {name: '张三', age: 18}, b = a;b.name = '李四';a.name; // "李四"为啥会这样呢?其他字符串和数值怎么不会变?要搞懂这个问题,我们必须了解下其内部的存储逻辑。JavaScript有7种基本数据类型:number、string、boolean、null、undefined、object 以及 ES6 新增的symbol。除了 ob原创 2022-03-30 13:51:29 · 708 阅读 · 0 评论 -
Spring各注册bean注解对应模式及其生命周期存亡
一、注解模式@Component注解默认实例化的对象是单例,如果想声明成多例对象可以使用@Scope(“prototype”)@Repository默认单例@Service默认单例@Controller默认多例二、Spring中的bean的生命周期singleton(全局的)是随着spring的存亡而存亡prototype 又叫多例模式,用的时候就new一下,用完就没有了。session 存在这一次会话 session 中,session过期后它就没了。request原创 2022-03-30 13:08:19 · 658 阅读 · 0 评论 -
SpringBoot用@Validation与@Valid校验数据
一、@Validated和@Valid的区别@Valid属于标准JSR-303规范的标记型注解,@Validated则是Spring的注解,是对JSR-303的补充@Valid可以用在属性级别约束,用来表示级联校验。主要区别 @Validated@Valid分组提供分组功能,可在入参验证时,根据不同的分组采用不同的验证机制。无分组功能可注解位置 可以用在类型、方法和方法参数上。但是不能用在成员属性上可以用在方法、构原创 2022-01-14 13:02:13 · 973 阅读 · 0 评论 -
用了这么久的泛型,终于知道它到底是什么了
一个朋友学会Java泛型后直接薪资翻倍!1. 概述泛型在java中有很重要的地位,在面向对象编程及各种设计模式中有非常广泛的应用。什么是泛型?为什么要使用泛型?泛型,即“参数化类型”。一提到参数,最熟悉的就是定义方法时有形参,然后调用此方法时传递实参。那么参数化类型怎么理解呢?顾名思义,就是将类型由原来的具体的类型参数化,类似于方法中的变量参数,此时类型也定义成参数形式(可以称之为类型形参),然后在使用/调用时传入具体的类型(类型实参)。泛型的本质是为了参数化类型(在不创建新的类型的情况下,转载 2022-01-06 17:47:27 · 105 阅读 · 1 评论 -
处理项目运行正常,但mapper.xml中resultmap中type无法导航到实体(+property爆红cannot find declaration to go to)
一、说明查了网上很多:发现很多都是1、什么要import项目而不是直接打开2、或者给项目加Sources标记3、要么就说mybatisx(插件中的)和lombok冲突,关掉其中一个第一个导入第二个源标记mybatisx插件二、我的解决1、先看看问题初始并不影响项目运行,但是无法通过type直接导航到实体类(有的说是开mybatis: type-aliases-package:,事实上,项目跑通了,肯定设置了)。最终解决因为我最初用的插件是Free My原创 2021-12-03 13:51:24 · 6144 阅读 · 6 评论 -
《看不懂你打我系列》之 —— 极简mybatis缓存【看查sql执行流程源码】
mybatis版本:3.4.6 题外话 先说点题外话,作为技术工作者,学习框架或技术,我觉得有3个方面需要去思考。 是什么? 这个东西是什么?要怎么使用?在什么场景下需要使用? 为什么? 为什么有这个东西,它能解决什么问题? 怎么做到的? 框架或技术,就是工具。是工具,就有不好使的时候。工具不好使了,怎么办呢? 修! 不懂原理的话怎么修?所以,要至少了解它的一些基本原理与思路,了解它是如何起作用的,才能够游刃有余,玩弄它于股掌 昨天花了一天时间温习m...转载 2021-11-23 14:41:55 · 85 阅读 · 0 评论 -
JVM系列---内存结构(运行时数据区)
文章目录一、内存结构(运行时数据区)二、程序计数器(PC寄存器)三、虚拟机栈四、本地方法栈五、堆六、方法区一、内存结构(运行时数据区)这里引用尚硅谷的中英文的图(运行时数据区)二、程序计数器(PC寄存器)概念:JVM中的程序计数寄存器( Program Counter Register) 中,Register 的命名源于CPU的寄存器,寄存器存储指令相关的现场信息。 CPU只有把数据装载到寄存器才能够运行。理解:运行时数据区的后三者(虚拟机栈、PC寄存器、本地方法栈)是线程私有的原创 2021-10-24 12:36:30 · 1359 阅读 · 0 评论 -
缓存系列---@Cacheable和@CachePut、@CacheEvict实现基础缓存
先说细节bug一组缓存须要key相同。而一般须要缓存的数据有时list这样的,当查这个list数据不带参数时,就难以直接使用spel获取实体的参数使@Cacheable和@CachePut的key保持一致。所以看了下SpEL(Spring表达式语言)支持cache metadata(缓存元数据)发现其中可以使用的#root.target、#root.targetClass、#root.caches[0].name这三个作为key让两个key保持一致。Spel细节见之前的博客的文末:缓存cach原创 2021-10-08 17:46:26 · 720 阅读 · 0 评论 -
springboot+thymeleaf项目本地映射访问页面没问题,部署就500
一、先说重点,解决这个500先看下其他两个能访问的映射路径这两个mapping是能访问的@GetMapping("/back/index")return "back/index"; } else { return "redirect:/goLogin"; }@GetMapping("/toEditArticle")return "back/editArticle";再看下不能访问的mapping@GetMap原创 2021-09-27 14:33:44 · 751 阅读 · 0 评论 -
Java8的Stream那么强大,那你知道它的原理是什么吗?
Java 8 API添加了一个新的抽象称为流Stream,可以让你以一种声明的方式处理数据。Stream 使用一种类似用 SQL 语句从数据库查询数据的直观方式来提供一种对 Java 集合运算和表达的高阶抽象。Stream API可以极大提高Java程序员的生产力,让程序员写出高效率、干净、简洁的代码。本文会对Stream的实现原理进行剖析。Stream的组成与特点Stream(流)是一个来自数据源的元素队列并支持聚合操作:元素是特定类型的对象,形成一个队列。 Java中的Stream并_不会_向转载 2021-09-24 13:53:53 · 185 阅读 · 0 评论 -
工作流(Activiti)的学习
文章目录一、 什么是工作流二、 工作流技术的优点三、Java中两个主流的工作流系统四、Activity工作流的要点4.1、安装Activity插件,绘制Activity工作流图4.2、ProcessEngine对象,Activity工作流引擎4.3、Activiti核心配置文件activiti.cfg.xml4.4、5种数据库表4.5、23张表4.6、5项Service4.7、7项基本操作五、工作流引擎内部对象六、工作流的23种控制模式一、 什么是工作流工作流是:将一组任务组织起来以完成某个经营原创 2021-07-07 17:05:56 · 898 阅读 · 0 评论