自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

杜甫之心

分享点滴技术,成就非凡人生

  • 博客(30)
  • 收藏
  • 关注

原创 不变模式

不变模式只涉及一个类;此类的内部状态创建后,整个生命周期都不会发生变化;如何改变一个不变对象的状态?新建一个该对象,并在创建时将状态存储到该对象中;弱不变模式、强不变模式弱不变模式:一个类的实例状态是不可变的,但是其子类实例却是可以变的;①满足条件<1>对象的改变只能在构造方法中调用,无任何方法可以改变对象的状态,即当通过构造方法后...

2020-01-22 12:49:34 196

原创 HandlerAdapter

1、HandlerAdapter是一个接口,是具体使用Handler来干活的;2、方法:<1>supports:传入一个Object类型的handler判断是否支持处理该handler;<2>handle:具体使用handler处理请求的过程,返回类型为ModelAndView;<3>getLastModified:获取资源上一次更改的时间;...

2020-01-16 00:16:31 2460

原创 HandlerExceptionResolver

用于解析请求处理过程中出现的异常;主要功能:给ModelAndView设置内容、设置response相关的属性;子类:AbstractHandlerExceptionResolverAbstractHandlerExceptionResolver:1、实现类Order,有先后顺序; 2、其他HandlerExceptionResolver的父类,定义了通用的解析流程,使...

2020-01-13 20:16:32 2622

原创 Dubbo导出服务之远程导出

