自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(46)
  • 收藏
  • 关注

原创 mybatis常用标签

mybatis常用标签

2023-02-19 02:40:34 563 1

原创 #与$的区别

#:可以实现Sql注入攻击的占位符,传进来的值会自动拼接引号,不管传进来什么数值,都会拼上引号,变成字符型。$:传进来的值是啥就是啥,举例:当你有一条sql.比如按照id来查,这个时候是需要把id作为条件传过去,这个时候如果用#号,会导致程序报错,因为数据库的id是数值型,用#号会把传进来的数值型的id拼成字符型,导致报错,得用$符号。...

2022-01-25 23:17:23 3429

原创 Mybatis相关知识

一,Mybatis底层封装了JDBC , 对数据库可以进行操作 , 是一个优秀的持久层框架.好处: 简化了JDBC的开发步骤, 自动完成ORM映射.二,核心资源1,核心配置文件mybatis-config.xml 配置了事务管理,数据源2.映射文件XxxMapper.xml 存放大量的CRUD的SQL语句3,核心工具类会话工厂SqlSessionFactory : 产生会话会话SqlSession : 执行SQL语句4,ORM是指对象关系映射.把表里的字段的值 查到 自动交给 类里

2022-01-16 11:11:41 655

原创 前后端交互

注意一:a.data是固定写法,用来获取a的值。注意二:ajax发送的请求涉及到跨域的问题,需要使用到@CrossOrign表示放行请求。

2022-01-15 22:56:43 141

原创 后端处理逻辑

2022-01-12 22:21:32 348

原创 前端页面逻辑

注意:Spring MVC的工作原理,1.用户发送请求至前端控制器DispatcherServlet;2.前端控制器收到请求后,调用处理器映射器,请求获取Handle;3.处理器映射器根据请求url找到具体的处理器,生成处理器对象及处理器拦截器并返回给前端控制器。4.然后前端控制器调用处理器适配器;5.处理器适配器经过适配调用 具体处理器(Handler,也叫后端控制器);6.处理器适配器将Handler执行结果ModelAndView返回给前端控制器;7.前...

2022-01-12 22:16:12 1013

原创 @Data和@Builder注解解析

======================================================================@Data 和 @Builder是使用 lombok过程中常用的两个注解,@Data:将一个普通类变成JavaBean,并自动生成相应属性的 Getter,Setter等方法;@Builder:用构造者模式,通过链式方法帮助我们生成对象。==============================================================

2022-01-10 23:29:55 6089 2

原创 postman的相关知识

一,接口分类,流程,用例设计。接口分类:外部接口:被测系统与外部其他系统之间的接口。承保系统(被测系统),核算系统。内部接口:被测系统内部各个子模块之间的接口。承保系统(A系统,B系统)SIT.============================================================测试接口重点:检查接口参数的重要性,接口功能的正确性,输出结果的正确性,以及对各种异常场景的容错处理和权限控制。==================================

2022-01-08 12:56:05 6240

原创 接口的含义

接口可以理解为一种特殊的类,里面全部是由全局常量和公共的抽象方法所组成。接口是解决Java无法使用多继承的一种手段,接口在实际中更多的作用是制定标准,接口中的方法必须全部是抽象方法。抽象方法没有方法体。===============================================================接口的作用就是告诉类,你要实现我这种接口代表的功能,你就必须实现某些方法,我才能承认你确实拥有该接口代表的某种能力。============================

2022-01-06 23:02:32 564

原创 idea简单修改

2022-01-05 22:14:01 198

原创 idea的配置

2022-01-05 21:51:50 180

原创 Spring的@Configuration注解和@Component 注解

@Component注解和@Configuration注解区别。一:@Component注解用于描述一般bean对象。 @Configuration注解用于描述spring工程中的配置类,在配置类中定义一些由@Bean注解描述的方法,然后通过这些方法对一些自已定义或第三方的bean进行对象的创建和初始化。二:打开@Configuration注解源码会发现底层使用了@Component注解描述,表示@Configuration注解是一个增强版的@Component注解。三,使用@...

2021-12-22 09:01:49 3156

原创 死锁相关知识

