自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 总结6: Mybatis源码分析和架构设计

一、Mybatis设计架构1、架构图2、流程图二、源码解析系列1、源码解析https://www.bbsmax.com/A/rV57bKkRJP/2、Plug的工作原理https://www.cnblogs.com/qdhxhz/p/11390778.html3、Dao没有实现类的思想(JDK动态代理)https://www.cnblogs.com/hopeofthevillage/p/11384848.htmlSqlSes...

2020-05-24 23:28:41 113

原创 总结5: Spring总结

Spring源码分析:https://github.com/seaswalker/spring-analysis阿里搭建脚手架https://start.aliyun.com一、Spring1、Spring IOC作用: 依赖注入和控制反转,将对象的创建交给Spring管理,简化代码,降低代码的耦合度控制反转是关于一个对象如何获取它所依赖对象的引用,反转指的是责任的反转a、依赖注入的方式https://zhuanlan.zhihu.com/p/34405799b、Au

2020-05-18 22:34:00 40

原创 总结4: Mysql数据库

学习资料:Mysql5.7官方文档https://dev.mysql.com/doc/refman/5.7/en/innodb-architecture.html《高性能Mysql》《MySQL技术内幕 InnoDB存储引擎 第2版》淘宝mysql月报 http://mysql.taobao.org/monthly一、Mysql1、Mysql的文件架构2、数据库三范式、五个约束https://www.cnblogs.com/zhouguowei/p/926878.

2020-05-18 21:49:08 35

原创 总结3: Redis

参考书籍《Redis设计与实现》整体介绍https://www.processon.com/view/link/5e84a6a0e4b0893f957a84dc#maphttps://blog.csdn.net/piaoslowly/article/details/815635791、Redis的数据类型和数据结构5中数据类型:(对象类型)https://www.runoob.com/redis/redis-data-types.html底层数据结构:https://blog

2020-05-10 17:24:40 100

原创 总结2:Java集合、数据结构

一、常用集合1、HashMap实现原理:https://juejin.im/post/5c1c79b16fb9a049a711c97c线程不安全:https://blog.csdn.net/swpu_ocean/article/details/88917958java8中红黑树的实现https://www.cnblogs.com/finite/p/8251587.html2、TreeMap实现原理:https://www.jianshu.com/p/94acb78a8

2020-05-08 23:23:23 45

原创 总结1:Java并发编程

参考书籍《Java并发编程的艺术》一、并发编程的基础1、多线程上下文切换概念:https://www.cnblogs.com/xrq730/p/5186609.html2、如何减少上下文切换方式: https://www.jianshu.com/p/1dd95d9bc8c5a、无锁编程b、Cas算法:c、使用最少线程d、使用协程:单线程执行多个任务的方式,减少线程切换3、死锁产生的条件和解决方式:条件: https://blog.csdn.net/hd12370/

2020-05-08 23:21:33 47

原创 Idea SpringBoot启动项目报错Command line is too long. Shorten command line for className or also for JUnit

Idea SpringBoot启动项目报错:Command line is too long. Shorten command line for className or also for JUnit defaultconfiguration.解决方法:步骤一:在该项目文件夹.idea/workspace.xml中找到<component name="Propert...

2019-12-20 22:31:28 205

原创 JAVA 数据类型的取值范围

1、IntegerInteger的最大值 Integer.MaxValue 为2的31次方-1 21亿Integer的最小值 Integer.MinValue 为负的2的31次方2、ShortShort 的最大值 Short.MaxValue 为2的15次方-1 32767Short的最小值 Short.MinValue 为负的2的15次方 -327683、Lo...

2019-12-19 23:07:06 136

原创 Java解决Ajax跨域请求的方式

一、跨域问题的来源浏览器跨域处理原由:浏览器安全防护的“同源政策”影响。关于什么是“同源政策”,可以看这边文章,讲解比较详细易懂https://blog.csdn.net/dreamcatcher1314/article/details/78652884跨域请求的限制主要是针对前端,Java后端发送Http请求是不存在跨域的问题的,所以通过后端发送Http跨域请求也是解决跨域的一种方式...

2019-12-19 22:28:12 96

原创 Java Object对象相关问题分析

