- 博客(51)
- 收藏
- 关注
原创 Java中String类
/ 场景1:少量字符串操作 - 使用Stringreturn "用户: " + name + ", 年龄: " + age;// 简单拼接,使用String// 场景2:多线程环境下的字符串构建 - 使用StringBuffer// 场景3:单线程环境下的大量字符串操作 - 使用StringBuilderreport.append("=== 报告开始 ===\n");report.append("=== 报告结束 ===");
2025-10-21 20:08:36
629
原创 为什么Java不支持多继承
多继承会出现,即一个子类有多个直接父类,而这些直接父类又有一个共同的父类,导致子类继承了多个路径上的相同方法,从而引发。
2025-10-14 22:30:47
251
原创 Java的多态
多态(Polymorphism)是面向对象编程的核心特性之一,指同一个接口或父类引用变量可以指向不同的对象实例,并根据实际指向的对象类型执行相应的方法。它允许同一方法在不同对象上表现出不同的行为。
2025-10-14 22:10:35
335
原创 013【入门】队列和栈-链表、数组实现
▶ JDK8+ | ⏱️ 操作时间复杂度 O(1)返回queue[rearIndex]返回queue[head]计算rearIndex。
2025-07-17 22:28:46
614
原创 011 【入门】链表入门题目-两个链表相加
如何处理两个链表正序存储数字的情况?(提示:考虑栈或链表反转):先解释虚拟头节点作用,再手写代码,最后用测试用例验证边界。→ 输入:[9,9] + [1],输出:[0,0,1]→ 输入:[3,2,1] + [8,7,6,5,4]→ 输入:[0] + [0],输出:[0]请将两数相加,返回相同形式的链表。
2025-06-27 15:49:08
929
原创 009 【入门】单双链表及其反转-堆栈诠释
/ ▶ JDK8+// [单链表节点] - 单向指针结构int val;// 节点值// 指向下一节点的指针/*** 构造单链表节点* @param val 节点存储的值*/// [最佳实践] 显式初始化为null// [双链表节点] - 双向指针结构int val;// 节点值// 指向前驱节点的指针// 指向后继节点的指针/*** 构造双链表节点* @param val 节点存储的值*/// [最佳实践] 显式初始化。
2025-06-27 15:44:10
1004
原创 web-ssrme
源码过滤了file协议、dict协议、127.0.0.1和localhost,但没有过滤http协议和gopher协议。说明172.17.0.2是内网中存活的另一台主机,并且上面也运行着http服务。接着我们便可以尝试 redis 未授权了,由于这台内网主机上还存在一个http服务,所以我们可以将。下写文件,我们使用burpsuite扫一下都有哪些目录,发现有个upload目录。这是redis的报错,说明这台内网主机上还运行着redis服务。我们使用http协议进行内网主机存活探测。redis未授权访问。
2025-04-17 23:17:44
397
原创 spring的第三天学习笔记
我们前面说过,在Spring中虽然可以被当做简单类型,使用value属性或<value>标签注入字符串,但Spring默认的对日期字符串的格式要求非常严格,必须是toString()其他自定义格式(如yyyy-MM-dd)直接使用value注入是无法识别的。示例:定义Student类// Setter用于属性注入@Override'}';
2025-04-16 09:22:05
871
原创 spring的第二天学习笔记
注册自定义Scope:</</</</使用自定义Scope:测试代码:@Test// 新线程中的Bean实例}).start();定义:一种可以被重复利用的解决方案,是软件开发中常见问题的标准解决方案重要性✅ 提高代码复用性:避免重复造轮子✅ 提高可维护性:标准化解决方案易于理解和修改✅ 提高可扩展性:设计良好的模式便于扩展✅ 提高可靠性:经过验证的解决方案减少错误✅ 提高可读性:统一的模式命名便于团队沟通简单工厂模式(Simple Factory)
2025-04-16 09:18:54
1160
原创 Spring的第一天学习笔记
在实际开发中,数据源的配置信息(如driver、url、username、password等)通常会放到单独的属性文件中,这样便于修改和维护。set注入,基于set方法实现的,底层会通过反射机制调用属性对应的set方法然后给属性赋值。这是最常用的注入方式,bean定义在外部,在property标签中使用ref属性进行注入。[代码说明:这是一个典型的DAO和Service层的代码示例,展示了如何使用set注入][代码说明:这是Spring的配置文件,展示了如何配置bean和它们之间的依赖关系]
2025-04-10 00:39:01
500
原创 mybatis的第五天学习笔记
动态SQL执行流程MyBatis如何解析动态SQLSQL语句构建过程参数绑定机制新增示例// 动态条件查询接口示例-- 动态条件查询XML示例 --> < select id = " searchUsers " resultType = " user " > SELECT * FROM users < where > < if test = " name!
2025-04-08 23:48:30
1234
原创 MyBatis的第四天学习笔记下
参数类型适用场景优点缺点单个简单类型单一条件查询简单直接只能处理一个参数Map参数多条件查询且无对应POJO灵活,可自定义key需要手动封装Map实体类参数参数与实体属性匹配自动映射属性需要创建实体类多参数方法有多个参数无需额外封装参数名不直观(arg0/param1)@Param注解需要明确参数名可读性好需要添加注解。
2025-04-08 17:08:46
1259
原创 MyBatis的第四天学习笔记
MVC是一种软件架构模式,将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。模型(Model):负责数据逻辑和业务逻辑,包括数据访问层(DAO)和业务逻辑层(Service)视图(View):负责界面显示,将模型数据呈现给用户控制器(Controller):负责接收用户请求,调用模型处理请求,并选择合适的视图进行响应表现层(Controller):接收请求,调用Service层业务逻辑层(Service):处理业务逻辑,调用DAO层,管理事务。
2025-04-08 11:13:34
644
原创 MyBatis的第三天笔记
JNDI的方式:表示对接JNDI服务器中的连接池。这种方式给了我们可以使用第三方连接池的接口。如果想使用dbcp、c3p0、druid(德鲁伊)等,需要使用这种方式。MyBatis核心配置文件采用XML格式,主要用于配置数据库连接、事务管理、映射文件等信息。在mybatis-config.xml应用。
2025-04-07 21:37:05
392
原创 rce漏洞
RCE(Remote Code Execution,远程代码执行)漏洞是一种严重的安全漏洞,它允许攻击者在目标系统上远程执行任意代码。这种漏洞通常出现在应用程序、操作系统或网络服务中,当攻击者利用该漏洞时,可以完全控制受害者的系统,执行恶意操作,如窃取数据、安装恶意软件或破坏系统。
2025-03-31 09:01:23
403
原创 MyBatis第二天笔记
C:Create(创建)- 对应SQL的INSERT操作R:Retrieve(查询)- 对应SQL的SELECT操作U:Update(更新)- 对应SQL的UPDATE操作D:Delete(删除)- 对应SQL的DELETE操作。
2025-03-30 09:31:46
762
原创 MyBatis的第一天笔记
框架是对通用代码的封装,提前写好了一堆接口和类,可以直接引入使用框架一般以jar包形式存在Java常用框架:SSM三大框架(Spring + SpringMVC + MyBatis)、SpringBoot、SpringCloud等。
2025-03-29 20:06:22
682
原创 vue3的v-model
当模板中input的value被修改的时候,使用emit中update:modelValue向父组件传value的值,然后父组件的msg的值被修改成value的值。在子组件中用props.modelValue接受父组件传来的msg的值,在模板中用:value进行响应式渲染。在父组件声明一个响应变量msg,再用v-model绑定msg,这样msg的值传给了子组件。如果需要额外的 prop 选项,应该在 model 名称之后传递。效果:在子组件中修改model的值,父组件的msg也随之变化。
2025-03-27 17:34:44
543
原创 vue路由缓存问题
通过以上方法,可针对性解决Vue3中因路由复用或缓存机制导致的页面状态不更新问题。: Vue Router默认会复用相同组件实例(例如动态路由。切换时,仅参数变化),导致组件不会销毁重建,生命周期钩子(如。: Vue复用组件时,未完全响应动态参数变化。会缓存所有组件,导致切换路由时组件状态保留。强制Vue在路由变化时重新创建组件。:在组件被激活时更新数据。字段动态决定是否缓存。变化,主动更新数据。
2025-03-27 16:50:05
915
原创 从vue2过渡到vue3
在setup下的store})useCounterStore是在其他组件引用的的名字useCounterStore这个返回函数的名称是通常是use开头Store结尾。counter是这个仓库的唯一Id,Pinia 将用它来连接 store 和 devtools。ref()就是state属性const count = ref(0),count就是这个仓库存的数据computed()就是getters就是计算属性,只完成计算逻辑function()就是actions。
2025-03-27 15:58:47
385
原创 xss注入
*XSS(跨站脚本攻击,Cross-Site Scripting)**是一种常见的网络安全漏洞,指的是攻击者通过在网页中注入恶意的脚本(通常是 JavaScript 代码)来攻击用户。XSS 漏洞会导致用户浏览器在加载网页时执行这些恶意脚本,进而窃取用户的敏感信息或控制用户的操作。
2025-03-25 08:47:37
284
原创 vue第五天
这都是Vue给咱们内置的一些指令,可以直接使用自定义指令:同时Vue也支持让开发者,自己注册一些指令。这些指令被称为自定义指令每个指令都有自己各自独立的功能概念:自己定义的指令,可以封装一些DOM操作,扩展额外的功能全局注册//在main.js中Vue.directive('指令名', {// 可以对 el 标签,扩展额外功能el.focus()})局部注册//在Vue组件的配置项中"指令名": {// 可以对 el 标签,扩展额外功能el.focus()使用指令。
2025-03-12 15:18:16
1001
原创 vue第四天
组件通信,就是指组件与组件之间的数据传递组件的数据是独立的,无法直接访问其他组件的数据。想使用其他组件的数据,就需要组件通信组件上 注册的一些 自定义属性。
2025-03-11 17:47:36
872
原创 vue的第三天
Vue CLI 是Vue官方提供的一个全局命令工具可以帮助我们快速创建一个开发Vue项目的标准化基础架子。【集成了webpack配置】虽然脚手架中的文件有很多,目前咱们只需认识三个文件即可main.js 入口文件App.vue App根组件index.html 模板文件整个应用最上层的组件,包裹所有普通小组件。
2025-03-09 00:12:17
726
原创 VUE的第二天
所谓指令修饰符就是通过“.”指明一些指令后缀 不同的后缀封装了不同的处理操作 —> 简化代码代码演示:1.3 v-model修饰符v-model.trim —>去除首位空格v-model.number —>转数字1.4事件修饰符@事件名.stop —> 阻止冒泡@事件名.prevent —>阻止默认行为@事件名.stop.prevent —>可以连用 即阻止事件冒泡也阻止默认行为2. v-bind对样式控制的增强-操作class为了方便开发者进行样式控制, Vue 扩展
2025-03-08 20:44:14
682
原创 SeacMS v9 SQL注入漏洞分析
海洋影视管理系统(SeacMS,海洋CMS)是一套专为不同需求的站长设计的视频点播系统,它采用的是PHP5.X+MySQL的架构。在SeacMS v9版本中,存在一个SQL注入漏洞,该漏洞位于文件中,具体参数为$rlist。这个漏洞允许攻击者通过构造特定的请求来执行SQL注入攻击。
2025-02-26 13:41:54
940
原创 时间盲注和布尔盲注
布尔盲注适用于可以通过页面内容的变化来判断 SQL 查询结果的场景。时间盲注适用于无法通过页面内容变化来判断,但可以通过响应时间来判断的场景。
2025-02-18 12:30:25
322
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