- 博客(8)
- 资源 (3)
- 收藏
- 关注
原创 springmvc工作原理
SpringMvc工作原理工作原理图:执行流程:用户通过浏览器发送请求到前端控制器(DispatcherServlet)前端控制器收到请求调用处理器映射器(HandlerMapping)处理器映射器会找到具体的处理器,生成处理器对象以及处理器拦截器一并返回给前端控制器。前端控制器调用处理器适配器(HandlerAdapter)处理器适配器经过适配器调用具体的处理器(后端控制器)controller执行完毕后返回一个ModelAndView处理器适配器会将Controller执行结果返回
2020-10-14 19:59:41 121
原创 动态代理
动态代理1. JDK动态代理JDK 动态代理主要涉及到java.lang.reflect 包中的两个类: Proxy 和 InvocationHandler。InvocationHandler是一个接口,通过实现该接口的定义的横切逻辑,并通过反射机制调用目标类的代码,动态的将横切和业务逻辑编制在一起。Proxy 利用 InvocationHandler 动态创建一个符合某一接口的实例,生成目标类的代理对象。编码实现package com.yao.proxy;//1.编写原始接口publi
2020-10-14 19:17:42 116
转载 spring-AOP
彻底理解Spring—AOP什么是AOPAOP(Aspect-oriented-programming),面向切面编程,他与 OOP(Object-Oriented-Programming)面向对象编程相辅相成。AOP中的基本单元是Aspect(切面)术语Aspect(切面)aspect由==point cut ==和 ==advice ==组成,它既包含了横切逻辑的定义,也包括了连接点的定义。AOP的工作重心在于如何将增强织入目标对象的连接点上,这里包含两个工作: 1.如何通过 poin
2020-10-14 16:58:06 150
原创 Spring自动装配的方式
Spring自动装配的方式Spring 装配包括手动装配和自动装配,手动装配是有基于xml 装配、构造方法、setter 方法等自动装配有五种自动装配的方式,可以用来指导Spring 容器用自动装配方式来进行依赖注入。no:默认的方式是不进行自动装配,通过显式设置ref 属性来进行装配。byName:通过参数名自动装配,Spring 容器在配置文件中发现bean 的autowire 属性被设置成byname,之后容器试图匹配、装配和该bean 的属性具有相同名字的bean。byType:通过参
2020-10-14 15:17:38 1173
原创 spring依赖注入的4种方式
Spring 依赖注入的4种方式一、Set注入必须要有setter方法public class UserDao { public void test(){ System.out.println("=====test======"); }}package com.yao.service;import com.yao.pojo.UserDao;public class UserService { private UserDao userDao;
2020-10-14 14:58:59 2068
原创 乐观锁、悲观锁、自旋锁、Synchronized 同步锁
乐观锁、悲观锁、自旋锁、Synchronized 同步锁乐观锁乐观锁是一种乐观思想,即认为读多写少,遇到并发的可能性低,每次去拿数据的时候都认为别人不会修改,所以不会上锁,但是在更新的时候会判断一下在此期间别人有没有去更新这个数据,采取在写时先读取当前版本号,然后加锁操作(比较跟上一次的版本号,如果一样则更新)java中的乐观锁基本都是通过CAS操作实现的,CAS是一种更新的原子操作,比较当前值跟传入值是否一样,一样则更新,否则失败。悲观锁悲观锁就是一种悲观思想,即认为写多读少,遇到并发的可
2020-10-14 10:41:09 689
原创 Docker上安装Nginx
Docker上安装Nginx1.搜索镜像docker search nginx2.拉取镜像docker pull nginx3.查看镜像docker images4.启动容器docker run -d --name nginx01 -p 3344:80 nginx5.测试curl localhost:3344
2020-10-12 10:24:50 81
原创 Redis集群搭建
Redis 集群搭建(一主二从)搭建三个服务器,一台主机两台从机1.0 修改配置文件将redis.conf 文件复制3 份,分别为redis6379.conf、redis6380.conf、redis6381.conf修改文件内容修改一:修改二:修改三:修改四:修改五:修改完成之后,分别启动三个服务使用命令,在bin目录下 ./redis-server ../redis6379.conf ./redis-server ../redis6380.conf ./
2020-10-10 14:28:03 99
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人