一,什么是死锁?死锁是指多个进程在运行过程中因争夺资源而造成的一种僵局,此时若无外力作用,它们都将无法再向前推进。例如:线程A,先锁a再获得锁b的顺序获得锁, 线程B,先锁b再获得锁a的顺序获得锁。===============================================二,产生死锁的原因?1.竞争资源。2.进程间推进顺序非法。系统中的资源可以分为两类:可剥夺资源,不可剥夺资源。可剥夺资源:CPU和内存。不可剥夺资源:磁带机、打印机。=====...

2021-12-17 10:28:42 284

原创 Class文件里面放的内容。

一,什么是Java class文件是什么?java class 文件是对Java程序二进制文件格式的精确定义。每一个Java class文件都对一个Java类或者Java接口做出了全面描述。一个class文件中只能包含一个类或者接口。====================================================二,class文件可以分为两种结构。1.字节数据.魔数、小版本、大版本,字段结构的访问标识符等。2.表.常量池,方法结构等。===============

2021-12-17 09:48:42 732

原创 表单重复提交

一,防止Web表单重复提交的方法首先可以说一下,为什么会出现表单重复提交的问题。第一种:服务端可能由于网络延迟,并发排队,而未能及时响应结果,导致前端页面没有及时刷新,用户多次提交表单。第二种:提交表单成功之后用户再次点击刷新按钮导致表单重复提交。第三种:提交表单成功之后点击后退按钮回退到表单页面再次提交。解决方案:解决表单重复提交分为在前端拦截和服务端拦截2种方式。前端拦截:可以通过设置变量标志位进行拦截,也可以通过禁用按钮进行拦截。一种回答:服务端拦截,可以分为三步。第一步:

2021-11-18 18:59:50 1172

原创 SpringBoot的注解

一,@AutoConfigurationPackage该注解表示自动配置的包扫描的路径,工作原理:该注解会动态的获取主启动类当前的包路径,之后开启包扫描的机制。知识点:以后写代码都应该在主启动类的同包以及子包中。=======================================================================二,@Configuration,该注解一般标识类文件,告知springBoot程序,这个类是用来整合第三方框架/配置的。==========

2021-11-18 11:39:27 213

原创 java项目发布命令

java项目发布命令1.进入jar包的根目录。2.前提必须配置JDK。说明: 通过java -version检查JDK是否配置正常.如果提示java不是内部命令 则环境变量配置一定有问题.环境变量配置:3.项目发布。命令:java -jar xxx.jar4.项目关闭问题。如果项目发布成功之后,需要关闭. 则直接关闭dos命令窗口即可.如果依然不能正常关闭.则杀死进程/或者重启计算机.右键结束进程项即可...

2021-11-16 21:05:13 633

原创 Maven环境说明

关于Maven环境说明settings文件说明:1.配置本地仓库路径。2.配置私服镜像。3.IDEA整合Maven。

2021-11-16 20:38:14 64

原创 IDEA配置

2021-11-16 20:11:39 65

原创 消息队列rabbitMq

一,队列。队列是一种先进先出的数据结构。=========================================================================二,消息队列。消息队列是一种中间件,可以简单理解为把要传输的数据放在队列中,=========================================================================三,生产者和消费者。把数据放到消息队列叫做生产者从消息队列里边取数据叫做消费者====

2021-11-15 17:01:27 1302

原创 缓存穿透,雪崩,击穿。

一,缓存访问流程:正常的使用缓存流程大致是,数据查询先进行缓存查询,如果key不存在或者key已经过期,再对数据库进行查询,并把查询到的对象,放进缓存。如果数据库查询对象为空,则不放进缓存。二,缓存穿透。缓存穿透,是指同一时刻查询一个数据库一定不存在的数据。=============================================================三,缓存雪崩。是指在某一个时间段,缓存集中过期失效,大量请求同时访问数据库,造成数据库宕机。=.

2021-11-10 14:16:23 510

原创 Redis 数据持久化

一,Redis 数据持久化背景。Redis是一种内存数据库,在断电时数据可能会丢失。如果通过持久化将数据搞一份儿到磁盘上去,然后再定期同步到一些云存储服务上去,那么就可以保证一些数据不丢失。=========================================================================二,持久化方式。1.Rdb方式是通过手动或周期性方式保存redis的一种机制,Rdb方式一般为redis的默认数据持久化方式.系统启动时会自动开启这种方式的持久化机

