暂无个人介绍
Bean的加载方式 1.XML方式声明bean 2.XML+注解方式声明bean 3.注解方式声明配置类 扩展1——FactoryBean 扩展2——配置类中导入原始的配置文件(系统迁移) 扩展3——proxyBeanMethods 4.使用@Import导入要注入的bean 扩展4——使用@Import注解还可以导入配置类 5.使用上下文对象在容器初始化完毕后注入bean 6.导入实现了ImportSelector接口的类,实现对导入源的编程式处理 bean的加载方式(七) bean的加载方式(八)
Spring详细总结3
Spring详细总结2
1.Spring简介 1.1 Spring概述 (1)Spring 是最受欢迎的企业级 Java 应用程序开发框架,数以百万的来自世界各地的开发人员使用Spring 框架 来创建性能好(spring为我们提供对象的创建)、易于测试(整合了Junit)、可重用的代码(例如把事务的代码放到切面中, 再把切面作用于方法中)。
一.创建型模式 1.单例模式 (1)核心作用 保证一个类只有一个实例,并且提供一个访问该实例的全局访问点 (2)常见使用场景 ①Windows的Task Manager(任务管理器)就是很典型的单例模式
注意:<collection>标签中的column:是要传递给select查询语句的参数,如果传递多个参数,格式为column= " {参数名1=表字段1,参数名2=表字段2}"
Mybatis Plus 中的LambdaQueryWrapper简介
1.@PathVariable注解的作用 在SpringMVC中可以使用占位符进行参数绑定,地址/list/1/3可以写成/list/{page}/{limit},占位符{page}和{limit}对应的值就是1和3。在业务方法中我们可以使用@PathVariable注解进行占位符的匹配获取工作。
Param注解的作用 1.便于传递多个参数 (1)Mapper层
一.Nginx概述 1.Nginx介绍 (1)Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上Nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用Nginx的网站有:百度、京东、网易、腾讯、淘宝等。 (2)可以到Nginx官方网站下载Nginx的安装包,地址为:https://nginx.org/en/download.html
一.SQL语句简介 1.什么是SQL? SQL(Structured Query Language):结构化查询语言 其实就是定义了操作所有关系型数据库的规则。每一种数据库操作的方式存在不一样的地方,称为“方言”
一.什么是服务雪崩 (1)分布式系统环境下,通常会有很多层的服务调用。由于网络原因或自身的原因,服务一般无法保证100%可用。如果一个服务出现了问题,调用这个服务就会出现线程阻塞的情况,此时若有大量的请求涌入,就会出现多条线程阻塞等待,进而导致服务瘫痪。 (2)如下图,对于同步调用,当底层的库存服务不可用时,商品服务请求线程被阻塞,当有大批请求调用库存服务时,最终可能导致整个商品服务资源耗尽,无法继续对外提供服务。 (3)由于服务与服务之间的依赖性,故障会传播,不可用沿请求调用链向上传递,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪崩效应”。
一.Git概述? 1.什么是Git? Git是一个分布式版本控制,主要用于管理开发过程中的源代码文件(Java类、xml文件、html页面等),在软件开发过程中被广泛使用。
可以看出ControllerAdvice本质上是一个Component,因此也会被当做组件扫描
一.内部类 1.什么是内部类? 将一个类A定义在另一个类B里面,里面的那个类A就称为内部类,B则称为外部类 2.成员内部类 (1)成员内部类:定义在类中方法外的类 (2)定义格式:
一.Linux的安装 1.Linux系统的安装方式 (1)物理机安装:直接将操作系统安装到服务器硬件上 (2)虚拟机安装:通过虚拟机软件安装 虚拟机:指通过软件模拟的具有完整硬件系统功能、运行在完全隔离环境中的完整计算机系统。如VMWare
1.2 查找树 1.2.1 二叉查找/搜索/排序树 BST (1)或者是一棵空树 (2)或者是具有下列性质的二叉树 ①若它的左子树不为空,则左子树上所有结点的值均小于它的根结点的值 ②若它的右子树上所有结点的值均大于它的根结点的值 ③它的左、右子树也分别为二叉排序树
1.MVC基本介绍 (1)M:Module,模型。JavaBean 完成具体的业务操作,如:查询数据库,封装对象 (2)V:View,视图。JSP 展示数据 (3)C:Controller,控制器。Servlet ①获取用户的输入 ②调用模型 ③将数据交给视图进行展示
一.Restful风格的基本介绍 1.Restful是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件。主要用于客户端和服务器端交互类的软件,基于这个风格设计的软件可以更加简洁,更有层次,更易于实现缓存机制等。 2.Restful风格的请求使用“url+请求方式”表示一次请求目的,HTTP协议里面四个表示操作方式的动词如下:
1.Bean的依赖注入概念 依赖注入:它是Spring框架核心IOC的具体体现 (1)在编写程序时,通过控制反转,把对象的创建交给Spring,但是代码中不可能出现没有依赖的情况。IOC只是降低了他们的依赖关系,但不会消除。例如:业务层仍会调用持久层的方法。 (2)那这种业务层和持久层的依赖关系,在使用Spring之后,就让Spring来维护了。简单的说,就是坐等框架把持久层对象传入业务层,而不是我们自己去获取。
阿里云短信验证Java版
1.Redis简介 (1)什么是Redis ①Redis是一个基于内存的key-value结构数据库 ②基于内存存储,读写性能高 ③适合存储热点数据(热点商品、资讯、新闻) ④Redis是一个开源的内存中的数据结构存储系统,它可以用作:数据库、缓存和消息中间件 ⑤它存储的value类型比较丰富,也被称为结构化的NoSql数据库。NoSql,不仅仅是SQL,泛指非关系型数据库。NoSql数据库 并不是要取代关系型数据库,而是关系型数据库的补充。
1.拦截器(interceptor)的作用 (1)SpringMVC的拦截器类似于Servlet开发中的过滤器Filter,用于对处理器进行预处理和后处理。 (2)将拦截器按一定的顺序联结成一条链,这条链称为拦截器链(interceptor Chain)。在访问被拦截的方法或字段时,拦截器链中的拦截器就会按其之前定义的顺序被调用。拦截器也是AOP思想的具体体现。
1.集合的理解和好处 1)我们先分析一下使用数组的弊端: ①长度开始时必须指定,并且一旦指定,不能更改 ②保存的元素必须为同一类型 ③增加/删除元素比较麻烦 2)集合的好处 ①可以动态保存任意多个对象,使用比较方便 ②提供了很多方便的操作对象的方法:add、remove、set、get等 3)集合的框架体系如下: ①单列集合
(3)加权图 ①在实际应用中,图不但需要表示元素之间是否存在某种关系,而且图的边往往与具有一定实际意义的数有关,即每条边都有与它相关的实数,称为权 ②这些权值可以表示从一个顶点到另一个顶点的距离或消耗等信息。这种边上具有权值的图称为带权图
java中Math类的基本用法
.String类 1.1String类的理解和创建对象 (1)String对象用于保存字符串,也就是一组字符序列 (2)字符串常量对象是用双引号括起来的字符序列 (3)字符串的字符使用Unicode字符编码。一个字符(不区分字母还是汉字)占两个字节 (4)String是final类,不能被其他类继承 (5)String有属性 private final char value[];用于存放字符串内容 注意:value是一个final类型,不可以修改(即value不能指向新的地址,但是单个字符内容是可以改变的)
一.Servlet概念 servlet:server applet(运行在服务器端的小程序) 浏览器请求动态资源找我们写的Java类,这些Java类没有main方法,依赖于服务器(如tomcat)才能运行,因此这些类需要遵守一定的规则,才能被服务器(tomcat)识别 1.servlet就是一个接口,定义了Java类可以被浏览器访问到(tomcat识别)的规则 2.将来我们自定义一个类,实现Servlet接口,复写方法
一.线程相关概念 (1)程序 是为了完成特定任务、用某种语言编写的一组指令的集合。简单的说就是我们写的代码。 (2)进程 ①进程是指一个内存中运行的应用程序,每个进程都有一个独立的内存空间,一个应用程序可以同时运行多个进程; ②进程也是程序的一次执行过程,是系统运行程序的基本单位;系统运行一个程序即是一个进程从创建、运行到消亡的过程。 比如我们使用的QQ,就启动了一个进程,操作系统就会为该进程分配内存空间。当我们使用迅雷,又启动了一个进程,操作系统将为迅雷分配新的内存空间。
1.|和||的区别 (1)用法:condition 1 | condition 2、condition 1 || condition 2 (2)逻辑或运算符(|):先判断条件1,不管条件1是否可以决定结果(这里决定结果为true),都会执行条件2 (3)短路或运算符(||):先判断条件1,如果条件1可以决定结果(这里决定结果为true),那么就不会执行条件2
1.物理删除和逻辑删除 (1)物理删除:真实删除,将对应数据从数据库中删除,之后查询不到此条被删除的数据 (2)逻辑删除:假删除,将对应数据中代表是否被删除字段状态修改为“被删除状态”,之后在数据库中仍旧能看到此条数据的记录 2.逻辑删除的使用场景 (1)可以进行数据恢复 (2)有关联数据,不便删除
满二叉树和完全二叉树 (1)满二叉树:高度为k并且有2k+1-1个结点的二叉树。在满二叉树中,每层结点都达到最大数,即每层结点都是满的,因此称为满二叉树 (2)完全二叉树:若在一棵满二叉树中,在最下层从最右侧起去掉相邻的若干叶子结点,得到的二叉树即为完全二叉树
1、Java虚拟机的内存可以分为5个部分 栈stack、堆heap、方法区method area、本地方法栈(Native Method stack)、寄存器(PC Register
Java之二维数组
Java动态构建日期年月日目录
2.报错原因 启动SpringBoot项目时,会自动找数据库配置,但是我们的模块现在不需要操作数据库 3.解决方法 (1)添加上数据库配置 (2)在启动类添加属性,默认不去加载数据库配置(建议
一.cookie和session的区别 (1)cookie存储数据在客户端,session在服务器端 (2)cookie有数据大小限制,session没有 (3)cookie相对于不安全,session安全 (4)cookie 可设置为长时间保持,比如我们经常使用的默认登录功能,session一般失效时间较短,客户端关闭或者session 超时都会失效。
1.栈 1.1栈的定义 (1)栈又称为堆栈,它是运算受限的线性表。其限制是仅允许在表的一端进行插入和删除操作,不允许其他任何位置进行插入、查找和删除等操作。 (2)表中进行插入、删除操作的一端称为栈顶,栈顶保存的元素称为栈顶元素。相对的,表的另一端称为栈底。 (3)当栈中没有数据元素时称为空栈; (4)向一个栈插入元素又称为进栈或入栈,从一个栈中删除元素又称为出栈或退栈。 (5)由于栈的插入和删除操作仅在栈顶进行, 后进栈的元素必定先出栈;所以又把堆栈称为后进先出表
1.什么是线性表 线性表是n个相同数据类型元素的有限序列,通常记作(a0,a1,…an-1) (1)相同数据类型元素:都是具有相同属性的元素 比如都是数字,都是字符,也可以都是具有复杂结构的数据元素(如学生、商品等) (2)有限: 线性表中数据元素的个数n定义为线性表的长度,n是一个有限值 ①当n=0时线性表为空表 ②在非空的线性表每个数据元素在线性表中都有唯一确定的序号 ③在一个具有n > 0个数据元素的线性表中,数据元素序号的范围是[0,n-1]
一.vue的简介 1.什么是vue 官方给出的概念:是一套用于构建用户界面的前端框架 2. vue 的特性 vue 框架的特性,主要体现在如下两方面: (1)数据驱动视图 在使用了 vue 的页面中,vue 会监听数据的变化,从而自动重新渲染页面的结构。示意图如下:
为了简化路由参数的获取形式,vue-router 允许在路由规则中开启 props 传参 ①在定义路由规则时,声明props:true 选项 { path: “/movie/:id”, component: Movie, props: true } ②使用props接收路由规则中匹配到的参数项 ③直接使用props中接收到的路由参数
process对象是一个全局变量,提供了有关当前 Node.js 进程的信息并对其进行控制。 作为全局变量,它始终可供 Node.js 应用程序使用,无需使用 require()。 它也可以使用 require() 显式地访问。
(1)执行卸载命令删除当前vue-cli: cmd窗口输入:npm uninstall -g @vue/cli 2、执行如下命令安装低版本的: npm install -g @vue/cli@4.5.13 3、在cmd中执行:vue -V 命令;展示成功。
2.什么是跨域问题 通过一个地址去访问另外一个地址,这个过程中如果有三个地方,任何一个不一样就会出现跨域问题 (1)访问协议: http、 https (2)ip地址: (3)端口号:9528、8001
解释:@符号表示一个特定路径的别称,可以在build/webpack.base.conf.js中进行配置
事件触发后就会产生事件对象,与事件相关的信息都会存储在一个对象中;这个对象会以参数的形式传给事件处理函数,所以事件处理函数默认会有一个事件对象参数;想要使用这个事件对象只要给事件处理函数定义一个形参即可。 例如:
箭头函数多用于匿名函数的定义
1.注解@TableFiled含义 该注解用于标识非主键的字段在实体类中,在需要的属性值上使用该注解 2.在实体类需要自动填充的属性上添加@TableFiled()注解
MybatisPlus开启打印sql语句
1.final关键字 1.1final关键字基本介绍 (1)用来修饰类,在JDK中,被设计为final类的有String、System等。 当用final修改类时,该类成为最终类,无法被继承。简称为“断子绝孙类”。 (2)用来修饰一个方法 当使用final修饰方法时,这个方法将成为最终方法,无法被子类重写。但是,该方法仍然可以被继承。 (3)final修饰变量, ①如果是基本数据类型的变量,则其数值一旦在初始化之后便不能改变; ②如果是对象类型的变量,只能保证它的引用不变,但对象的内容是可以改变的