自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(43)
  • 资源 (2)
  • 问答 (1)
  • 收藏
  • 关注

原创 spring DI

参考https://blog.csdn.net/qq_44836294/article/details/107794445入口AbstractApplicationContext:refresh()public void refresh() throws BeansException, IllegalStateException { synchronized (this.startupShutdownMonitor) { // 准备好刷新上下文 prepareRefresh();

2022-01-26 16:47:50 337

原创 spring IOC流程图

ioc核心 DefaultListableBeanFactoryprivate final Map<String, BeanDefinition> beanDefinitionMap = new ConcurrentHashMap<>(256);public void registerBeanDefinition(String beanName, BeanDefinition beanDefinition) throws BeanDefinitionStoreE.

2022-01-25 17:38:21 398

原创 spring生命周期和三级缓存依赖注入

DI三级缓存:参考 https://www.zhihu.com/question/438247718

2022-01-25 12:05:39 173

原创 面试知识点 待补充

springmybatisjvm:https://sharewh.mti100.com/share/3cf0d3ad-68b8-48ab-a305-da4a72c78172?t=3设计模式mongo:https://sharewh.mti100.com/share/9d04e81b-85ca-400c-8b2d-2259e59cc098?t=3eshttps://blog.csdn.net/fujiakai/article/details/91971969mysql:基础主从事务

2022-01-24 10:17:18 745

原创 nginx linux服务器安装

1.查看是否有OpenSSLssh -V下载nginx地址 http://nginx.org/en/download.html2.解压到usr/local(到这个路径下使用)cd /usr/local/nginx3.执行命令./configure#提示权限不够,执行chmod +x configure#报错#./configure: error: C compiler cc is not found 执行安装gcc 编译器yum -y install gcc gcc-c++ aut

2021-06-21 20:09:31 106

原创 好用的java开发插件

根据json生产java bean:GsonFormat

2020-08-24 17:27:58 183

原创 oracle 数据类型

2020-07-30 13:31:20 98

原创 SpringCloud深入浅出(无源码)

是什么Spring Cloud是一个基于Spring Boot实现的云应用开发工具,它为基于JVM的云应用开发中涉及的配置管理、服务发现、断路器、智能路由、微代理、控制总线、全局锁、决策竞选、分布式会话和集群状态管理等操作提供了一种简单的开发方式。具体内容Spring Cloud包含了多个子项目(针对分布式系统中涉及的多个不同开源产品),比如:Spring Cloud Config、Spring Cloud Netflix、Spring Cloud0 CloudFoundry、Spring Clo

2020-07-27 14:41:06 189

原创 深入浅出微服务2

1.Feign-》面向接口开发2.Okhttp3.HttpClient4.RestTemplateHttp &RpcNIO的实现,针对不同场景使用不同序列化。分布式实现1 临时节点、持久化节点2 watch机制zookeeper基于注册中心引入它的真正用意是什么? 分布式协调组件google chubby->不开源分布式一致性问题、分布式锁GFS -> 存在多个服务一致性解决方案 -> 服务(chubby)选举出一个master(类似一个锁)雅

2020-07-16 15:39:24 142

原创 JMM

cup乱序执行-》重排序-》可见性问题使用内存屏障解决cup层面内存屏障 :store barrier、 load barrier 、full barrier一:JMM内存模型 ->语言级别抽象的内存模型{volatile(语言级别的内存屏障实现可见性———加了一个lock指令)、syschronized(同步锁实现可见性)、final(防止重排序实现可见性-final只能在构造方法里修改,而在构造方法中不能重排序)、happens-before}原代码-编译重排序-cup重排序-

2020-07-16 13:09:36 109

原创 RPC远程通信

//创建套接字,默认本地IPnew' ServerSocket(8080)//连接后,会阻塞Socket socket=serverSocket.accept()(read/write阻塞)BufferReader buffer=new BufferReader(new inputStreamReader(socket.getInputStream)));buffer.readLine();客户端//创建套接字,默认本地IP//连接Socket socket=new Socket("

2020-07-16 13:09:16 138

原创 Spring面试题

一:使用spring框架有什么好处简化开发DI:依赖关系明了IOC:管理系统中的bean万能胶:兼容成熟的各种框架模块化设计:即引即用,按需分配自带测试组件:JUnit合理的WebMVC:完全分离了servlet和普通bean声明式事务:讲非功能性代码和功能代码分离,提出事务管理提前声明二:BeabFactory和ApplicationContext区别ApplicationContext是BeabFactory的子接口 ApplicationContext1 会监控IOC容器中Be

2020-07-16 13:08:47 88

原创 Netty

