自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 ClassLoader实践(apache-skywalking AgentClassLoader分析)

ClassLoader实践 学习AgentClassLoader加载机制 学习如何加载指定路径下的jar。

2022-10-23 22:30:05 604 1

原创 导入(若依框架)

用户界面,以导入用户数据为例模板发起请求页面发起导入请求: 在导入对话框中,点击 <点击上传>按钮,选择导入文件,点击确认,发起导入请求http://localhost/dev-api/system/user/importData?updateSupport=false后台导入的入口方法@Log(title = "用户管理", businessType = BusinessType.IMPORT) @PreAuthorize("@ss.hasPermi('system:us

2021-12-26 22:44:24 5517

原创 导出(若依框架)

导出(若依框架)分析用户界面,以用户列表的导出为例。导出前端代码​ 点击导出按钮,触发函数handleExport,在该函数中调用exportUser,exportUser执行完毕后,再调用download方法下载。exportUser执行完成后,后端会生成临时文件execl。再调用download下载该文件。/** 导出按钮操作 */handleExport() { const queryParams = this.queryParams; this.$confirm('是否确认

2021-08-30 17:31:31 14512 14

原创 权限管理之数据权限(若依框架)

数据权限设计 AOP + 自定义注解 实现数据权限

2021-08-24 15:03:38 18329 22

原创 日志管理(若依框架)

表设计登录日志逻辑:在登录或者退出时创建记录日志的任务,交给线程池执行。代码分析注入线程池 bean/** * 执行周期性或定时任务 */@Bean(name = "scheduledExecutorService")protected ScheduledExecutorService scheduledExecutorService(){ return new ScheduledThreadPoolExecutor(corePoolSize, new

2021-08-24 10:55:36 6128

原创 字典管理(若依框架)

表设计字典列表页面加载前端页面:ruoyi-ui/src/views/system/dict/index.vue该页面加载时,调用的方法为getList -----> http://localhost:8080/system/dict/type/list?pageNum=1&pageSize=10后台方法 :com.ruoyi.web.controller.system.SysDictTypeController#list...

2021-08-24 10:41:07 17606

原创 XML解析,XML转java对象,通用

前言每一个xml文件需要实现一套解析逻辑。 如果xml文件特别多,解析的工作工作量将会很大。在java中都是通过对象来操作的,能不能实现一套通用的解析逻辑,先把xml转成java对象呢?带这个这个疑问,开始了自己的构思。并且实现了一套通用解析逻辑。实现逻辑核心逻辑是映射xml中元素的名称到java属性中。 定义xml的实体类,实现自定义的空接口(用于找出xml实体类) 定义描述元素的类,用于描述xml中元素的名称,层级。 定义注解,用于标识元素。 注解用于xml实体类中

2021-07-25 16:07:42 1415

原创 spring异步请求Demo (@EnableAsync,@Async), 获取返回结果

package com.example.springbootmybatis.async;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.scheduling.annotation.EnableAsync;import org.springframework.stereotype.Controller;import org.springframework.web.bin.

2021-06-23 14:10:14 608

原创 mapper接口代理对象创建原理

mapper接口代理对象创建原理 springboot整合mybatis mapper接口的代理对象如何产生? springboot整合mybatis<dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version&gt...

2021-06-09 17:05:17 776

原创 springboot自动配置

spingboot自动配置写在前面spring的自动配置,帮我们预置了一些常用对象,如servlet,Filter等。通过自动配置,将这些对象加入到IOC容器中。实现自自动配置的核心是: 核心注解@import 核心接口 DeferredImportSelector(继承了ImportSelector接口) 核心类AutoConfigurationImportSelector(实现了DeferredImportSelector接口) 核心文件META-INF/

2021-06-02 16:35:30 158

原创 mysql隔离级别(例子测试验证)

mysql隔离级别(version=8.0.17 引擎:InnoDB )一.设置隔离级别​ //设置read uncommitted级别:​ set session transaction isolation level read uncommitted;​ //设置read committed级别:​ set session transaction isolation level read committed;​ //设置repeatable read级别:​ set session tra

2021-05-27 15:46:34 280 1

原创 参数校验,异常处理,自定义校验,乱码处理(@RestControllerAdvice @ExceptionHandler @Validated)

实体类 ,使用Validated 常用注解package com.example.demo.model;import com.example.demo.validate.Phone;import javax.validation.constraints.Min;import javax.validation.constraints.NotEmpty;public class RequestForm { @NotEmpty(message = "姓名不能为空") p..

2020-11-15 15:49:31 1527

原创 对象的访问定位

问题:如何通过栈上的reference找到堆上的具体对象?对象在内存中分为3块区域:对象头,实例数据,对齐填充。对象的访问方式目前主流的两种方式:句柄,直接指针。HotSpot使用的是直接指针方式。1.句柄方式:堆中划分出句柄池,reference存储的就是句柄的地址。而句柄中保存了对象的实例数据和类型数据。如图1。 ...

2019-11-30 20:41:18 174

原创 java 对象的创建(new 对象的创建)

内存管理 和TLAB请阅https://blog.csdn.net/weixin_41842550/article/details/103325281对象创建过程:new ---> 检查符号引用和类是否被加载--->分配内存--->对象设置信息--->init--->对象产生。1. 常量池:用于存储编译器生成的各种字面量和符号引用。这部分内容在类加载后进入...

2019-11-30 18:24:01 518

原创 java虚拟机运行时数据区

一、区域分类:线程私有数据区:栈(虚拟机栈、本地方法栈)、程序计数器。线程共享数据区:堆、方法区。说明:sun hotspot虚拟机, 虚拟机栈、本地方法栈这两区域合一。二、线程私有1.程序计数器 可以看作是当前线程执行字节码的行号指示器。多线程是通过线程轮流切换并分配处理器执行的时间方式来实现的。因此,程序计数器可以保证切换后恢复到正确的执行位置。每条线程...

2019-11-30 16:56:37 92

原创 线程的状态

线程的六种状态。NEW :至今尚未启动的线程处于这种状态.(线程创建)RUNNABLE:正在Java虚拟机中执行的线程处于来执行这种状态.(线程正在执行)BLOCKED:受阻塞并等待某个监视器锁的线程处于这种状态.(等待其他线程释放锁)WAITING:无限期的等待另一个线程来执行某一特定操作的线程处于这种状态 .(线程执行了wati()方法)TIMED_WAITING:等待另...

2019-04-20 22:24:16 122

原创 线程间通信 生产者和消费者模式

实现生产者和消费者模式,重要的几点:1. 持同一把锁2. 线程共享标识,用于线程切换3.等待和通知(Object方法:wati()/notify() nofifyAll() Condition方法:await()/ signal() signalAll())一、使用Condition方法:await()/ signal() sig...

2019-04-20 20:38:43 214

原创 多线程之volatile

volatile 修饰的变量,可以使线程每次从共享内存中读取变量。 解决了可见性问题但是解决不了原子性问题。下来我们分别验证:一、验证可见性1.flag没有被volatile 修饰public class TestVolate2{ // 没有被volatile修饰 private boolean flag = true; // 停止线程 void stop(boolea...

2019-04-20 18:41:44 185

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除