2021-11-09 17:11:56 811

原创 Redis常用数据类型。

一,Redis出现的背景。我们现在的项目架构中,基本上是Web服务器(Tomcat)和数据库独立部署,独占服务器资源,随着用户数的增长,并发读写数据库,会加大数据库访问压力,导致性能的下降,严重时直接导致系统宕机。因此,我们可以在Tomcat同服务器上中增加本地缓存,并在外部增加分布式缓存,缓存热门数据,也就是通过缓存能把绝大多数请求在读写数据库前拦截掉,大大降低数据库压力。==============================================================

2021-11-09 15:01:10 816

原创 Docker技术简介

一,Docker技术简介。Docker是一个虚拟化平台,可以通过虚拟化方式,为应用提供可运行的容器,基于这种方式,可更快地打包、测试以及部署应用程序。=========================================================================二,Docker 核心对象。1.镜像.Docker 镜像是一个特殊的文件系统,除了提供容器运行时所需的程序、库、资源、配置等文件外,还包含了一些为运行时准备的一些配置参数,例如JDK镜像、Centos镜

2021-11-08 17:08:21 763

原创 单点登录系统

一,背景分析。传统的登录系统中,每个站点都实现了自己的专用登录模块,各站点的登录状态相互不认可,各站点需要逐一手工登录。例如:用户登录京东超市后,想进入京东家电,需要重新登录。这样的系统,我们又称之为多点登陆系统,应用起来相对繁琐,由此单点登陆系统诞生。====================================================二,单点登陆系统。即多个站点共用一台认证授权服务器,用户在其中任何一个站点登录后,可以免登录访问其他所有站点。三,单点登陆系统.

2021-11-05 16:58:22 168

原创 AOP方式操作日志记录

项目描述:在实现文件上传业务时,添加记录日志的操作。1.先定义一个AOP设置中的切面对象。添加@Aspect,@Component注解,假如想在控制台展示日志信息,可以加上@Slf4j注解。2.创建切入点注解(也叫自定义注解)3.定义切入点方法。4.定义日志操作切面。通过切面封装切入点(Pointcut)和扩展业务逻辑(Around,…)...

2021-11-05 14:06:38 324

原创 Spring Cloud Gateway 网关

一,网关背景。客户端向微服务发送请求时,每个微服务都有一个公开的URL路径,通过该URL可以直接映射到具体的微服务当中,如果没有网关的存在,我们只能在客户端记录每个微服务的地址,然后分别去调用,但是在调用时需要独立认证,并且存在跨域请求,这在一定程度上提高了代码的复杂度,基于这些问题提出了网关的概念。=======================================================================二,什么是网关?网关本质上是提供了一个各种服务访问入口

2021-11-04 11:36:05 695

原创 Sentinel的降级熔断

一,什么是降级熔断?让外部应用停止对服务的访问,例如生活中跳闸,路障设置-此路不通。=================================================================二,为什么要进行熔断?平均响应速度越来越慢或经常出现异常,这样可能会导致调用链堆积,最终系统崩溃。=================================================================三,降级熔断属性分析最大RT----最大的平均响

2021-11-03 20:30:38 186

原创 Sentinel限流

一,什么是Sentinel?Sentinel是分布式系统的流量防卫兵,也可以说是流量控制中间件,是阿里开发的,它以流量为切入点, 从流量控制、熔断降级、系统负载保护等多个维度来保护服务的稳定性。=====================================================================二,Sentinel的作用?在系统负载过高时,保证各种业务安全运营,防止系统崩溃,采用限流、降级和熔断,三种措施来保护系统。==============

2021-11-03 14:54:38 281

原创 IDEA插件Lombok和SpringBoot热部署

一,Lombok.1,概述简化了Model层中pojo类的代码的编写.以前pojo类/实体类,需要自己提供set get toString equals hashCodeLombok通过各种注解,简化了以上操作。2.常用注解@Data会自动生成set get toString equals hashCode@NoArgsConstructor自动生成无参构造@AllArgsConstructor自动生成全参构造@Accessors(chain = true) //开启链式编程=====

2021-11-02 20:41:19 130

原创 Nacos配置中心