场景- 性能要求高的系统需求- 高性能实现需求实现- netty应用- 使用Netty异步非阻塞NIO框架实现原理:** 传统RPC调用性能问题**1 、阻塞IO导致高并发使服务器宕机2 、JAVA序列化编、解码导致性能问题(序列化跨语言问题)3、 CPU占用率高高性能关键IO模型-数据协议-线程模型-IO模型一:高性能的理由1 Netty在NIO基础上的异步非阻塞通信NioEventLoop聚合了多路复用器Selector(多个IO阻塞、复用到同一个Selector上、实现系统在

2020-07-08 16:37:52 149

原创 MyBatis 原理

1 SqlSessionFactoryBuilder-> build()-> 获得配置文件 、解析全局配置和映射器文件(若已解析不会重复解析) -> 返回配置文件-> 构建成功返回sqlSessionFactory解析全局配置A: properties标签解析(db.properties)B: settings解析(核心行为空控制,解析和处理分开。先解析最后处理,因为中间过程会调用)B (loadCustomVFS(加载本地或远程文件)- >loadCustomL

2020-06-30 14:34:20 209

原创 多线程Syschronized

场景(线程不安全)需求(解决线程安全问题)解决方案(Syschronized)应用(Syschronized的几种使用:实例锁(等同于同步代码块的this),静态方法锁(等同同步代码块的object.class),代码块)原理:偏向锁(cas判断对象头是否为该线程)->轻量级锁(自旋,若自旋n次后还是失败,或自适应自旋后失败,升级锁)->重量级锁(mutex)重量级锁执行流程对象头存储信息:备注:Syschronized 非公平锁,所以它的重量级锁的同步队列不是FIF

2020-06-23 18:04:54 213

原创 SpringMVC

分工明确,互不干涉九大组件:HandlerMappings(如通过requestMapping找到方法)HandlerAdapters适配器HandlerExceptionResolversviewResolversRequestToViewNameTranslatorLocaleResolverThemResolverMultipartFileResolverFlashMapManager初始化:初始化容器-初始化九大组件执行过程:doService-doDispatch...

2020-05-28 15:41:27 117

原创 分布式概述笔记

一:垂直扩展1 负载均衡:算法:轮询、最小连接数、随机轮询、加权轮询、hash(通过IP生成编码,链接到服务)2 Session共享a:session复制(消耗更多内存)b:session共享,统一存储(如存在redis)c:无状态共享,生成一个标识,token,但存在安全问题(因标识放在客户端)3 数据库性能问题1读写分离:读多写少2分库分表-》历史库数据同步:延迟(若不允许延迟,放redis),mysql-master/slave应用对数据源路由:mycat(完全与应用隔离)/s

2020-05-26 14:25:36 117

原创 406错误,之前的返回体都可以用,突然不能用了

406错误,之前的返回体都可以用,突然不能用了,很可能是接口名和页面重名了修改其中一个就可以了,其他问题比较复杂

2019-10-02 11:12:58 148

原创 JS对页面表格进行控制

创建一个具有增加删除功能的表格,且能够在页面中进行存储页面html 文件<!DOCTYPE html><html lang="en"><html><head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <lin...

2019-09-10 17:47:47 228

原创 JS页面取值

<input id=""<radio<checkbox

2019-08-18 13:03:48 143

原创 MYSQL优化

半双工双向,同一时间只允许一端向另一端发送,一次只允许一个放心查询优化分三个阶段**解析sql:**通过lex词法分析。yacc语法分析将sql语句解析成解析树**预处理阶段:**根据mysql的语法的规则进一步检测解析树的合法性,如:检查数据的表和列是否存在,解析名字和别名的设置,进行权限的验证**查询优化器:**优化器的主要作用就是找到最优的执行计划...

2019-08-17 21:19:42 78

原创 索引

索引为了加速对表中数据行的检索而创建的一种分散存储的数据结构为什么使用索引1·极大减少存储引擎扫描数据量2·可把随机OI变为顺序IO3·索引可以帮助我们再进行分组、排序等操作时,避免使用临时表为什么是B+TREE绝对平衡树(3分支)...

2019-08-17 18:02:53 61

原创 JVM详解

https://www.cnblogs.com/yueminghai/p/6639170.html

2019-08-17 13:22:11 72

原创 concurrethashmap的put操作

put操作大致可分为以下几个步骤:1·计算key的hash值,即调用speed()方法计算hash值;2·获取hash值对应的Node节点位置,此时通过一个循环实现。有以下几种情况:3·如果table表为空,则首先进行初始化操作,初始化之后再次进入循环获取Node节点的位置;4·如果table不为空,但没有找到key对应的Node节点,则直接调用casTabAt()方法插入一个新节点,此时...

2019-08-17 00:07:02 252

原创 代理模式、策略模式

代理模式作用:AOP实现,拦截器,自己不想做但又不得不做的事的增强**代理:**静态、动态;代理角色、被代理的角色(目标对象)策略模式举例购物付款流程图目录结构创建订单类:Order.javaimport pay.PayState;import pay.PayType;import pay.Payment;public class Order { privat...

2019-08-16 00:17:35 483

原创 运行顺序

2019-08-15 22:24:12 108

原创 关于clone方法中native的一些理解

Object是所有类的基类,当你没有显示extends一个父类时,编译期会自动为你加上一个Object类。1.这是一个native方法说明这个方法的实现不是在java中,而是由C/C++实现,并编译成.dll文件,由java调用。registerNatives主要是将C/C++的方法映射到java中的native方法,实现方法命名的解耦。private static native void...

2019-08-15 21:58:20 466

原创 设计模式

创建型:工厂模式:隐藏复杂逻辑结构,用户只关心结果,不能生产没有的产品基本原则开闭原则:运行后不修改源码,可以增加(增加方法,其他的不动),通过接口和抽象里士代换原则:开闭原则基础上,父类所在处,都可用子类替换,继承的过程就是体现抽象的实现依赖倒转原则:针对接口编程,而不是依赖具体的类接口隔离原则:使用多个隔离的接口,比使用单个接口好,降低耦合最少知道原则:减少代码耦合,一个类尽量...

2019-08-14 19:15:27 74

原创 原型模式

vo:value object:值对象po:persistant object:持久层对象bo:business object:业务对象 PO组合,如投保人是一个PO,被保险人是一个PO,险种信息是一个PO等等,他们组合气来是第一张保单的BOdto:data transfer object:数据传输对象pojo:可以额转化为PO、DTO、VO;比如POJO在传输过程中就是DTOe...

2019-08-14 19:13:40 79

原创 分布式基石TCP/IP,UDP/IP

ip头:源ip地址,目的ip地址(不可靠,可选择基于ip协议的TCP,UDP协议)TCP头:目标端口号

2019-08-11 15:39:53 141

原创 Spring Boot

核心功能1.可直接运行jar包2.内嵌servlet容器(如tomcat)3.提供很多starter pom简化maven依赖加载4.自动配置spring5.具有生产级的应用监控6.基于注解,而不是自动生成代码,无xml配置优点1·可快速构建项目并运行起来2·与大多主流框架无配置集成3·内嵌servlet容器4.应用监控5·极大提高开发效率6·与云计算天然集成创建spr...

2019-08-09 11:25:39 79

原创 OOP,BOP,IOC,DI关系

2019-08-08 21:04:27 349

原创 分布式

主流架构模型SOA架构和微服务架构SOA1.有序2.系统的服务化:复用3.高效:服务化变为企业化微服务架构 (是SOA的升华)业务需要彻底组件化和服务化特征:1组件化2按业务能力划分服务和开发团队3去中心化(esb企业总线【中心化)4基础设施的自动化【devops实现自动化(自动化部署,运维等)】ESBSOA 注重系统集成,微服务注重完全独立、分离2.领域驱动设计和业务...

2019-08-07 15:43:31 92

原创 数据结构

数组:开辟连续内存空间,有下标,可直接查找到,链表:栈,队列

2019-08-04 12:54:21 81

原创 JAVA8常用流

PredicateFunctionConsumerfilter返回booleanmap 接收和筛选结果类型相同distinct删除重复limitskip跳过collect(toList(),toSet())流扁平化flatMap(Arrays::stream())接收一个数组(每个数组再转换成对应的流,最后合并成一个流),并返回对应的一个流(2个-2个)(字符流)短路求值a...

2019-08-01 21:18:49 105

原创 MyBatis实用篇

what is mybatis?是什么:MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。优势:MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。如何实现:MyBatis 可以使用简单的 XML 或注解来配置和映射原生类型(基本数据类型又称原生类型)、接口和 Java 的 POJO(Plain Old Java Objects,普...

2019-07-30 16:55:54 93

原创 单例模式

单例模式初衷为使资源能够共享,只需要赋值一次,大家就都可重复利用场景:Listener,日历Calender,IOC容器,配置文件Config实现的技术方案:保证整个运行过程中,只有一份饿汉式,懒汉式,注册登记式(枚举式)。(特例)序列化与反序列化时如何保证单例?解决问题:恶劣环境,保证程序健壮性...

2019-07-29 23:21:29 76

原创 A JNI error has occurred

出现以下问题的两种原因(idea,eclipse均有效)A JNI error has occurred1:java -version与javac -version版本不一致对应进行修改https://blog.csdn.net/weixin_40921797/article/details/830018822:包命名问题。你自己定义的包路径以java开头造成java的类加载器在加载文...

2019-07-25 23:37:16 18964 5

原创 tomcat详解

1

2019-07-25 20:41:44 60

原创 单例模式

定义:一个类模板,在整个系统运行过程中,只允许产生一个实例(配置文件。工厂本身,日历)**作用:**解决一个并发访问线程安全问题保障单例技术方案:饿汉式:实例使用前实例化,避免了线程安全问题**优点:**没有任何锁,执行效率高,用户体验比懒汉好,**缺点:**类加载就初始化,不管是不是用都占用空间,可能浪费内存懒汉式:默认时不用,使用时new(延时加载)外部类被调用的时候才会加...

2019-07-21 11:17:46 57

springcloud alibaba

springcloud 基于openfeign的基础入门demo

2021-05-10

springboot+mybatis-plus.zip

只需修改yml的数据库配置,建数据库,test里可运行测试,有问题可以来我博客留言。内置代码生成器,需修改生成路径,会用的话,还是很方便的,但是没找到让他直接生成Dao层的方法,这个生成器的dao使用的mapper文件夹包的,应该是这个插件本身就是这样定义的吧,我也有直接生成dao的代码生成器,有需求可以找我。

2020-01-09

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

TA关注的人

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