自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(17)
  • 资源 (4)
  • 收藏
  • 关注

原创 java高级の多线程编程(高级篇)

本文内容: Java内存模型 线程特征 多线程控制 容器 线程池 一、Java内存模型 1. Java程序执行流程 如上图所示: - 1. '.java'文件会通过`Java编译器(Java Compiler)`('javac'命令),并编译成'.class'文件。 - 2. '.class'文件通过`类加载器(Class Loader)`,进入`Java虚拟机(JVM)`中。 - 3. 然后由`JVM`执行引擎执行。 Java内存模型指的就是 Runtime Data Area(运行时数据区),

2020-09-07 17:17:40 704 3

原创 mybatis实现Redis分布式缓存

1. Mybatis的缓存机制,一级缓存级别是同一个SqlSession对象、二级缓存是存在SqlSessionFactory工厂对象中的所有SqlSession对象中【底层通过 PerpetualCache 实现二级缓存】。 2. 通过实现Cache接口【Mybatis中的】,再利用Mybatis的二级缓存机制,实现在数据操作层的Redis分布式缓存。

2020-07-25 18:21:50 621

原创 2023算法

1. 根据指针所指向的位置,判断机器人能走哪些位置。(拓展:马走日,有8中走法,就是一种范围尝试模型)给定一个字符串str,返回这个字符串的最长回文子序列长度比如 : str = “a12b3c43def2ghi1kpm”最长回文子序列是“1234321”或者“123c321”,返回长度7给定两个长度都为N的数组weights和values,weights[i]和values[i]分别代表 i号物品的重量和价值。给定一个正数bag,表示一个载重bag的袋子,你装的物品不能超过这个重量。

2023-01-04 12:02:57 7108

原创 实战开发1のJava对象的传输过程

一、问题背景描述 在应用开发过程中,我们需要将数据库中的数据要与Web浏览器进行‘交互’,这时就需要Java程序,就做了中间的适配器。 在这个过程中,每个数据的传输都是通过网络进行传输对象的。这时为了方便传输对象,我们需要进行序列化操作。这里我们主要讲主流的序列化方式:JSON序列化。 二、主流的开发模式 目前主流的开发模式是:数据库中的数据通过ORM映射转换成Java实体对象Entity(也可以用其他的表示,这里用Entity表示实体对象),再转换成DTO(传输对象),最后在通过http协议传输给Web

2021-09-22 20:55:11 284

原创 实战JPA,如何优雅解决实际开发问题?

你或许刚接触JPA开发,或许已经使用JPA已经有些年头了,但你真正的用好了JPA吗?在实战中,Entity实体上的注解:@Where、@SqlDelete、@SqlUpdate、@EntityListeners等注解你了解过吗?了解过Auditing设计的原理吗? 本篇文章将全面解析JPA,并且讲解实际开发过程中遇到的问题,以及合理的结局方案。

2021-08-12 17:44:45 778 1

原创 SpringMvc进阶使用(适合快速复习)

这里写自定义目录标题Spring Mvc 进阶使用一、 Spring Mvc的基础认识1. mvc的实现原理功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 Spring Mvc 进阶使用 一、 Spring Mvc的基础认识 MV

2021-08-12 16:17:24 596

原创 http无状态连接之我是如何认出你?

参考网:https://www.jianshu.com/p/de91281a1b55 众所周知,http的连接是无状态的。 HTTP无状态协议是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。 通俗一点讲就是你每次请求服务器的时候,它并不知道你是谁,但实际上现在的网站并不是这样的。因为它们使用了cookie和session来辅助服务器记住你是谁,简单来讲这两者就是你进入这个网站的钥匙。关于cookie和session的具体内容

2020-09-09 18:08:32 391

原创 Java的编译时错误&&运行时错误

Java的编译时错误&&运行时错误 简单介绍: 1. 要区分编译时错误和运行时错误,就应该先明白什么是编译?什么是运行? 首先,先看一下这张图: 解释: 编译时错误:编译期就是将我们写的java源代码交给编译器执行的过程,起翻译的作用,该过程主要对java源代码的语法进行检查,如果没有语法错误,就将源代码编译成字节码文件(即.class文件); 运行时错误:运行期则是将字节码文件(.class文件)加载到内存中交给java虚拟机执行,直到程序执行结束的过程,该过程主要对程序的逻辑错误进行检

2020-09-09 18:07:17 473

原创 Java进阶のNIO编程(详细)

一、NIO简单介绍 三大重要概念:通道、缓冲区、选择器 1. 通道 基本概念:类似于流,但是可以异步读写数据(流只能同步读写),通道是双向的,(流是单向的),通道的数据总是要先读到一个buffer 或者 从一个buffer写入,即通道与buffer进行数据交互。 常用API类型: FileChannel:从文件读写数据 DatagramChannel:能通过UDP读写网络中的数据。 SocketChannel:能通过TCP读写网络中的数据。 ServerSocketChannel:可以监

