自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(174)
  • 资源 (14)
  • 问答 (4)
  • 收藏
  • 关注

原创 Java 架构笔记整理(P6+)

开通语雀(云端知识库),关注我的云笔记:《架构学习》,文章内容更新,更全。1. Java核心技术  1.1.基础知识    1.1.1.进制转换    1.1.2.异常处理    1.1.3.List 分批代码    1.1.4.字符串分割    1.1.5.编码风格  1.2.并发编程    1.2.1.参考文章    1.2.2....

2020-02-07 16:13:05 2483

原创 异常栈 - 限制打印行数

我们经常通过 try catch 代码块包住一段可能出现异常的代码,同时在 catch 块中打印异常信息,如下所示:public static void main(String args[]) { try { a(); } catch (HighLevelException e) { e.printStackTrace(); }}当然通常情况我们会使用日志框架,不会直接使用 e.printStackTrace() 方法打印异常栈,但是日志框

2020-10-10 19:27:49 1957

原创 MySQL

我在语雀中整理了一些 MySQL 的知识点,欢迎关注。MySQL 基础知识与体系结构 MySQL 背景概述 MySQL 安装 MySQL 体系结构-概述 MySQL 体系结构-主要文件 MySQL 体系结构-存储引擎 MySQL SQL语句与编程 MySQL 字段类型 MySQL 数值类型 MySQL 字符集 MySQL 字符串类型 MySQL 集合类型 MySQL 日期类型 MySQL JSON 类型 MySQL 常用函数介绍

2020-06-03 10:20:22 2041

原创 MySQL Join 算法与调优

看完这几篇文章,你就知道为什么 MySQL 关联查询要尽量少用了MySQL Join 算法与调优(一)MySQL Join 算法与调优(二)MySQL Join 算法与调优(三)MySQL Join 算法与调优(四)补充说明更多文章参考我的架构笔记:https://www.yuque.com/yinjianwei/vyrvkf...

2020-04-09 19:10:50 270

原创 常用开发、办公工具推荐

推荐一些常用的工具,都是我平时开发、工作中用到的,觉得各方面还可以,推荐给大家,希望给大家带来一些帮助。开发相关Java开发工具Eclipse、IDEA这个不用多讲,大家都知道的,IDEA相比Eclipse更加友好一些,优先推荐IDEA吧。Eclipse官网地址是:https://www.eclipse.org/downloads/IDEA的官网地址是:htt...

2020-02-15 14:18:31 475

原创 云笔记工具推荐

今天给大家推荐一款云笔记,我用过有道云笔记、为知笔记、印象笔记,最后我还是选择了阿里的语雀我用的语雀的功能比较少,主要是一个人使用,没有建团队,语雀的在不断的迭代,支持的功能越来越丰富。我主要用到它的知识库(可以编写一个系列的文章)方面,用来平时整理个人笔记用的。我觉得至少有两点它非常好,非常适合程序员使用。1.文档编辑器功能丰富,适合程序员编写文章。2.提供了知识树结构,...

2020-02-13 18:16:51 883

原创 MyBatis 数值类型 where 条件配置的坑

更多文章参考我的笔记:https://www.yuque.com/yinjianwei/vyrvkf复现异常我们先通过案例复现该类异常,测试项目地址:https://gitee.com/yin_jw/demo/tree/master/mybatis-demo/springboot-mybatis-demo,StudentMapper.xml 中根据条件获取学生信息的 SQL 配置...

2019-11-26 09:39:00 640

原创 面试资源整理

我的笔记:https://www.yuque.com/yinjianwei/vyrvkf/tbn3et有一个附件在这里没有办法上传,可以参考我的笔记,可以下载面试题附件:JAVA核心知识点整理.pdf面试题技术面试必备基础知识、Leetcode、Java、C++、Python、后端面试、计算机操作系统、计算机网络、系统设计【Java学习+面试指南】 一份涵盖大部分Java...

2019-11-21 18:25:00 317

原创 MySQL InnoDB 实现高并发原理

MySQL 原理篇MySQL 索引机制MySQL 体系结构及存储引擎MySQL 语句执行过程详解MySQL 执行计划详解MySQL InnoDB 缓冲池MySQL InnoDB 事务MySQL InnoDB 锁MySQL InnoDB MVCCMySQL InnoDB 实现高并发原理MySQL InnoDB 快照读在RR和RC下有何差异转载:《InnoDB并发如此高...

