- 博客(62)
- 收藏
- 关注
原创 MyBatis Plus
MyBatisPlus(简称MP)是基于MyBatis框架基础上开发的增强型工具,旨在简化开发、提高效率https特性无侵入:只做增强不做改变,不会对现有工程产生影响强大的 CRUD 操作:内置通用 Mapper,少量配置即可实现单表CRUD 操作支持 Lambda:编写查询条件无需担心字段写错支持主键自动生成内置分页插件……操作。
2024-03-19 17:25:25 864
原创 微服务分布式事务
事务,本地事务,分布式事务,分布式系统架构2个理论,CAP,BASE,强一致性,最终一致性,seata阿里巴巴旗下分布式事务框架,重要角色,seata事务模式
2024-02-15 23:46:53 826
原创 微服务RabbitMQ高级篇
消息可靠性传递概述,生产者消息确认机制publisher-comfirm,publisher-return,消息持久化消费者消息确认机制,如何确保RabbitMQ消息的可靠性?死信交换机,延迟队列,惰性队列,MQ集群
2024-02-15 22:16:15 1864 1
原创 微服务RabbitMQ进阶篇
目录SpringAMQP什么是AMQP?SpringAMQP如何发送消息SpringAMQP如何接收消息?spring amqp(重点)介绍1.简单模式2.工作队列模式3.发布订阅模式4.路由模式5.通配符模式,消息转化器,RabbitMq集群搭建,搭建流程
2024-02-14 23:49:43 850 1
原创 微服务RabbitMQ基础篇
初识MQ?同步和异步通讯,常见mq技术对比,RabbitMq快速入门,安装步骤,工作流程,工作模式,1.简单模式,2.工作队列模式,3.发布订阅模式,4.路由模式,5.通配符模式,消息转换器,配置JSON转换器
2024-02-14 23:49:29 965
原创 微服务Docker
认识docker,安装Docker,spring boot项目制作成镜像,Docker的基本操作,镜像操作,容器操作,数据卷(容器数据管理),Docker-compose,Docker Compose安装,私有镜像仓库,镜像仓库概念,搭建私有镜像仓库
2024-02-12 00:50:09 1477 2
原创 微服务Gateway服务网关
Gateway服务网关网关的核心功能SpringCloud中网关的实现基本步骤,编写基础配置和路由规则,路由配置包括,断言工厂Predicate Factory,过滤器工长GatewayFilter过滤器类型,全局过滤器GlobalFilter代码实现,全局过滤器与过滤器工厂GatewayFilter的区别,过滤器执行顺序,规则,跨域问题
2024-01-06 22:41:46 1147
原创 初识微服务
项目中有且只有一个模块可以运行和部署。将项目拆分成多个可以单独运行和部署的模块。单独运行和部署的模块(微)服务就是分布式系统架构是微服务架构的一站式解决方案,集成了各种优秀微服务功能组件netflixalibabaspring cloudspring cloud aliaba
2023-09-07 16:29:01 53 1
原创 微服务注册配置中心负载均衡
1.服务注册 服务名称 地址列表2.消费者通过提供方名称在注册中心中查找提供方的地址列表。3.消费者中通过负载均衡算法,从地址列表中选择地址4.远程调用。
2023-09-02 23:11:35 78 1
原创 项目一总结(上)
在gitee中创建与项目同名的仓库,复制远程仓库的地址,在idea中push中Define remote 中粘贴该地址。3.读取配置文件中的配置,该类要用到@ConfigurationProperties(prefix="*.*")和@Component注解。5.可采用@Builder注解加在该类上,在调用时XX.builder.属性()....build();1.nginx必须放在没有中文的目录中才能正常运行(双击nginx.exe)。9.//todo 需要后期完善代码。12.Swagger常用注解。
2023-08-25 02:06:17 80
原创 Filter过滤器
1.定义一个类,实现 Filter 接口,并重写其所有方法。- init方法:过滤器的初始化方法。在web服务器启动的时候会自动的创建Filter过滤器对象,会自动调用init初始化方法只会被调用一次。- doFilter方法:这个方法是在每一次拦截到请求之后都会被调用,被调用多次的,每拦截到一次请求就会调用一次doFilter()方法。- destroy方法: 是销毁的方法。关闭服务器的时候,它会自动的调用销毁方法destroy,只会被调用一次。
2023-08-16 00:19:22 43
原创 日志-展示
在项目打包时,会被排除,lombok依赖只作用于编译阶段,编译完成就没用了,为避免jar包的体积,可以从spring-boot的jar包里排除掉。map-underscore-to-camel-case: true #开启驼峰命名。banner-mode: off # 关闭SpringBoot启动图标(banner)前提先引入,@Slf4j注解(属于lombok依赖中的注解)在(yml格式)配置文件中加入。在(yml格式)配置文件中加入。一定要在配置文件中写入。简化POJO实体类开发。
2023-08-16 00:18:24 36
原创 异常处理
1.定义一个类,在类上加上一个注解@RestControllerAdvice,就代表定义了一个全局异常处理器。2.在全局异常处理器当中,定义一个方法来捕获异常,方法加上注解@ExceptionHandler。通过注解当中的value属性来指定我们要捕获的是哪一类型的异常。
2023-08-16 00:17:08 33
原创 spring配置文件信息读取
要引入spring-boot-configuration-processor依赖。加入此依赖 该类就不会有红提示,而且配置文件写配置时会提示要配置某各类中的属性。@Component:先把该类放入容器。属性字段名称要和配置文件保持一致。层级缩进不要用Tab。
2023-08-16 00:15:50 35
原创 阿里云存储
/获取接收到的文件内容的输入流。//将接收的文件转存到磁盘文件中。image.transferTo(new File("磁盘路径"+2+3));//获取文件的大小,单位:字节。//获取文件内容的字节数组。#配置单个请求最大上传大小(一次请求可以上传多个文件)MultipartFile 类型。
2023-08-16 00:13:26 37
原创 会话跟踪令牌技术
setExpiration(new Date(System.currentTimeMillis() + 24*3600*1000)) //有效期。.setExpiration(new Date(System.currentTimeMillis() + expire))//过期时间。指的是jwt令牌,看似是一个随机的字符串,但是我们是可以根据自身的需求在jwt令牌中存储自定义的数据内容。.setSigningKey("itheima")//指定签名密钥(必须保证和生成令牌时使用相同的签名密钥)
2023-08-16 00:12:05 34
原创 初识-事务
Transactional(propagation = Propagation.REQUIRES_NEW) //不论是否有事务,都创建新事务 ,运行在一个独立的事务中。在当前这个方法执行开始之前来开启事务,方法执行完毕之后提交事务。如果在这个方法执行的过程当中出现了异常,就会进行事务的回滚操作。让所有的异常都回滚,需要来配置@Transactional注解当中的rollbackFor属性,指定出现何种异常类型。当一个事务方法被另一个事务方法调用时,这个事务方法应该如何进行事务控制。
2023-08-16 00:10:46 37 1
原创 常用-注解
Transactional 方法,接口,类 接口,所有实现类的所有事务,类,当前类所有方法都有事务,建议放在方法上。@RequestMapping 类上,方法上 类上,映射路径的前缀,方法上,具体路径,同时存在,路径需要拼接。)参数,非空校验,默认值,名称映射。@ResponseBody 类上,方法上 放在类上,所有方法返回json,放在方法上,返回json。
2023-08-16 00:09:18 28
原创 开发规范入门知识及常见问题
参数格式是路径格式时,方法的参数要和路径的参数名一致(比如删除,修改操作)要用@PathVariable 比如方法中的参数可写为 @PathVariable Integer id。解决方法:这个并不影响代码的编译,如果你想去掉它,可以在pom.xml中加入spring-boot-configuration-processor依赖即可!查询注入顺序是,去Bean中查找Name,如果查不到就去查Class,其次再从属性去查找,如果我们定义的类中有相同的Name可能会报错,因为查询到了多个。
2023-08-16 00:04:26 57 1
原创 拦截器Interceptor
编写一个登录拦截器类实现HandlerInterceptor接口,并重写其所有方法注意preHandle方法:目标资源方法执行前执行。返回true:放行 返回false:不放行postHandle方法:目标资源方法执行后执行afterCompletion方法:视图渲染完毕后执行,最后执行。
2023-08-15 12:37:35 105 2
原创 SpringBootWeb原理篇
1. starter模块(进行依赖管理[把程序开发所需要的依赖都定义在starter起步依赖中])2. autoconfigure模块(自动配置)
2023-08-15 11:57:33 116 1
原创 Maven高级
目录模块设计起因思想注意继承和聚合继承作用实现子工程父工程Maven打包方式注意版本锁定注意属性配置自定义属性引用属性面试题聚合聚合工程作用实现继承与聚合对比作用相同点不同点多环境私服(会使用即可)依赖查找顺序资源上传与下载注意 与 的区别是什么?命令启动跳过测试问同事要一个setting文件,修改本地地址即可
2023-08-15 11:47:32 39 1
原创 mybatis
SpringBoot的父工程对compiler编译插件进行了默认的参数parameters配置,使得在编译时,会在生成的字节码文件中保留原方法形参的名称,所以#{…在编译时,生成的字节码文件当中,不会保留Mapper接口中方法的形参名称,而是使用var1、var2、...这样的形参名字,此时要获取参数值时,就要通过@Param注解来指定SQL语句中的参数名。2. 模糊查询使用${...}进行字符串拼接,这种方式呢,由于是字符串拼接,并不是预编译的形式,所以效率不高、且存在sql注入风险。
2023-08-15 00:36:57 51 1
原创 springBootWeb
Autowired自动装配是Spring提供的注解 ,放在属性上,就可以实现程序运行时IOC容器(Controller及Service)自动注入需要的依赖对象,并进行属性赋值.容器创建的对象是无状态(不存储数据)的对象,一般Controller,service,dao等放入容器, 实体类user不放入容器(因为存储了数据)在value属性中指定注入的bean的名称。复杂请求(实体A中有实体B)和上述类似(controller方法参数直接写pojo名),但访问B属性用,B.属性名和请求参数名对应()
2023-08-15 00:33:18 72 1
原创 HTTP协议和web服务器
Hyper Text Transfer Protocol(超文本传输协议),规定了浏览器与服务器之间数据传输的规则。打开浏览器,点击`F12`打开开发者工具,点击`Network`来查看浏览器向服务器进行请求时:服务器按照固定的格式进行解析服务器向浏览器进行响应时:浏览器按照固定的格式进行解析。
2023-08-15 00:32:23 52 1
原创 springboot入门和MVC
SpringBootApplication SpringBoot的主启动类 ,只能默认扫描同包下的所有内容,如不在同一包下就是用,@ComponentScan。用到parent父依赖(父依赖中有个dependencyManagement锁定了依赖的版本,并没有真正引入,减少版本号冲突),就不会用在起步以来中写版本号,@ComponentScan({"com.itheima"})设置包扫描范围,写在启动类中。起步依赖:帮我们引入许多依赖,简化依赖配置。在页面和控制器传递数据的对象。
2023-08-15 00:31:34 47 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人