- 博客(26)
- 收藏
- 关注
原创 K8s快速入门
原来我们的应用程序需要访问数据库的话,一般的做法是将数据库的地址和端口等连接信息写到配置文件或者环境变量中,然后在应用程序中读取这些配置信息,这样配置信息就和应用程序耦合在一起了,当数据库的地址或者端口发生变化,我们就得修改应用程序的配置信息然后重新编译部署,这样不仅麻烦,而且对于一些需要不间断运行的服务来说是不能接受的(比如你深夜肚子饿了想点外卖而服务器却在重新编译部署)。将配置信息和应用程序的镜像内容分离开,当数据库的地址和端口发生变化的时候,只需要修改 ConfigMap对象中的配置信息,
2024-10-17 18:00:09
983
原创 SpringCloud(3)
每个只能配置一个,因此我们可以在配置类中统一设置。我们在publisher模块定义一个配置类:@[email protected]("触发return callback,");});由于每个消息发送时的处理逻辑不一定相同,因此ConfirmCallback需要在每次发消息时定义。具体来说,是在调用RabbitTemplate中的convertAndSend方法时,多传递一个参数:id:消息的唯一标示,MQ对不同的消息的回执以此做判断,避免混淆。
2024-07-14 22:48:12
1024
原创 SpringBoot自动装配
自动将第三方的bean装配到ioc容器中,不需要在去写bean的相关配置。在springboot里面加上@SpringBootApplication实现自动装配。@SpringBootApplication是一个符合注解,真正实现自动装配的是@EnableAutoConfiguration.自动装配实现主要依靠三个关键核心技术。
2024-06-17 10:55:24
277
原创 Excel报表
步骤:①设计Excel模板文件②查询近30天的运营数据③将查询到的运营数据写入模板文件④通过输出流将Excel文件下载到客户端浏览器。先在resources下面创建一个template包,然后把运营数据报表模块.xlsx复制进去。接口没有返回数据,导出报表本底是文件下载。服务端会通过输出流将Excel文件下载到客户端浏览器。一般是先创建原始的Excel文件,这个文件被称为模板文件,先设置好包括颜色和字体等。导出Excel形式的报表文件;导出最近30天的运营数据。
2024-06-16 00:28:31
568
原创 从0~1开发财务软件
3、将生成的字符存储到redis中,用匿名身份id(clientId)作为key,验证码作为value。clientId通过/login/getClientId接口获取。2、将字符生成base64位格式的图片,返回给前端。4、验证码15分钟后过期。1、随机生成6位字符。
2024-06-08 16:05:51
401
原创 黑马点评项目(持续更新中)
当注册完成后,用户去登录会去校验用户提交的手机号和验证码,是否一致,如果一致,则根据手机号查询用户信息,不存在则新建,最后将用户数据保存到redis,并且生成token作为redis的key,当我们校验用户是否登录时,会去携带着token进行访问,从redis中取出token对应的value,判断是否存在这个数据,如果没有则拦截,如果存在则将其保存到threadLocal中,并且放行。如果手机号合法,后台此时生成对应的验证码,同时将验证码进行保存,然后再通过短信的方式将验证码发送给用户。
2024-06-03 18:23:17
1033
原创 书城项目(持续更新中)
可以⾃定义⼀个多滤器,对请求的数据头进⾏过来,允许其他域请求访问:@WebFilter("/*") // 过滤器解决跨域@Override此时必须让启动项扫描到过滤器。
2024-05-21 16:08:54
894
原创 大事件(持续更新中)
用户登录成功后,系统会自动下发JWT令牌,然后在后续的每次请求中,浏览器都需要在请求头header中携带到服务端,请求头的名称为 Authorization,值为 登录时下发的JWT令牌。在用户登录成功后,后台生成一个令牌,把令牌响应给浏览器。"message": "操作成功","message": "操作成功","message": "操作成功",请求路径:/user/register。在未登录的情况下,可以访问到其他资源。请求路径:/user/userInfo。请求路径:/user/login。
2024-04-27 17:46:49
1180
2
原创 Spring自学黑马
spring是一个开源的轻量级Java开发应用框架,可以简化企业级应用开发。中遇到的许多常见的问题,提供了功能强大IOC、AOP及Web MVC等功能。Spring的生态及其完善,不管是Spring哪个领域的解决方案都是依附于在Spring。,用横向抽取方法(属性、对象等)思想,组装成一个功能性切面。,某个完整Bean需要依赖于其他Bean(或属性)的注入;,是将程序创建Bean的权利反转给第三方;Framework基础框架的。Spring框架的诞生。Spring 框架概述。
2024-04-08 19:35:22
217
原创 SpringAop
AOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过 OOP 允许开发者定义纵向的关系,但并不适合定义横向的关系,例如日志功能。日志代码往往横向地散布在所有对象层次中,而与它对应的对象的核心功能毫无关系对于其他类型的代码,如安全性、异常处理和透明的持续性也都是如此,这种散布在各处的无关的代码被
2024-03-28 22:53:35
721
2
原创 SpringIOC
控制反转 IoC(Inversion of Control):是一种设计思想,DI (依赖注入)是实现 IoC 的一种方法,也有人认为 DI 只是 IoC 的另一种说法。没有 IoC 的程序中我们使用面向对象编程对象的创建与对象间的依赖关系完全硬编码在程序中,对象的创建由程序自己控制,控制反转后将对象的创建转移给第三方。IoC 是指容器控制程序对象之间的关系,而不是传统实现中,由程序代码直接操控。控制权由应用代码中转到了外部容器,控制权的转移就是所谓反转。
2024-03-22 21:28:46
902
1
原创 软件测试Test
navigate().back() 方法可以使浏览器页面后退到上一个页面,navigate().forward() 方法可以使浏览器页面前进到下一个页面,作用与浏览器左上角的两个按钮的功能类似。上述代码为单选框的操作,单选框的操作是没有取消选择操作的,因为一段选中下一个选项,之前的选项就会自动取消选择,只有多选框才会有取消选择或者取消全部选择的操作。WebDriver 的 navigate().refresh() 方法可以对浏览器当前页面进行刷新操作,作用与浏览器左上角的刷新按钮的功能一致。
2024-03-14 15:55:42
657
原创 MyBatis的基本应用
预编译SQL有两个优势:性能更高更安全(防止SQL注入)性能更高:预编译SQL,编译一次之后会将编译后的SQL语句缓存起来,后面再次执行这条语句时,不会再次编译。(只是输入的参数不同)更安全(防止SQL注入):将敏感字进行转义,保障SQL的安全性。
2024-03-08 22:10:22
608
1
原创 JWT技术验证登录
JWT的组成: (JWT令牌由三个部分组成,三个部分之间使用英文的点来分割)第一部分:Header(头), 记录令牌类型、签名算法等。例如:{"alg":"HS256","type":"JWT"}第二部分:Payload(有效载荷),携带一些自定义信息、默认信息等。例如:{"id":"1","username":"Tom"}第三部分:Signature(签名),防止Token被篡改、确保安全性。将header、payload,并加入指定秘钥,通过指定签名算法计算而来。
2024-03-08 16:16:06
809
1
原创 Mybatis上传图片(源于黑马)
文件上传,是指将本地图片、视频、音频等文件上传到服务器,供其他用户浏览或下载的过程。文件上传在项目中应用非常广泛,我们经常发微博、发微信朋友圈都用到了文件上传功能。想要完成文件上传这个功能需要涉及到两个部分:前端程序服务端程序姓名: 年龄: 头像:
2024-03-07 19:10:48
999
原创 Mybatis入门
通过Mybatis的快速入门,我们明白了,通过Mybatis可以很方便的进行数据库的访问操作。但是大家要明白,其实java语言操作数据库呢,只能通过一种方式:使用sun公司提供的 JDBC 规范。Mybatis框架,就是对原始的JDBC程序的封装。那到底什么是JDBC呢,接下来,我们就来介绍一下。JDBC: ( Java DataBase Connectivity ),就是使用Java语言操作关系型数据库的一套API。本质:sun公司官方定义的一套操作所有关系型数据库的规范,即接口。
2024-03-05 10:53:42
850
原创 Java设计模式与算法(面试常考的)
直接的朋友:每个对象都会与其他对象有耦合关系,只要两个对象之间有耦合关系,我们就说这两个对象之间是朋友关系。耦合的方式很多,依赖,关联,组合,聚合等。其中,我们称出现成员变量,方法参数,方法返回值中的类为直接的朋友,而出现在局部变量中的类不是直接的朋友。也就是说,陌生的类最好不要以局部变量的形式出现在类的内部。--在以后的开发中读哦使用抽象类和接口,对子类具有强制性和规范性。尽量依赖于小接口,而不是大接口,为了避免污染,降低类之间的耦合度。是一种被反复使用,多数人认知的,经过多年编程经验的总结。
2024-02-29 09:43:22
315
1
原创 Spring的概念
Spring是一个JavaEE开源的轻量级的框架,可以解决企业开发中遇到的难题,让代码变的更加的简单。核心组件:ioc控制反转,Aop面向切面编程1.ioc控制反转:把整个对象创建的过程,同意交给我们SpringIoc实现,底层使用反射+工厂模式实现。2.Aop面向切面编程:对我们功能(方法)前后增强,比如打印日志,减少到我们的代码的冗余性问题。底层是基于冬天该代理模式实现的。
2024-02-29 09:27:15
204
1
原创 Servlet)
JSP(JavaServer Pages)是由 Sun 公司主导创建的一种动态网页技术标准。JSP部署于网络服务器上,可以响应客户端发送的请求,并根据请求内容动态地生成HTML、XML 或其他格式文档的 Web 网页,然后返回给请求者。JSP 技术以 Java 语言作为脚本语言,为用户的 HTTP 请求提供服务,并能与服务器上的其它 Java 程序共同处理复杂的业务需求。
2024-02-01 19:11:14
603
原创 JDBC的相关知识(第一篇博客)
数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,将数据库连接作为对象存储在内存中,当用户需要访问数据库时,并非建立一个新的连接,而是从连接池中取出一个已建立的空闲连接对象。Resultset封装执行结果时,采用的类似于表格的方式,ResultSet 对象维护了一个指向表格数据行的游标,初始的时候,游标在第一行之前,调用ResultSet.next() 方法,可以使游标指向具体的数据行,进行调用方法获取该行的数据。这样的方式将会消耗大量的资源和时间,数据库的连接资源并没有得到很好的重复利用。
2024-01-24 14:50:21
359
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人