java
文章平均质量分 85
岭岭颖颖
这个作者很懒,什么都没留下…
展开
-
ThreadLocal面试一网打尽,直接干源码
ThreadLocal原创 2022-10-24 23:29:36 · 1121 阅读 · 0 评论 -
Spring Bean 生命周期和Spring循环依赖面试及其源码讲解
Spring Bean生命周期和Spring循环依赖原创 2022-10-02 23:24:12 · 769 阅读 · 0 评论 -
并发编程面试题——AQS源码解读
讲解java并发编程AQS源码原创 2022-07-11 00:31:32 · 595 阅读 · 0 评论 -
HashMap扩容机制,put(),get()和源码分析全都有,让你不再怕HashMap的面试题
今天抽时间来把HashMap源码来给大家分享下,好久没和大家分享技术知识点了,手速和脑速感觉都有点跟不上了,今天就简单的和大家来分享下HashMap源码;记住哦,直接分享源码,可能会比较枯燥,比较乏味,但是干货和知识点还是非常多,收益将会大大滴,来吧,老规矩,废话少说,撸起袖子,直接上干货,开干!1、HashMap简介java在数据结构中映射接口中定义了一个java.util.Map接口,Map接口主要有四个实现类,分别是HashMap、LinkedHashMap、HashTable和TreeMap,它原创 2021-11-07 18:14:41 · 767 阅读 · 2 评论 -
吃透ArrayList源码分析
在网上找了些ArrayList的讲解,包括源码分析,找来找去,感觉内容讲的不是那么精髓,今天呢,我就斗胆给大家分享下我对ArrayList的理解哈,斗胆哈哈。 首先呢,我只讲java集合下ArrayList,其余LinkList、Map和Set等内容我在这篇文章中不进行分享,它们将依次在我的以后文章中出现和大家分享。1、概述 &原创 2021-08-13 16:49:56 · 168 阅读 · 0 评论 -
R类统一封装返回结构
上周看了下Java统一返回R类的相关知识点,今天呢,已经下班了,正好没啥事就来给大家来整理下这方面知识文章,希望能在编程的世界中助大家一臂之力,老规矩,废话上说,开始干吧。1、为什么使用统一封装R类 在项目中,尤其是多人开发的项目中,如果不进行统一封装数据返回,没有固定格式返回,你可以想象一下前端在对接口绑定的时候,前端那个头大啊。因此在开发时,一般会返回统一格式原创 2021-07-28 11:27:36 · 1280 阅读 · 0 评论 -
拿下登录拦截、jwt生成token和验证token,争取月薪30+K
前两天自己写的项目中使用到了登录时采用jwt加密、系统拦截、验证、登录的功能,今天抽出时间来给大家进行详细讲解下其含义和如何使用。来吧小老弟,废话少说,开始步入正题。 这里我只给大家讲后端内容,涉及的前端内容就不给大家进行讲解(小声逼逼:其实俺也不会前端、、、)1、请求拦截 编写配置类,继承WebMvcConfigurerAdapter重写addInterceptors方法来将我们自定义的拦截器注册原创 2021-07-07 18:37:09 · 302 阅读 · 0 评论 -
java对象引用发生改变和String、Integer和int理解与解释
俺又来了,今天给大家分享的东西比较杂,本来打算只分享java中new出来对象当作一个参数传递给其他对象后,被改变后,那么这个对象也会改变(具体怎么表达我也不太知道如何表达,等下用具体例子来给大家演示),然后在找资料的时候,发现了很多讲String、Integer和int中三者比较的是关系;然后索性今天这篇文章把这也给大家分享下吧,好了,废话少说,直接上干货。1、java中new出来对象详解 &nbs原创 2021-05-16 18:50:52 · 653 阅读 · 0 评论 -
项目中解决redis缓存击穿和缓存穿透两大常见问题
真快,今天都是农历2020年腊月二十三啦,也就是我们北方人所称呼的“小年”,家里的父老乡亲们都以背起行囊回到了家乡,然而我还在一线进行奋斗着辛苦搬砖,公司马上也要快放假了,我这上周给大家承诺的分享项目中解决redis缓存击穿和缓存穿透问题还没兑现呢,最近出来新项目一直在赶赶、、、现在闲下来一会,赶紧写这篇文章给大家分享下,废话少说,开始干,干就完了,接下来开始。 r原创 2021-02-04 17:55:03 · 581 阅读 · 0 评论 -
mybatis中的Mapper.xml标签具体分析
哎呀,父老乡亲们,好久不见啊,最近在赶新项目,好久没给大家做分享了,今天闲下来了,整理下最近写的代码,总结总结,然后今天准备给大家出两篇文章,一篇讲关于Mybatis.xml中的标签分析和接下来将要分享的在代码中真实解决掉redis带来的缓存击穿和缓存穿透问题;希望大家给我点赞转发和收藏,给我动力,让我今天把这两个知识点给大家分享完呀。好了,废话少说,现在开始干,干就完了、、、接下来开始!  原创 2021-01-29 20:20:37 · 4504 阅读 · 4 评论 -
springBoot双重集合如何查询,mapper.xml如何编写
中午吃饭还有一段时间,来和大家赶紧聊聊双重集合循环中的mapper.xml如何编写,哎,刚刚又听到不好的消息,让去出差、、、写文章写文章。 先写下PmsProductSaleAttr实体:package com.ygl.gmall.bean;import javax.persistence.Column;import javax.p原创 2021-01-08 11:44:06 · 1131 阅读 · 1 评论 -
看了我的文章,保你对@ResponseBody @RequestBody @RequestParam @PathVariable @PathParam() 和@Param()注解没有不懂得
哎呀,这一转眼都2021啦呀,好久没和大家来装装逼探讨探讨技术方面了,今天晚上闲来没事,就跑来和大家深刻探讨下@ResponseBody @RequestBody @PathVariable @PathParam() 和@Param()注解各自功能任务。来喽,老规矩,闲话少说,直奔主题。1、@ResponseBody注解原创 2021-01-07 20:47:28 · 527 阅读 · 0 评论 -
springcloud五大组件永远滴神——成神之路
这两天趁着没事时偷偷又干了个springcloud,这技术真的流弊,我是佩服,好了,废话少说,继续给大家扔干货——被称为springcloud永远滴神的五大组件。下面开始正式分享 springcloud常用五大组件: 1、服原创 2020-12-16 20:46:28 · 3441 阅读 · 1 评论 -
咳咳,会用redis的帅哥拿到了上万,我这会用redis,还会配置redis的小鲜肉最低也待18k吧
刚刚看到个会使用redis的帅哥拿到了上万,我很是不服,我这不但会使用redis还会配置redis,而且会redis集群,主从复制,哨兵模式和解决缓存穿透、缓存击穿和缓存雪崩等问题,重点重点我还是小鲜肉,你们大家说说我这是不是最低也待18k起步啊(小声逼逼:我可没多要,也就要了18k) 今天还是和大家分享下redis的知识,包括redis配置,redis集群搭建,主从复制,哨兵模式讲解,缓存穿透、缓存击穿和缓存雪崩的问题,闲话少说,趁着原创 2020-12-09 17:59:39 · 297 阅读 · 1 评论 -
随机生成字母和数字的字符串工具类
废话少说,直接扔代码,我还要赶着去吃晚饭呢,饿死宝宝了,代码如下:package com.kuang.utils;/** * @author ygl * @description * @date 2020/12/2 16:05 */import org.springframework.stereotype.Component;import java.util.Random;/** * 生成随机数当作getItemID * n : 需要的长度 * @return */@Co原创 2020-12-04 19:37:46 · 337 阅读 · 0 评论 -
听说会redis的帅哥都拿到了月入过万
来吧,兄弟们,前几天用redis干了个大数据事件,今天和大家探讨干SpringBoot整合redis,以及redis处理大量数据,不要怂,干就完了。 一、SpringBoot整合redis: 1、首先在pom文件中导入redis依赖,用来引入redis的jar包。 <dependency> <groupId&原创 2020-12-04 11:08:14 · 1865 阅读 · 15 评论 -
SpringBoot+MyBatis数据批量导入数据库
年轻人不讲武德,耗子尾汁。哈哈,来吧,新鲜出炉的数据批量导入数据库,这上周优化代码,采用批量导入数据,速度处理起来就是快很多很多,闲话少说,直接扔干货。 组长让完成csv文件导入数据库,之前的csv文件内容大概也就几千条数据,在运行的时候没有丝毫的感觉慢,但是后期一下子加到了大概三万多条,一下子让我等了大概八分钟作用,乖乖类,没办法,干吧,优化代码。之前我采用的是放到list的集合中,每读取一条数据,然后进行调用原创 2020-12-01 15:39:48 · 2130 阅读 · 2 评论 -
多线程都不会,还想拿上万,想啥呢,洗洗睡吧
1、进程和线程 1:进程:进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程就是运行起来的程序,程序运行起来需要被加载在内存中(这是站在用户角度进行描述),类似电脑QQ运行,浏览器的运行等等。 2:线程:线程是程序执行流的最小单元,是处理器调度和分派的基本单位。一个进程可有一个或多个线程,各个线程之间共享程序内存空间。 &nb原创 2020-11-23 15:13:04 · 197 阅读 · 0 评论 -
SpringBoot中完成异步任务、邮件发送任务和定时任务
这里写自定义目录标题欢迎使用Markdown编辑器新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入欢迎使用Markdown编辑器你好! 这是你第一次使用 Markdown编辑器 所展示的欢迎页。如果你想学习如何使用Mar原创 2020-11-10 14:33:31 · 219 阅读 · 0 评论 -
SpringBoot整合Shiro(三)——shiro的角色和权限拦截且进行授权
1、进行权限拦截和进行授权 在shiroConfig中配置内置过滤,进行设置安全管理器,然后进行配置shiro的内置过滤器,filterMap.put("/user/update","perms[user:update]");,且进行拦截时,跳转到未授权页面:bean.setUnauthorizedUrl("/unauth");,代码如下所示:package com.ygl.config;import org.apache.shiro.spring.we原创 2020-11-07 15:21:51 · 2434 阅读 · 0 评论 -
SpringBoot整合Shiro(二)——引入MyBatis且进行md5撒盐密码加密
在第一篇SpringBoot整合Shiro的基础上进行引入MyBatis和密码进行撒盐md5加密,如果没没有看第一篇文章,请大家先去看SpringBoot整合Shiro安全框架(一)。好,下面接下来讲如何引入MyBatis。一、引入MyBatis 1、引入mybatis、MySQL和druid的依赖,代码如下: <!-- myBatis--> <dependency>原创 2020-11-07 13:12:26 · 769 阅读 · 0 评论 -
SpringBoot整合Shiro安全框架(一)
综述: Shiro框架是Apache旗下的一个开源项目,它是轻量级安全框架,非常简便易用,同Spring旗下的Security安全框架相比较,它更加简便,易用和灵活,没有Security复杂。Shiro包括:认证、授权、加密和会话管理等功能。主要功能: 1、验证用户身份 2、用户授权,权限访问 3、支持单点登录(SSO)功能 4原创 2020-11-06 15:18:28 · 303 阅读 · 0 评论 -
spring security整合Spring Boot以及用法
spring security是个什么呢?它可以用来做什么呢?接下来我来和小伙伴分享一下。 spring security有两大重要的功能,1、授权(你能干什么),2、认证(你是谁)下面介绍下入门项目:首先在pom依赖中导入security依赖:<dependency> <groupId>org.springframework.boot</groupId> <artifact原创 2020-11-05 19:38:05 · 163 阅读 · 0 评论 -
SpringBoot整合MyBatis
SpringBoot整合MyBatis首先导入;SpringBoot整合MyBatis的依赖,pom依赖如下面代码所示:<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>2.1.1</vers原创 2020-11-05 10:31:11 · 181 阅读 · 2 评论 -
fastCSV实现csv文件内容的读取和生成
这两天需要做一个将CSV文件内容上传至数据库中,进行持久化,我的思路是先进行读取出来,然后进行一行一行插入数据库中。这种思路目前来说可能没问题,因为涉及的数据较少,如果涉及较多的数据可能就会出现加载过慢的问题,那么就需要做代码优化。 我的CSV文件是通过爬虫从第三方数据库中爬取得到的,里面的内容格式也是各种各样。因为自己还年轻,就直接想到了以流的形式进行读取。代码如下:InputStreamReader isr = new Input原创 2020-11-03 19:50:42 · 3354 阅读 · 3 评论 -
Spring拦截器实现登录拦截
hello,大家好,好久没发文章了,之前一段时间因为没遇到太好的内容。昨天研究了下登录时Spring拦截器实现功能,今天和大家分享下,有问题的话欢迎大家指出与批评,好,下面进入正题。 说起拦截器不得先说说过滤器,接下来我们先说说过滤器和拦截器的区别吧。一、拦截器与过滤器区别1、作用域差异: Filter是Servlet规范中规定的,只能用于web中;拦截器既可以用于web中,也可以用在Applic原创 2020-10-28 14:44:27 · 2009 阅读 · 0 评论 -
Spring常用注解
来喽来喽,新鲜出炉的Spring常用注解来了。今天来开始又重新学了一遍Spring框架,今天主要学了Spring的两大核心之一——Spring控制反转(IOC容器)。下面给大家来介绍介绍主要用到的注解吧,这样与大家分享,不但但能服务他人还能使我自己记忆犹新。@Autowried@Autowried是属于Spring的容器配置的一个注解,它起自动注入功能,默认按照byType自动注入,Autowired注解可以应用在构造方法,普通方法,参数,字段,以及注解这五种类型的地原创 2020-10-15 19:32:53 · 236 阅读 · 0 评论 -
单点登录原理及代码实现
这次废话少说,直接扔干货,自己也是刚刚学习的单点登录,如有问题,还请评论进行一起探讨。一、单系统登录机制1、http无状态协议 web应用采用的B/S架构,http作为通信协议。由于http本身是无状态协议,不存储任何登录信息,所以每次登录系统服务器之间都无任何关联,服务器都会进行独立处理操作。从网上盗个图来给大家进行解释下,下图将进行这个过程说明: 这也就意味着任何用户都可以进行访问服务器资源,如原创 2020-10-14 15:44:35 · 1586 阅读 · 0 评论 -
foreach遍历集合删除元素抛异常
铛铛铛俺来也,996苦逼程序员目前不太忙,偷偷来写个文章,纪念下今天下午遇到到一个坑,来给大家分享下,希望大家在遍历删除元素的时候不要遇到这个问题。废话闲说,直接扔出干货。 目前我遍历元素的话,一般采用foreach进行遍历,很少使用哪种for(int i=0;i<it.size();i++)和迭代器的这种,因为foreach使用简单,并且用起来比较顺手。这次我遍历元素,别难过且在循环体中进行判断是否符合某个条件,如果符合,那么就原创 2020-09-22 20:29:09 · 985 阅读 · 0 评论 -
引入自己本地第三方jar包在打war后不存在该jar包问题
哎呀,今天发际线明显上移了啊,哈哈,今天搞这个bug搞了整整一天,愁的我啊;废话少说,赶紧步入正题。 前两天写了一个在线实时预览的功能,采用的是调用opeoffice软件,需要个jodconverter-core-3.0-beta-4.jar,但是在maven中央仓库上没有找不到该jar包,就从网上找到了这个jar手动引入,这个在我本地部署的完全没任何问题,但是当我部署到服务器上死活启动不了opeoffice服务,手动启动还是不行,刚开原创 2020-09-18 20:38:50 · 642 阅读 · 1 评论 -
java中的SpringBoot实时预览
下午研发部小姐姐让我来个传输文件网页预览,一听蒙蔽啊,都没弄过啊,没事,可以学嘛,俺就赶紧快快的百度学习起来,什么CSDN,博客园,github走起来,让我们一起摇摆摇摆、、、、、 好了好了,步入正题,请看下方: 目前实现文件在线预览功能一般有三种方法: 1、flash 的flexpaper 将文档转换为swf格式,然后使用flash在网页中浏览 &nb原创 2020-09-15 18:25:08 · 771 阅读 · 3 评论 -
springBoot为啥无法跳转html页面呀
springBoot无法跳转html页面 这周周末,闲来无事来学习学习单点登录,昨天下午看了几篇关于sso(单点登录)的博客,今天来写写demo,demo主要由登录模块、vip模块、购物车模块和主模块,用的gradle项目,模块构成如下所示: 步入正题,写完controller以后,将项目跑起来,可是死活就没有办法跳转到html页面,应该返回login.html页面,但是直接返回了login,先是检查了下yml的配置文件,我原创 2020-09-13 23:04:51 · 2616 阅读 · 0 评论