导出到远程入口private void doExportUrlsFor1Protocol(ProtocolConfig protocolConfig, List<URL> registryURLs) { /** * 前面的代码省略,从导出服务到远程的入口开始分析 */ //导出服务的scope,即决定服务导...

2019-07-22 17:44:00 506

原创 yc博客项目创建-白手起家

注意点:server.servlet.context-path。②如果配置,则访问的根路径为/配置的值,例如。①如果不配置,则访问的根路径为/,例如。

2023-04-16 17:08:05 113

原创 一图读懂RocketMQ消息存储机制

2022-04-05 01:07:21 312

原创 Java课程

我手头上有Java课程可以学,有想学的找我18152629371

2022-03-06 00:19:44 192

原创 从实现过程来理解SpringCloud Feign

希望写的每一篇博客都能帮助到各位同学,我也会坚持不定期的记录我的点滴理解;欢迎关注公众号:杜甫之心对于熟悉spring源代码的同学,应该是很容易就懂的,无非就是如何将feign用到的类装入ioc容器中,以及如何生成代理类,最后如何调用;涉及到的技术:ioc容器 aop,jdk动态代理 http请求分为两部分:1、加载配置生成代理类;代理类的产生是在依赖注入的时候;...

2020-04-25 14:18:58 192

原创 简单理解TCP/IP、Http、Socket、UDP、Servlet

TCP/IP协议一系列规则;IP:网络层;负责找到地址TCP:传输层;负责传输;TCP:三次握手,四次握手关闭连接;可靠;与UDP相对;Http的底层传输默认协议;UDP:不可靠,速度快;Socket:TCP/IP的一个具体实现;具体发送数据;Http协议:应用层;包装即将要发出去的数据;解析接收到的数据;...

2020-04-06 00:20:29 221

原创 SpringAOP拦截器调用

ReflectiveMethodInvocation用来处理AOP拦截器链的调用;<1>proceed方法①方法返回值为Object②//判断拦截器是否已经处理到最后一个了如果是,则通过反射方法直接调用目标方法 if(this.currentInterceptorIndex == this.interceptorAndDynamicMethodMatcher...

2020-02-13 00:17:07 484

原创 多级缓存

缓存算法、热点数据与更新缓存、更新缓存与原子性、缓存崩溃与快速恢复合理应用缓存也是一个选择问题;多级缓存:Nginx本地缓存、分布式缓存(底层为redis/redis主从架构)、tomcat堆缓存nginx本地缓存解决热点缓存问题;分布式缓存减少访问回源率;tomcat堆缓存解决缓存失效/崩溃之后的冲击;过期与不过期:①不设置过期时...

2020-01-29 00:26:06 420

原创 FlashMapManager、FlashMap---springmvc重定向

用于重定向时传递数据;一般情况下重定向时不传送数据的,如果一定要传送数据,可以采用拼接url的方式传递,但是存在安全和长度问题(即传送的数据量会受到限制);底层实现为将session中的参数用FlashMap来保存,参数有多个,所以用了List<FlashMap>1、实现类:2、两个方法:FlashMap retrieveAndUpdate(re...

2020-01-21 11:08:26 524

原创 重构-改善既有代码的设计之重新组织函数

Extract Method 提炼函数1、函数过长时或者一段代码需要进行注释时提炼出来; 2、函数的复用度也会较大; 3、不同的函数做的事情不同,通过名字就可以看出; 4、如果提炼出来的函数会涉及多个变量的改动,使用Split Temporary Variable后再进行提炼;或者使用Replace Temp with Query;Inline Method:内联函数...

2020-01-14 08:27:12 222

原创 ViewResolver

用来将视图名(viewName)和Locale解析为View类型的视图;resolveViewName(String viewName, Locale locale);Locale用来表示不同的区域;ViewResolver用来选择用哪种模板以及何种方式填入数据到模板中;四种类型:AbstractCachingViewResolver、BeanNameViewR...

2020-01-11 01:35:35 575

原创 ParameterizedType

Parameterizedtype参数化类型,所有泛型参数的类型都是ParameterizedTypegetActualTypeArguments()获取所有的泛型参数例如HashMap<K, V> ,结果为此方法只会获取第一层的,例如List<Map<String, Integer>>,结果为getR...

2020-01-03 17:43:47 360

原创 springmvc接收Date类型的参数

1、org.springframework.web.method.annotation.MethodArgumentTypeMismatchException: Failed to convert value of type 'java.lang.String' to required type 'java.util.Date'; nested exception is org.springfr...

2019-10-26 15:05:34 1087

原创 springcloud启动错误

1、Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'requestMappingHandlerMapping' defined in class path resource [org/springframework/boot/autoconfigu...

2019-10-13 18:08:56 970 1

原创 springcloud zuul整合oauth2错误

1、2019-10-13 17:57:31.684 WARN 5036 --- [nio-8003-exec-6] .m.m.a.ExceptionHandlerExceptionResolver : Resolved exception caused by Handler execution: org.springframework.security.oauth2.provider.NoSu...

2019-10-13 18:06:57 791

原创 Springboot项目错误二

1、This application has no explicit mapping for /error, so you are seeing this as a fallback.There was an unexpected error (type=Not Found, status=404).如果出现此错误,查看是否需要@ResponseBody注解原因:不加@Respons...

2019-09-02 22:57:14 1204

原创 Dubbo之Dubbo SPI

首先介绍下java的SPI机制SPI:Service Provider Interface是一种服务发现机制,SPI的本质是将接口实现类的全限定名配置在文件中,然后又资源加载器读取配置文件,从而加载实现类,这样的好处是可以动态的为接口替换实现类。JAVA SPI示例1、首先定义一个接口public interface Robot { void sayHel...

2019-08-16 17:03:35 133

原创 Spring--IOC容器初始化之Resource定位

IOC容器初始化主要分三步,第一步是Resource定位,即首先要找到要加载的BeanDefinition的资源在哪对于每一种等待被加载的资源都会有与之相匹配的ApplicationContext的实现类来进行加载,例如加载文件用到的FileSystemXmlApplicationContext类,以及ClasspathXmlApplicationContext等接下来将以FIleSyst...

2019-08-15 23:38:15 405

原创 Spring--IOC容器之BeanFactory和ApplicationContext

BeanFactory是一个接口,提供最基本的容器功能,其他具体容器都要实现或者继承该接口,以实现具体的逻辑方法1、Object getBean(String name) throws BeansException传入name从容器中获取具体的bean,如果获取不到,则抛BeanException异常2、<T> T getBean(String name, Cl...

2019-07-08 19:20:47 214

原创 Java反射之Class类一

Class类所在包为java.langpublic final class Class<T> implements java.io.Serializable, GenericDeclaration, Type, ...

2019-06-18 17:46:08 133

原创 java项目错误集锦(一)

1、Could not read document: Can not deserialize instance of java.lang.String out of START_OBJECT tokenorg.springframework.http.converter.HttpMessageNotReadableException: Could not read document...

2019-06-02 17:45:04 564

原创 springboot个人项目之整合spring security

1、pom文件配置<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><!-- spring security 依赖 --&...

2019-06-02 17:35:09 285

原创 Springboot项目启动错误一

1、Consider defining a bean of type 'com.yc.ux.dao.UserMapper' in your configuration没有在接口上添加@Mapper注解@Mapper@Componentpublic interface UserMapper {2、org.apache.ibatis.binding.BindingExcepti...

2019-05-21 22:58:32 312

原创 HashMap

1、HashMap1.1、属性table:Node类型的键值对。存储数据entrySet:Set类型的参数size:int类型,表示hashMap的大小modCount:int类型,fail-fast标识threshold:int类型,阈值,当hashMap的实际容量大于阈值时,要进行扩容。loadFactor:float类型,加载因子1.2、底层存储结构实际存...

2019-05-17 19:28:00 192

原创 Proxy

1、ProxyClassFactoryProxy的内部类,功能为创建代理类1.1、apply(ClassLoader loader, Class<?>[] interfaces)创建代理类的实际过程使用IdetityHashMap存储并检测接口的Class是否重复检测传经来的接口的Class是否与Class.forName()通过指定的类加载器加载的一致。检测C...

2019-05-17 19:21:44 319

原创 http、tcp、ip、udp

http协议是建立在tcp的基础上http协议定义传输的数据格式与规范tcp协议规定数据传输和连接方式Socket连接 建立Socket连接时可以指定传输协议,即TCP或UDP协议TCP连接: 建立tcp连接需要经过三次握手过程HTTP连接: 在建立TCP连接的基础上,再建立HTTP连接HT...

2019-05-12 15:12:52 196

原创 类加载器

Bootstrap ClassLoader 最顶层的类加载器,主要加载核心类库Extention ClassLoader 扩展的类加载器AppClass Loader 又叫SystemAppClass,加载当前应用的classpath的所有类一个ClassLoader创建时如果没有指定parent,那么它的parent默认就是...

2019-05-12 10:25:51 97

空空如也

空空如也

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

TA关注的人

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