2019-11-20 09:37:00 316

原创 MySQL InnoDB MVCC

MySQL 原理篇MySQL 索引机制MySQL 体系结构及存储引擎MySQL 语句执行过程详解MySQL 执行计划详解MySQL InnoDB 缓冲池MySQL InnoDB 事务MySQL InnoDB 锁MySQL InnoDB MVCCMySQL InnoDB 实现高并发原理MySQL InnoDB 快照读在RR和RC下有何差异MVCCMVCC 的定义M...

2019-11-19 14:48:00 337

原创 MySQL InnoDB 锁

MySQL 原理篇MySQL 索引机制MySQL 体系结构及存储引擎MySQL 语句执行过程详解MySQL 执行计划详解MySQL InnoDB 缓冲池MySQL InnoDB 事务MySQL InnoDB 锁MySQL InnoDB MVCCMySQL InnoDB 实现高并发原理MySQL InnoDB 快照读在RR和RC下有何差异数据准备:/*SQLyo...

2019-11-18 18:54:00 210

原创 MySQL InnoDB 事务

MySQL 原理篇MySQL 索引机制MySQL 体系结构及存储引擎MySQL 语句执行过程详解MySQL 执行计划详解MySQL InnoDB 缓冲池MySQL InnoDB 事务MySQL InnoDB 锁MySQL InnoDB MVCCMySQL InnoDB 实现高并发原理MySQL InnoDB 快照读在RR和RC下有何差异MySQL5.5 及以后版本的...

2019-11-18 10:21:00 210

原创 MySQL 执行计划详解

MySQL 原理篇MySQL 索引机制MySQL 体系结构及存储引擎MySQL 语句执行过程详解MySQL 执行计划详解MySQL InnoDB 缓冲池MySQL InnoDB 事务MySQL InnoDB 锁MySQL InnoDB MVCCMySQL InnoDB 实现高并发原理MySQL InnoDB 快照读在RR和RC下有何差异我们经常使用 MySQL 的执...

2019-11-15 09:49:00 131

原创 MySQL 语句执行过程详解

MySQL 原理篇MySQL 索引机制MySQL 体系结构及存储引擎MySQL 语句执行过程详解MySQL 执行计划详解MySQL InnoDB 缓冲池MySQL InnoDB 事务MySQL InnoDB 锁MySQL InnoDB MVCCMySQL InnoDB 实现高并发原理MySQL InnoDB 快照读在RR和RC下有何差异当客户端向 MySQL 发送一...

2019-11-11 09:23:00 391

原创 MySQL 体系结构及存储引擎

MySQL 原理篇MySQL 索引机制MySQL 体系结构及存储引擎MySQL 语句执行过程详解MySQL 执行计划详解MySQL InnoDB 缓冲池MySQL InnoDB 事务MySQL InnoDB 锁MySQL InnoDB MVCCMySQL InnoDB 实现高并发原理MySQL InnoDB 快照读在RR和RC下有何差异MySQL 体系结构MySQ...

2019-11-10 20:36:00 576

原创 MySQL 索引机制

MySQL 原理篇MySQL 索引机制MySQL 体系结构及存储引擎MySQL 语句执行过程详解MySQL 执行计划详解MySQL InnoDB 缓冲池MySQL InnoDB 事务MySQL InnoDB 锁MySQL InnoDB MVCCMySQL InnoDB 实现高并发原理MySQL InnoDB 快照读在RR和RC下有何差异索引是什么?索引是为了加速对...

2019-11-10 11:13:00 234

原创 MySQL 触发器的使用

MySQL基础篇三范式MySQL 军规MySQL 配置MySQL 用户管理和权限设置MySQL 常用函数介绍MySQL 字段类型介绍MySQL 多列排序MySQL 行转列 列转行MySQL NULL 使用带来的坑MySQL AND 和 OR 联合使用带来的坑MySQL 触发器的使用转载:《Mysql中的触发器》什么是触发器触...

2019-10-30 20:22:00 143

原创 MySQL AND 和 OR 联合使用带来的坑

MySQL基础篇三范式MySQL 军规MySQL 配置MySQL 用户管理和权限设置MySQL 常用函数介绍MySQL 字段类型介绍MySQL 多列排序MySQL 行转列 列转行MySQL NULL 使用带来的坑MySQL AND 和 OR 联合使用带来的坑MySQL 触发器的使用数据准备:CREATE TABLE prod...

2019-10-30 20:13:00 463

原创 MySQL NULL 使用带来的坑

MySQL基础篇三范式MySQL 军规MySQL 配置MySQL 用户管理和权限设置MySQL 常用函数介绍MySQL 字段类型介绍MySQL 多列排序MySQL 行转列 列转行MySQL NULL 使用带来的坑MySQL AND 和 OR 联合使用带来的坑MySQL 触发器的使用NULL 无值(no value),它与字段包含 0 、空...

2019-10-30 19:54:00 178

原创 MySQL 行转列 列转行

转载:《mysql 行转列 列转行》行转列准备数据:CREATE TABLE tb_score( id INT(11) NOT NULL auto_increment, userid VARCHAR(20) NOT NULL COMMENT '用户id', subject VARCHAR(20) COMMENT '科目', scor...

2019-10-30 19:49:00 243

原创 MySQL 多列排序

MySQL基础篇三范式MySQL 军规MySQL 配置MySQL 用户管理和权限设置MySQL 常用函数介绍MySQL 字段类型介绍MySQL 多列排序MySQL 行转列 列转行MySQL NULL 使用带来的坑MySQL AND 和 OR 联合使用带来的坑MySQL 触发器的使用数据准备:CREATE TABLE `tea...

2019-10-30 19:44:00 418

原创 MySQL 字段类型介绍

MySQL基础篇三范式MySQL 军规MySQL 配置MySQL 用户管理和权限设置MySQL 常用函数介绍MySQL 字段类型介绍MySQL 多列排序MySQL 行转列 列转行MySQL NULL 使用带来的坑MySQL AND 和 OR 联合使用带来的坑MySQL 触发器的使用注意点:数值类型:注...

2019-10-30 19:40:00 230

原创 MySQL 常用函数介绍

MySQL基础篇三范式MySQL 军规MySQL 配置MySQL 用户管理和权限设置MySQL 常用函数介绍MySQL 字段类型介绍MySQL 多列排序MySQL 行转列 列转行MySQL NULL 使用带来的坑MySQL AND 和 OR 联合使用带来的坑MySQL 触发器的使用数值型函数...

2019-10-30 19:39:00 95

原创 MySQL 军规

MySQL基础篇三范式MySQL 军规MySQL 配置MySQL 用户管理和权限设置MySQL 常用函数介绍MySQL 字段类型介绍MySQL 多列排序MySQL 行转列 列转行MySQL NULL 使用带来的坑MySQL AND 和 OR 联合使用带来的坑MySQL 触发器的使用转载:《58到家数据库30条军规解读》《赶集...

2019-10-30 19:31:00 127

原创 三范式

MySQL基础篇三范式MySQL 军规MySQL 配置MySQL 用户管理和权限设置MySQL 常用函数介绍MySQL 字段类型介绍MySQL 多列排序MySQL 行转列 列转行MySQL NULL 使用带来的坑MySQL AND 和 OR 联合使用带来的坑MySQL 触发器的使用三范式第一范式( 1NF):字段具有原子性,不可...

2019-10-30 19:28:00 207

原创 MyBatis 源码篇-MyBatis-Spring 剖析

本章通过分析mybatis-spring-x.x.x.jarJar 包中的源码,了解MyBatis是如何与Spring进行集成的。Spring配置文件MyBatis与Spring集成,在Spring配置文件中配置了数据源、SqlSessionFactory、自动扫描MyBatis中的Mapper接口、事务管理等,这部分内容都交由Spring管理...

2019-10-29 11:08:00 164

原创 MyBatis 源码篇-Transaction

本章简单介绍一下MyBatis的事务模块,这块内容比较简单,主要为后面介绍mybatis-spring-1.**.jar(MyBatis与 Spring集成)中的事务模块做准备。类图结构MyBatis事务模块的代码在transaction包下:根据包的分类,提供了两种事务实现:jdbc、managed。我们还是先来看下事务模块整...

2019-10-29 10:57:00 166

原创 MyBatis 源码篇-DataSource

本章介绍MyBatis提供的数据源模块,为后面与Spring集成做铺垫,从以下三点出发:描述MyBatis数据源模块的类图结构;MyBatis是如何集成第三方数据源组件的;PooledConnection 设计初衷猜想;类图结构MyBatis数据源部分的代码在datasource目录下。提供了三种类型的数据源实现:unpooled(...

2019-10-29 10:55:00 243

原创 MyBatis 源码篇-插件模块

本章主要描述MyBatis插件模块的原理,从以下两点出发:MyBatis是如何加载插件配置的?MyBatis是如何实现用户使用自定义拦截器对SQL语句执行过程中的某一点进行拦截的?示例准备首先准备两个拦截器示例,代码如下。@Intercepts({ @Signature(type = Executor.class, metho...

2019-10-29 10:50:00 154

原创 MyBatis 源码篇-日志模块2

上一章的案例,配置日志级别为debug,执行一个简单的查询操作,会将JDBC操作打印出来。本章通过MyBatis日志部分源码分析它是如何实现日志打印的。在MyBatis的日志模块中有一个jdbc package,package中的内容如下图所示:BaseJdbcLogger是一个抽象类,它是jdbcpackage下其他类的父类,类继承关系如下图所示:...

2019-10-29 10:45:00 151

原创 MyBatis 源码篇-日志模块1

在Java开发中常用的日志框架有Log4j、Log4j2、ApacheCommonLog、java.util.logging、slf4j等,这些日志框架对外提供的接口各不相同。本章详细描述MyBatis是如何通过适配器的方式集成和复用这些第三方框架的。日志适配器MyBatis的日志模块位于org.apache.ibatis.logging包中,该模块中...

2019-10-29 10:43:00 238

原创 MyBatis 源码篇-资源加载

本章主要描述MyBatis 资源加载模块中的 ClassLoaderWrapper类和Java加载配置文件的三种方式。ClassLoaderWrapper上一章的案例,使用org.apache.ibatis.io.Resources#getResourceAsStream(java.lang.String)方法加载MyBatis的配置文件。Resources是一...

2019-10-29 10:41:00 181

原创 MyBatis 源码篇-SQL 执行的流程

本章通过一个简单的例子,来了解 MyBatis 执行一条 SQL 语句的大致过程是怎样的。案例代码如下所示:public class MybatisTest { @Test public void selectByPrimaryKey() throws IOException { // 3 StudentDao st...

2019-10-29 10:31:00 263

原创 MyBatis 源码篇-整体架构

MyBatis 的整体架构分为三层, 分别是基础支持层、核心处理层和接口层,如下图所示。基础支持层反射模块该模块对 Java 原生的反射进行了良好的封装,提供了更加简洁易用的 API ,方便上层使调用,并且对反射操作进行了一系列优化,例如缓存了类的元数据,提高了反射操作的性能。类型转换模块类型转换模块提...

2019-10-29 10:20:00 391

原创 MyBatis 示例-动态 SQL

MyBatis 的动态 SQL 包括以下几种元素:详细的使用参考官网文档:http://www.mybatis.org/mybatis-3/zh/dynamic-sql.html本章内容简单描述这些动态SQL在使用的过程中需要注意的地方。choose, when, otherwise比如我们要实现如下功能:当学生姓名不为空,则只用学生姓名作为条件查询...

2019-10-29 10:04:00 130

原创 MyBatis 示例-缓存

MyBatis提供两种类型的缓存,一种是一级缓存,另一种是二级缓存,本章通过例子的形式描述MyBatis缓存的使用。测试类:com.yjw.demo.CacheTest一级缓存MyBatis 默认开启一级缓存。一级缓存是相对于同一个 SqlSession 而言的,所以在参数和 SQL 完全一样的情况下,我们使用同一个 SqlSession 对象调用同一个 Mapper ...

2019-10-29 10:02:00 129

原创 MyBatis 示例-联合查询

简介MyBatis提供了两种联合查询的方式,一种是嵌套查询,一种是嵌套结果。先说结论:在项目中不建议使用嵌套查询,会出现性能问题,可以使用嵌套结果。测试类:com.yjw.demo.JointQueryTest,提供了对嵌套查询和嵌套结果的测试。数据库表模型关系学生信息级联模型关系:链接学生信息级联模型关系是一个多种类型关联关系,包含了如下几种情况:其中...

2019-10-29 10:00:00 370

原创 MyBatis 示例-插件

简介利用 MyBatis Plugin 插件技术实现分页功能。分页插件实现思路如下:业务代码在 ThreadLocal 中保存分页信息;MyBatis Interceptor 拦截查询请求,获取分页信息,实现分页操作,封装分页列表数据返回;测试类:com.yjw.demo.PageTest插件开发过程确定需要拦截的签名MyBatis 插件可以拦截四...

2019-10-29 09:57:00 120

原创 MyBatis 示例-主键回填

测试类:com.yjw.demo.PrimaryKeyTest自增长列数据库表的主键为自增长列,在写业务代码的时候,经常需要在表中新增一条数据后,能获得这条数据的主键 ID,MyBatis 提供了实现的方法。StudentMapper.xml<insert id="insertByAutoInc" parameterType="studentDO" keyPro...

2019-10-29 09:53:00 248

原创 MyBatis 示例-传递多个参数

映射器的主要元素:本章介绍select元素中传递多个参数的处理方式。测试类:com.yjw.demo.MulParametersTest使用 Map 传递参数(不建议使用)使用 MyBatis 提供的 Map 接口作为参数来实现。StudentDao/** * 使用 Map 传递参数 * * @param params * @retur...

2019-10-29 09:48:00 233

DeepL 翻译软件 - Windows 版本

DeepL 翻译软件 - Windows 版本

2020-12-21

欧路词典 - Mac 版本

欧路词典 - Mac 版本

2020-12-20

DeepL 翻译软件 - Mac 版本

DeepL 翻译软件,适合整句翻译,可以上传文档,对整个文档翻译,非常方便。

2020-12-20

Java EE 6规范中文版

Java EE 6规范中文版,书中详细介绍各种规范,中文版的

2014-09-12

Java EE 5规范中文版

Java EE 5规范中文版,书中详细介绍各种规范,中文版的

2014-09-12

jstl开发使用手册

jstl开发使用手册,详细描述jstl中的开发所需的各种方法

2014-07-29

EL表达式+JSTL常用标签

EL表达式 JSTL常用标签 用于web开发

2014-07-29

OCX控件及测试页面

OCX控件及测试页面 提供了CardX.ocx控件,用于连接读卡器(HID OMNIKEY),读写白卡

2014-07-04

hid_omnikey3x2x_x86_w7_r1_2_24_27.zip

hid_omnikey3x2x_x86_w7_r1_2_24_27.zip HID OMNIKEY XP win7 32位驱动

2014-07-04

hid_omnikey3x2x_x64_w7_r1_2_24_27.zip

hid_omnikey3x2x_x64_w7_r1_2_24_27.zip HID OMNIKEY win7 64位驱动

2014-07-04

aopalliance-1.0.jar

aopalliance-1.0.jar 该jar包用于springAOP

2013-02-28

springXSD文件

spring-tx-3.0.xsd spring-mvc-3.0.xsd spring-aop-3.0.xsd spring-context-3.0.xsd

2013-02-28

java 格式化数字 NumberUtil

1、格式化小数 123456.123 -> 123,456.12 2、格式化整数 123456 -> 123,456

2011-12-01

Java日期工具类

Java日期工具类 1、日期的各种格式化 2、获取当前年度 3、获取当前月份 4、获取当前天号数 5、获取当前时间往前推一个月的时间 6、获取上个月("MMM yyyy") 7、获取上个月("yyyymm") 8、获取上个月("yyyy-mm") 9、获取中文月份的当前日期 10、获取当前日期减去参数天数之后的日期 11、判断传入年份是否为闰年 12、获得日期所在季度第一个月或最后一个月 13、在当前日期的基础上增加传入参数的天数 14、在当前日期的基础上增加传入参数的月数 15、在当前日期的基础上增加传入参数的年数 16、计算传入的两个日期之间相差的天数 17、根据传入的年月返回该月的第一天 18、根据传入的年月返回该月最后的一天 19、获得当前月份的第一天 20、获得当前月份的最后一天 21、获取上月的第一天 22、获取上月的最后一天 23、根据传入的日期返回前一季度字符串 24、根据传入的日期返回相应的季度 .......

2011-11-30

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

TA关注的人

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