一,背景分析。以前,我们会把配置文件写在配置文件中,然而,在分布式系统下,这样的方式就变得非常不好管理,并容易出错,假如项目正在运行,此时修改了配置文件,如果要让这些配置文件生效,通常做法是重启服务,但这样会影响用户体验,于是,我们把一些经常需要修改的配置写在配置中心里面。===============================================================二,日志级别。需求:通过配置中心设置动态日志级别,控制日志信息的输出。常用日志级别:trace&

2021-11-01 20:59:28 275

原创 集合容器知识点

一。泛型想要模拟数组数据类型检查,在编译阶段检查传入的数据是否正确.泛型的作用:将报错的时机提前,不会在运行时才报错。泛型只在编译生效,字节码文件中没有泛型.编译后这样的部分会被删除,不出现在最终的源码中,所以不会影响JVM后续运行时的性能.=========================================================================二,迭代集合/遍历集合迭代步骤;1.获取集合的迭代器c.iterator;2.判断集合中是否有下一个可迭代

2021-11-01 11:46:21 321

原创 Spring的IOC和DI知识

一,IOC是控制反转,指将对象的创建,对象的储存,以及对象的管理都交给spring容器。两种方式:XML实现方式和注解方式。XML实现方式:注意:id作为类的唯一标识,class表示类的全路径。注意:读取配置文件后,spring会根据类的全路径找到类,然后创建出对象。...

2021-10-30 14:57:44 78

原创 Feign相关知识点

一,Feign出现的背景.服务消费方基于rest方式请求服务提供方的服务时,一种直接的方式就是自己拼接url,拼接参数然后实现服务调用,但每次服务调用都需要这样拼接,代码量复杂且不易维护,此时Feign诞生。=========================================================================二,Feign是什么Feign 是一种Web服务客户端,底层封装了对Rest技术的应用,通过Feign可以简化服务消费方对远程服务提供方法的调用实

2021-10-29 21:42:34 136

原创 变量与方法

一,成员变量与局部变量。成员变量:位置:类里方法外,作用域:整个类有效,类消失了,变量才释放,注意:不用初始化,会自动赋予默认值。-------------------------------------------------------------------------------------------局部变量:位置:方法里或局部代码块中,作用域:方法里或局部代码块中有效,注意:要手动初始化。============================================

2021-10-29 17:48:31 52

原创 String相关知识

一.创建String对象的两种方式.1.字符串底层维护的是char[]数组,直接存放在堆中。例如:char[] value={'a','b','c'};String s1=new String(value);2.底层也会new String(),但是存放在堆中的常量池中,效率高。String s2 ="abc";注意:如果是第一次使用字符串,java会在堆中的常量池创建对象。再次使用调用此对象时,会直接访问堆中常量池中的对象。...

2021-10-28 19:24:02 170

原创 Nacos面试小节

1.为什么要将服务注册到nacos?为了更好的查找这些服务------------------------------------------------------------------------------------------------------2.Nacos服务是如何判定服务实例的状态?通过发送心跳包,5秒发送一次,如果15秒没有回应,则说明服务出现了问题,如果30秒后没有回应,则说明服务已经停止。----------------------------------------

2021-10-28 16:15:58 1646

原创 索引知识点

一,索引有哪些优缺点?索引的优点:1.可以大大加快数据的检索速度,这也是创建索引的最主要的原因。2.通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。=========================================================================二,索引的缺点:1.创建索引和维护索引要耗费时间,索引也要动态的维护,会降低增/改/删的执行效率:2.索引本身也是一种表,需要占物理空间。======================

2021-10-27 20:14:23 146

原创 字段约束及基础函数

一,主键约束。字段的值必须为唯一且不能为Null,通常会使用自增策略。例如:create table abc(id int primary key auto_increment);==============================================================二,非空约束。字段的值不能为空,但可以重复。例如:create table user(id int primary key auto_increment,password varchar(50)

2021-10-27 11:00:21 97

原创 Mysql数据库的安装

一,Mysql数据库。1.mysql服务端,它来处理具体数据维护,保存磁盘。2.mysql客户端,CRUD新增,修改,删除,查询。二,安装服务端。1.找到二阶段资料,点击mariadb-10.3.28-winx64.msi,下一步下一步。...

2021-10-26 21:03:06 53

空空如也

空空如也

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

TA关注的人

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