package java.lang;public class Object { private static native void registerNatives(); static { registerNatives(); } // 类加载器 //返回Object 的运行时类 public final native Cla...

2018-09-04 16:52:09 383

原创 SpringMVC拦截器源码解析

 前言:提到拦截器,我们一定会想到Spring Aop。在看SpringMVC源码以前,一直以为SpringMVC的拦截器是用Spring Aop的动态代理来实现,并且也很困惑,如果用动态代理如何实现拦截器?这里就不介绍Spring Aop实现拦截器的方式,剖析SpringMVC 拦截器实现的细节。    SpringMVC拦截器也是Aop(面向切面)思想构建,但不是SpringAop动态代理实现...

2018-07-08 00:10:55 831

原创 Java多线程内存模型总结

Java多线程内存模型        1.并发线程间的通信机制有两种: 共享内存和消息传递            a.共享内存和消息传递的区别:                      共享内存:线程间有公共状态,通过读写内存中的公共状态隐式通信                      消息传递:线程间没有功能状态,线程间通过发送消息显示通信            Java线程使用的是共享内存...

2018-02-10 11:12:36 1176

转载 跨域问题的产生原因和相应的解决方式

浏览器安全的基石是"同源政策"(same-origin policy)。很多开发者都知道这一点,但了解得不全面。本文详细介绍"同源政策"的各个方面,以及如何规避它。一、概述1.1 含义1995年,同源政策由 Netscape 公司引入浏览器。目前,所有浏览器都实行这个政策。最初,它的含义是指,A网页设置的 Cookie,B网页不能打开,除非这两个网页

2017-11-28 11:07:12 13384 5

原创 Dubbo+Zookeeper+Spring 分布式服务的搭建(一)

第一节:介绍Zookeeper的安装下载安装包方式:1、Linux上wget  http://mirror.bit.edu.cn/apache/zookeeper/zookeeper-3.4.11/zookeeper-3.4.11.tar.gz   速度相对比较慢2、连接直接下载windows电脑上,然后在上传到Linux  ,下载地址zookeeper  下载成功

2017-11-20 23:07:52 227

原创 Linux centos7下MySQL的安装

MySQl在Linux centos7与centos6的安装方式是不一样,MySQL在centos7下的安装过程和遇到问题和解决方式

2017-11-07 23:50:46 458

原创 JAVA虚拟机内存结构及分析

JAVA虚拟机自动化两大构成,内存动态分配和垃圾收集技术。内存自动分配和GC的相互协作运行,减少JAVA编程内存泄漏和内存溢出的问题。但内存泄漏和内存出,我们也偶尔会碰到。两者的区别有时怎样的呢?内存泄漏和内存溢出的区别?内存泄漏:程序中动态分配的内存,某些数据或对象,没有及时得到释放和回收,没有足够的内存空间得到使用。内存溢出:程序运行过程中,无法申请到足够的内存。将见O

2017-10-23 14:55:40 166

转载 Tomcat运行原理解析

Tomcat:  Tomcat是一个JSP/Servlet容器。其作为Servlet容器,有三种工作模式:独立的Servlet容器、进程内的Servlet容器和进程外的Servlet容器。Tomcat目录:tomcat  |---bin:存放启动和关闭tomcat脚本  |---conf:存放不同的配置文件(server.xml和web.xml);  |--

2017-10-22 23:13:08 312 1

原创 阿里巴巴JAVA约束插件的安装

最近阿里巴巴JAVA代码规范约束插件刚推出不久(2017.10.14),备受世人关注。阿里给JAVA开发者带来的福利,开源的框架和技术,在工作中或多或少会接触到。FastJson快速高效的解析和转换json数据;Druid数据库连接池,在现有的连接池中性能居于前列;Dubbo分布式服务框架,在2017年又重新维护......2017年开春之际,诚意献上重磅大礼:阿里巴巴Java开发手册

2017-10-20 10:03:00 905

原创 Linux 常用指令 权限类

权限类指令(ls-l   ,   chmod ,   chown , chgrp)    a. 查看文件权限  ls -l            文件权限符号的含义         第一字符代表文件类型。d代表目录,-代表非目录         紧随其后每三个字符一组权限,分为三组,依次是1.代表所有者权限,同组用户权限,其他用户权限        权限组中,字符代表的含义

2017-10-19 10:21:17 177

原创 Tomcat类加载机制和JAVA类加载机制的比较

图解Tomcat类加载机制  说到本篇的tomcat类加载机制,不得不说翻译学习tomcat的初衷。  之前实习的时候学习javaMelody的源码,但是它是一个Maven的项目,与我们自己的web项目整合后无法直接断点调试。后来同事指导,说是直接把java类复制到src下就可以了。很纳闷....为什么会优先加载src下的java文件(编译出的class),而不

2017-10-18 11:50:42 4851

转载 SpringMVC在tomcat中的执行原理和过程

一、WEB容器在启动时,它会为每个WEB应用程序都创建一个对应的ServletContext对象(每个web应用程序唯一),它代表当前web应用web容器提供其一个全局的上下文环境,其为后面的spring IoC容器提供宿主环境;二、读取web.xml服务器软件或容器如(tomcat)加载项目中的web.xml文件,通过其中的各种配置来启动项目,只有其中配置的各项均无误时,项目才能

2017-10-18 11:15:46 2077

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