- 博客(63)
- 收藏
- 关注
原创 Vue2 父子组件进行数据传递
了解了一种新的父子组件交互数据的方式,从前仅仅知道使用如 Vuex 以及 Pinia 这类第三方工具进行数据传递。加强了我对组件这一重要概念的理解,将一个大的页面拆分成一个个组件,逐个实现,大大加强了代码之间的解耦性和可读性。实现思路:父组件是一个 table 标签,在 thbody 标签内引入子组件表示一行,每行数据都写在该子组件内。存在问题:要将父组件数据传递到子组件。子组件点击加减按钮时,要将数据和事件通知父组件,父组件再调用对应方法,根据传递来的数据在指定位置加减行。
2024-07-22 13:46:04
221
原创 结合Redis解决接口幂等性问题
请求到达后端,首先进行非空校验,然后拼接前缀形成 Redis 的 Key,如果查询不为空则表明其他请求正在修改该课程,直接返回错误。如果为空,则可以进行修改,将该课程 id 存入 Redis,然后判断是否有正在编辑的课程副本,如果存在已经生成的副本,则直接返回该副本 id ,在这个基础上继续修改。如果不存在,则生成一份原课程的副本,将副本id返回给前端。而在企业中,没有直接修改原数据,而是修改复制一份的副本上,在最后确认修改完毕后再将原数据标记为删除状态,修改后数据标记为发布状态。
2024-07-18 22:35:56
370
原创 Java实习记录 2 ——接触需求
在企业中开发与之前学习不一样的是更加注重文档的编写,在最开始接到这个需求后,按照之前的开发习惯,我并没有重视对文档的编写,而是上来就开始尝试进行编码实现,没有文档指导,在开发个人小型项目仍可以顺利完成,但到企业级项目开发中则不同,缺乏文档指导,摸石头过河式的开发方式已经行不通了。根据需求文档和产品设计原型进行页面详细设计,完成了包括设计出该页面需要的那些组件、组件之间的关系、组件所使用到的数据结构和组件所使用到的方法。完成详细设计后,交由组长评审,组长对组件的数据结构和组件之间的方法,给我提供了优化思路。
2024-07-17 18:54:22
197
原创 Java实习记录 1 ——初入职场
运行项目时,发现公司没有具体文档,运行流程基本依靠开发组长口头教授新员工,待我成功运行项目后,我根据自己经历的部署流程编写了一份运行本公司项目的文档。入职第一天,办理各项手续,在行政引导下入座工位,进行开发软件安装和电脑环境搭建,包括 idea、vscode、navicat等等,向公司申请GitHub、VPN以及openVpn的使用权限。每天上下班打卡、编写日报,每周结束后编写周报,总结自己一天、一周的工作内容和进度,让我更加体会到了在企业中工作的规范。开展新员工培训,了解公司项目面向用户和核心业务功能。
2024-07-17 18:53:51
291
原创 Spring的IOC容器初始化流程
IOC容器初始化过程及先准备注册BeanFactory后置处理器,然后启动tomcat并借助BeanFactory完成非懒加载单例Bean的实例化。
2023-12-06 15:32:29
163
1
原创 SpringBoot启动流程
SpringBoot启动,本质是加载各种配置文件信息,然后初始化IOC容器并返回。debug追踪源码发现SpringBoot启动主要分为两方面:new SpringApplication()、与执行run方法。
2023-12-05 20:32:14
132
原创 Spring的 @ControllerAdvice 之 ResponseBodyAdvice对响应结果进行增强
对响应结果进行统一结果处理时,有时会出现有的接口未进行封装,为了解决该问题,可使用@ControllerAdvice 注解对响应结果进行aop编程增强。
2023-10-21 09:27:03
234
原创 vue之使用箭头函数导致表格无法刷新数据
箭头函数本身没有this,但是它在声明时可以捕获其所在上下文的this供自己使用。所以导致this指向不是所需vue对象,表格刷新失败。但在使用监听器监听选择器绑定的value值时使用了箭头函数,请求响应后发现数据更新了但表格为重新渲染,仍为请求之前的数据。在使用初始化方法查询默认表单后,有使用选择器进行条件查询的需求。将箭头函数改为普通函数。
2023-10-19 19:54:07
253
原创 Java中静态模板文件freemaker使用
面对大文本数据展示时,每次查询数据库费时费力,基于这种读多写少的需求,考虑使用freemarker生成静态文件,存入文件系统中,查询时直接展示文件,不必在查询数据库。FreeMarker 是一款 模板引擎: 即一种基于模板和要改变的数据, 并用来生成输出文本(HTML网页,电子邮件,配置文件,源代码等)的通用工具。在resources目录下创建templates,在其中创建post.ftl模板文件。json数据源(这里为了方便手动建立JSON数据源,实际开发中可从数据库中查询)
2023-07-25 09:18:14
413
原创 实际项目开发中MySQL多表查询的两个例子
当前我们知晓的学院地区id为二级地区,而由请求传来的id为一级地区id,故先在地区表中根据一级地区id查询出所有其子二级地区,再在院校表中查询出地区id在子二级地区id中的院校。通过院校名称模糊查询院校信息和所在地区,其中院校表中的area属性与地区表id关联,查询时要综合查询这两个表。从institution表中根据院校名模糊查询,and条件连接在地区表中查出院校地区名称。dto继承institution,并设置地区名称这个独有属性。
2023-04-01 20:31:10
193
原创 从前端到后端全面解析文件上传
2.后端准备(SpringBoot+minio+mysql)2.1解决跨域2.2配置minio与mysqlpom依赖配置文件配置配置minio客户端
2023-03-07 20:36:03
610
1
原创 轻松上手nacos使用
微服务众多,它们的配置信息也非常复杂,为了提高系统的可维护性,微服务的配置信息统一在 Nacos 配置。通用配置可共享使用。配置无误后nacos会根据配置将服务拉至服务列表,并读取nacos中配置与本地配置合并后生效。微服务将自身注册至 Nacos,网关从 Nacos 获取微服务列表。3.在名为bootstrap.yml中配置。但可在nacos中配置优先本地配置。4.在nacos中新建配置。1.创建所用的命名空间。2.在工程中引入依赖。
2023-02-19 09:52:35
1126
原创 跨域问题及解决方案
基于浏览器的同源策略,会对请求进行跨域判断。当协议、域名(或主机ip)、端口号不一致时,则被判断为跨域请求。此时会导致:(1)请求从http://localhost:8081 到 http://localhost:8082 由于端口不同,是跨域。(2)请求从https://localhost:8081 到 http://localhost:8081 由于协议不同,是跨域。
2023-02-04 13:56:00
1244
原创 快速上手使用Elasticsearch实现高亮查询
高版本Elasticsearch的json解析需2.0.1版本,需手动修改jakarta.json版本.
2023-01-19 18:40:48
387
原创 Java学习——springboot整合mysql、redis、mongodb
springboot快速整合mysql,redis,mongodb
2022-07-16 17:48:15
1195
原创 Java中String型与int型相互转换
Java中String型与int型相互转换1. int转String2. String转int1. int转Stringi + “”String.valueOf(i)Integer.toString(i) int i = 123; // 1. i + "" String str1 = i + ""; System.out.println("1."); System.out.println(str1);
2022-05-05 20:48:43
535
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人