2020-09-09 16:20:00 286

原创 java基础の多线程编程(基础篇)

什么是并发与并行 什么是进程与线程 线程创建 线程生命周期 线程安全问题 什么是线程安全问题 线程安全问题解决方案 线程死锁 死锁必要条件 如何避免死锁 线程通讯

2020-09-05 08:18:16 202

原创 算法---Java实现

算法 一、算法的概述 二、排序算法 基本介绍 1. 排序算法的分类: 内部排序:插入排序、选择排序、堆排序、冒泡排序、快速排序、归并排序、基数排序 -> 外部排序: 2. 描述: 内部排序: 指将需要处理的所有都要加载到内部存储器中进行排序。 外部排序: 数据量过大,无法全部加载到内存中,需要借助外部存储进行排序 3. 时间频度: 时间频度: 一个算法话费的时间与算法种的语句执行次数成正比。哪个算法种语句执行次数多,他花费时间就多。一个算法的语句执行次数,称为语句 频度 或

2020-08-23 16:15:38 243

原创 初识MongoDB

MongoDB入门 一、入门基础 1. 入门简介 三个概念: 数据库 — database 数据库是一个仓库,在仓库中可存放的集合 集合 — collection 集合类似于数组,在集合中可以存放文档 文档 — document 文档是数据库中最小的单位,我们存储和操作的内容都是文档 在MongoDB中,在操作document时,如果数据库和集合不存在时,会自动创建。 入门指令: show dbs 或者 show databases // 查看所有数据库基本信息【数据库名 数

2020-08-09 22:06:45 208

原创 Java基础知识和深入理解(针对面试)

Java基础知识面试知识点、深入的面试知识点 基础知识点有:面向对象的理解、static关键字、Java序列化机制、JVM的入门理解、 深入知识点:String源码分析、Thread源码分析、深入了解JVM

2020-08-02 00:04:58 270

原创 Redis

Redis 1. NoSQL的引言 NoSQL(Not Only SQL ),意即不仅仅是SQL, 泛指非关系型的数据库。Nosql这个技术门类,早期就有人提出,发展至2009年趋势越发高涨。 2. 为什么是NoSQL 随着互联网网站的兴起,传统的关系数据库在应付动态网站,特别是超大规模和高并发的纯动态网站已经显得力不从心,暴露了很多难以克服的问题。如商城网站中对商品数据频繁查询、对热搜商品的排行统计、订单超时问题、以及微信朋友圈(音频,视频)存储等相关使用传统的关系型数据库实现就显得非常复杂,虽然能实现

2020-07-29 21:57:00 358

原创 多线程之间如何实现通信?保证多线程线程安全进行

多线程安全通信问题 常用四种方式: - 休眠唤醒方式: - Object的 wait、notify、notifyAll - Condition的await、signal、signalAll - CountDownLatch:用于某个线程A等待若干个其他线程执行完之后,它才执行 - CyclicBarrier:一组线程等待至某个状态之后再全部同时执行 - Semaphore:用于控制

2020-07-24 23:53:04 565

原创 Java多线程基础

一、Java多线程基础 1. 多线程的基础 1.1 什么是并发与并行 要想学习多线程,必须先理解什么是并发与并行: 并行:指两个或多个事件在同一时刻发生(同时发生)。 并发:指两个或多个事件在同一个时间段内发生。 1.2 什么是进程、线程 进程: - 进程是正在运行的程序的实例。 - 进程是线程的容器,即一个进程中可以开启多个线程。 - 比如打开一个浏览器、打开一个word等操作,都会创建进程。 线程: - 线程是进程内部的一个独立执行单元; - 一个进程可以同时并发运行多个线程; - 比如进程可以

2020-07-24 23:49:46 174

原创 Java数据结构

详细介绍了5种数据结构【通过Java代码实现】:稀疏数组【稀疏数组的应用场景】、队列【线性队列、环形队列(约瑟夫问题)】、栈【综合计算机、表达式计算】、链表【单链表、双向链表、环形列表(约瑟夫环问题)】、递归问题【迷宫问题、八皇后问题】。

2020-07-24 23:04:18 280

Zookeeper 3.5.7 源代码

Zookeeper 3.5.7 源代码

2023-11-27

spring-framework-5.2.x.zip

Spring 5.2.X的源码信息,有调试后的解释。Spring 5.2.X的源码信息,有调试后的解释。Spring 5.2.X的源码信息,有调试后的解释。Spring 5.2.X的源码信息,有调试后的解释

2020-09-25

笔记-SpringMvc.rar

springmvc的全部的学习内容

2021-05-14

spring学习笔记,包括源码学习

spring学习的全部笔记,包括源码学习

2021-05-14

笔记-mybatis.rar

mybatis的全部学习资料,还有源码的相关学习

2021-05-14

空空如也

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

TA关注的人

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