点击查看代码 package com.grady.diytomcat; import com.grady.diytomcat.handler.DiyNettyTomcatHandler; import io.netty.bootstrap.ServerBootstrap; import io.net ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-03 12:03:00
                            
                                116阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            本次准备分享手写mini版dubbo,能让你体验一把自己写的dubbo是什么样子,由于时间问题,所以只能算是一个mini版。环境:JDK1.8,开发工具:idea第三方框...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-04-12 20:16:28
                            
                                95阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            本次准备分享手写mini版dubbo,能让你体验一把自己写的dubbo是什么样子,由于时间问题,所以只能算是一个mini版。环境:JDK1.8,开发工具:idea第三方框架:zookeeper如果你对dubbo陌生或者不熟悉,可以先去看看这篇文章如果你对<dubbo:application name="hello" >这类标签不熟悉,你可以先去了解一下这篇文章注:由于dubbo默认使用            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2020-12-14 14:04:00
                            
                                238阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            template <template> <div class="hello"> <h1>{{ msg }}</h1> <p @click="$store.commit('add')">counter: {{$store.state.counter}}</p> <p @click="$store.di ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-18 00:39:00
                            
                                98阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            Java 的多线程技术也是逐步发展的,在 JDK1.2 之前,其实 Java 的 Thread 还是基于 Green Thread 模拟的多线程并发,在 JDK1.2 之后才有了基于 OS 的 Thread 的 1:1 线程映射模型。JUC 是 JDK1.5 才出来的,在 JDK1.5 之前,业界前辈都是自定义的线程池,如 Tomcat 5.5 之前            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-12-22 01:11:20
                            
                                114阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            分析一般我们使用Servlet,需要在web.xml文件中配置:然后写一个TestServlet继承HttpSerevlet,重写doGet()和doPost()方法            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-12-22 00:45:24
                            
                                130阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            一、Android自定义View步骤 :自定义属性;选择和设置构造方法;重写onMeasure()方法;重写onDraw()方法;重写onLayout()方法;重写其他事件的方法(滑动监听等)。二、代码实现工具类代码:package com.smt.saveviewtocream.utils;
import android.content.Context;
import android.graph            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2023-07-12 23:25:52
                            
                                94阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            MVVM.js/*相关于Vue的构造函数 */function MVVM(options) {  // 将选项对象保存到vm  this.$options = options;             
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2022-01-10 16:21:01
                            
                                120阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            手写简易版的Promise/*首先我们创建了三个常量用于表示状态,对于经常使用的一些值都应该通过常量来管理,便于开发及后期维护*/            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2022-11-17 00:21:33
                            
                                98阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            router一共两个文件,一个是new Vue({(router/index)}) index.js import Vue from "vue"; import VueRouter from "./zhenVue-router"; import Home from "../views/Home.vu ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-10-17 23:28:00
                            
                                144阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            源码下载地址:https://github.com/sunmutian/springmvc4tian由于贴代码会导致样式难堪,所以建议直接去githup下载代码自定义注解   类似的定义:自定义的DispatcherServlet代码: 
import com.tian.springmvc.annotation.Repository;
import com.tian.springmvc.dao.D            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2020-12-14 19:22:53
                            
                                309阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            前言在这个之前我们需要了解render是什么?可以去之前的文章里面看看废话不多说,快快快 上车!!!定义一个对象先定义一个数据对象来作为我们的数据let data = {
    tag:"h2",
    props:{},
    children:"严老湿"
}tag 作为标签名,props 作为属性对象,children 作为子元素或者文本节点哈哈哈 还是老套路 先写一个 h2 标签试试水            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-01-30 12:58:59
                            
                                216阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            核心配置web.xml,也可以说是入口可以看得出DispatcherServlet很重要,所以我们得自己手写一个自己的DispatcherServlet。整个工程目录:源...            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-04-13 06:01:37
                            
                                105阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            1. 线程池原理我们使用线程的时候就去创建一个线程,这样实现起来非常简便,但是就会有一个问题:如果并发的线程数量很多,并且每个线程都是执行一个时间很短的任务就结束了,这样频繁创建线程就会大大降低系统的效率,因为频繁创建线程和销毁线程需要时间。那么有没有一种办法使得线程可以复用,就是执行完一个任务,并不被销毁,而是可以继续执行其他的任务呢?线程池是一种多线程处理形式,处理过程中将任务添加到队列,然后            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2022-09-12 20:34:47
                            
                                103阅读
                            
                                                                             
                 
                
                                
                     
                                    
                             
         
            
            
            
            新建maven项目Minicat, 需要做的事情,作为一个服务器软件提供服务的,我们可以通过浏览器客户端发送http请求,Minicat可以接收到请求进行处理,处理之后可以返回浏览器客户端。 1)提供服务,接收请求(Socket通信) 2)请求信息封装成Request对象,Response对象 3) ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-07-18 18:06:00
                            
                                224阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            
 
vue-router是开发vue项目中必不可少的依赖,为了能更好的理解其实现原理,而源码阅读起来又过于复杂和枯燥,笔者这里实现一个简易版本的vue-rouer,帮助自己来更好的理解源码。
其功能如下:
通过Vue插件形式使用
支持hash模式
支持嵌套路由
router-view组件
router-link组件
路由守卫
基本使用
基础demo单独新建了一个分支 ,方便学习            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-06-30 17:01:08
                            
                                145阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            1. 定义测试对象我们新建了一个obj对象,然后`new Observe`<!DOCTYPE html><html lang="en"><head>  <meta charset="UTF-8">             
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-02-01 09:47:12
                            
                                41阅读
                            
                                                                             
                 
                
                             
         
            
            
            
            手写mini版ReetrantLock(AQS公平锁) package com.xiaozhou; import sun.misc.Unsafe; import java.lang.reflect.Field; import java.util.concurrent.locks.LockSuppor ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-07-28 22:28:00
                            
                                113阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            Array篇 定义一个测试数组 const players = [ { name: '科比', num: 24 }, { name: '詹姆斯', num: 23 }, { name: '保罗', num: 3 }, { name: '威少', num: 0 }, { name: '杜兰特', nu ...            
                
                    
                        
                                                            
                                                                        
                                                                                        转载
                                                                                    
                            2021-08-31 18:35:00
                            
                                117阅读
                            
                                                                                    
                                2评论
                            
                                                 
                 
                
                             
         
            
            
            
            最近开发cloud项目,里面涉及到服务间调用,最后使用的openfeign解决的,于是对于openfeign的底层原理有些兴趣了,求@Override//首先获取对象Class<?            
                
                    
                        
                                                            
                                                                        
                                                                                        原创
                                                                                    
                            2023-09-03 21:57:02
                            
                                352阅读
                            
                                                                             
                 
                
                                
                    