- 博客(44)
- 收藏
- 关注
原创 Maven
Maven简介:Java项目构建与依赖管理工具 Maven是一款基于POM(Project Object Model)的Java项目管理工具,提供项目清理、编译、测试、打包、发布、部署等全生命周期管理功能。作为Java构建工具发展史上的重要里程碑(Make→Ant→Maven→Gradle→Bazel),其核心优势在于: 统一管理:标准化项目目录结构,解决不同IDE兼容问题 依赖管理:通过中央仓库(含阿里云镜像)自动处理jar包下载、版本匹配及依赖传递 自动化构建:提供compile/test/packag
2026-07-21 13:38:48
302
原创 Vue06
这篇文章主要介绍了Vue.js中路由(VueRouter)的使用方法,包括: 基本路由配置:通过VueRouter插件创建路由对象,定义路径与组件的映射关系 两种路由参数传递方式:查询字符串(?key=value)和动态路由参数(/path/:param) 编程式导航:使用this.$router.push()方法实现路由跳转,支持path和name两种方式 路由模式设置:hash模式(默认带#)和history模式 特殊路由配置:重定向(redirect)、可选参数(:param?)、404页面(*)等
2026-06-17 12:38:10
259
原创 Vue05
这篇文档展示了Vue.js中几个核心功能的使用: 自定义指令:通过Vue.directive()注册全局指令实现自动聚焦功能 插槽(Slot)使用: 默认插槽实现对话框内容定制 命名插槽(v-slot)实现对话框各部分(头部/内容/底部)的灵活定制 作用域插槽:在表格组件中通过slot传递行数据(row)给父组件,实现每行操作的动态渲染 组件通信: 通过props传递数据 通过插槽prop实现子向父的数据传递 通过自定义事件实现交互 路由相关:提到使用vue-router后URL会带有#符号(hash模式)
2026-06-13 21:27:55
257
原创 Vue04
本文展示了Vue.js组件开发的核心技术点,主要包括:1) 使用scoped样式防止组件样式冲突;2) 父子组件通信(props传值、$emit事件);3) 事件总线实现跨组件通信;4) provide/inject实现跨层级数据传递;5) v-model双向数据绑定原理及实现;6) .sync修饰符简化父子组件数据同步;7) $refs获取组件实例或DOM元素;8) $nextTick处理DOM异步更新。这些技术点通过具体示例代码进行演示,涵盖了Vue组件开发中最常用的功能实现方式,体现了Vue"
2026-06-13 12:46:30
255
原创 Vue02
本文摘要: 本文介绍了Vue.js的常用指令和功能,包括: v-model修饰符:.trim去除文本前后空格,.number将文本转为数字。 v-bind绑定class:通过对象或数组动态绑定样式类,示例展示了条件类名和固定类名的应用。 导航菜单切换:结合v-for和v-bind:class实现高亮效果,通过activeIndex控制选中状态。 表单处理:v-model在输入框、复选框、单选框、下拉框及文本域中的应用。 计算属性(computed):用于动态计算数据(如礼物总数),支持缓存和setter方法
2026-06-08 22:39:00
207
原创 Vue01
2.不要在插值表达式中写if这样的判断。3.不要再html属性中写插值表达式。1.渲染data中没有定义的数据。图书信息的展示和删除操作。
2026-06-08 22:38:23
256
原创 Vue03
本文介绍了Vue.js的两个核心概念:生命周期钩子函数和工程化开发。在生命周期部分,通过计数器示例展示了beforeCreate、created、beforeMount、mounted等钩子函数的执行时机和特点。在工程化开发部分,演示了组件化开发模式,包括组件的创建、导入和注册方式,以及如何通过Vue CLI构建项目结构。文中还包含新闻列表数据请求的示例和全局组件注册的实现方法,展现了Vue从基础到工程化的完整开发流程。
2026-06-08 22:36:59
228
原创 JavaWeb08
本文介绍了jQuery框架的核心特性和常用功能。jQuery是一个简洁高效的JavaScript库,具有链式语法、CSS选择器和插件扩展等特点,兼容主流浏览器。文章详细讲解了jQuery的选择器、DOM操作、属性修改、样式控制、值获取与设置等基础用法,并提供了具体代码示例。同时介绍了JSON数据格式及其与JavaScript对象的转换方法。最后简要说明了AJAX异步请求的实现方式和Bootstrap框架的基本使用。这些内容为前端开发提供了实用的技术参考。
2026-04-25 14:35:20
337
原创 JavaWeb07
本文介绍了JavaScript与HTML控件的交互方法:1.通过getElementById获取控件并操作value和innerHTML属性;2.使用style属性动态修改CSS样式;3.通过className切换样式类;4.常见事件处理如点击、悬停等;5.定时器setTimeout和setInterval的使用;6.Date对象处理日期时间;7.location对象控制页面跳转;8.表单验证技巧包括单选/复选框处理。文中包含多个实用案例,如自动清除聊天记录、密码显示切换等,展示了JavaScript操作D
2026-04-21 17:31:35
43
原创 JavaWeb06
JavaScript是一种广泛应用于网页开发的脚本语言,主要用于实现动态效果和交互功能。它由Netscape在1995年开发,后经ECMA标准化为ECMA-262。JavaScript包含核心语法、DOM和BOM三部分,具有解释执行、函数式编程、单线程、弱类型等特点。其语法灵活,可嵌入HTML或作为外部文件引入,支持多种数据类型和流程控制语句。函数定义使用function关键字,异常处理采用try-catch机制。JavaScript的跨平台特性使其成为Web开发的重要工具。
2026-04-21 17:30:52
344
原创 JavaWeb05
CSS定位与浮动详解 摘要:CSS定位属性包括static(默认)、relative(相对定位)、absolute(绝对定位)和fixed(固定定位)。relative保持原文档流位置,absolute脱离文档流并相对于最近非static祖先定位。浮动(float)使元素脱离文档流,可能导致父元素高度塌陷,可用overflow:hidden或clear属性解决。audio和video标签分别用于嵌入音视频,支持controls、autoplay等属性控制播放行为。z-index控制元素层叠顺序,opacit
2026-04-20 19:34:00
194
原创 JavaWeb04
表单是网页中用于收集用户信息的重要元素,主要包括文本框、密码框、单选按钮等表单域。表单通过<form>标签实现,包含action(提交URL)和method(GET/POST请求方法)两个核心属性。GET请求参数可见于URL,适合小数据量传输;POST请求数据隐藏,适合大数据量和敏感信息。HTML5新增了多种输入类型(email、url、date等)和属性(placeholder、required等)。其他重要元素包括:label标签(增强可用性)、select(下拉列表)、datalist(智
2026-04-20 19:33:23
348
原创 JavaWeb03
本文介绍了CSS盒子模型的基本概念和主要组成部分,包括内容(content)、内边距(padding)、边框(border)和外边距(margin)。详细讲解了边框的设置方法,包括颜色、粗细和样式控制。同时阐述了元素的三种分类:行级元素(inline)、块级元素(block)和内联块元素(inline-block),以及通过display属性实现元素显示转换的方法。此外还介绍了Flex弹性布局的基本原理和常用属性,包括flex-direction、flex-wrap和justify-content等。最后讲
2026-04-20 19:32:31
415
原创 JavaWeb02
CSS(层叠样式表)是一种用于网页样式设计的语言,主要功能是美化HTML网页内容和实现内容与表现分离。其核心特点包括统一站点风格、减少代码量、支持动态样式修改。CSS语法由选择器、属性和值三部分组成,提供多种选择器类型(标签、类、ID选择器)和复合选择器(后代、交集、并集选择器)。样式引入方式分为行内、内部和外部样式表,优先级依次为行内>内部/外部。CSS提供丰富的属性规则,包括字体样式(大小、类型)、文本样式(颜色、对齐)、背景设置(颜色、图片)和列表样式,并通过伪类实现动态效果(如:hover)。
2026-04-20 19:31:55
295
原创 JavaWeb01
HTML发展历程与基础使用指南 摘要:HTML从1999年4.01版本发展到2014年HTML5标准,经历了从W3C到WHATWG的演进过程。HTML5作为下一代Web标准,是构建互联网内容的核心技术。文章介绍了HbuilderX和VSCode两种开发环境的基本使用方法,详细讲解了HTML标签规则、常用标签(标题、段落、图像、链接等)、特殊字符表示以及列表标签的使用技巧,为初学者提供了完整的HTML基础语法参考。
2026-04-20 19:31:07
357
原创 JDBC06
本文摘要: 介绍了JDBC操作和事务管理的实现方法,主要包括:1) BaseDAO通用更新和查询操作,通过反射动态生成SQL语句;2) JDBC事务管理,包括事务开启、提交、回滚及保存点使用;3) Apache Commons DbUtils工具类的应用,展示QueryRunner类与各种ResultSetHandler实现类(BeanHandler、BeanListHandler等)的使用方式,简化JDBC开发流程。文章提供了完整的代码示例,涵盖了单条查询、列表查询、聚合函数、分组查询等常见数据库操作场景
2026-03-09 19:46:45
226
原创 JDBC05
本文介绍了DAO设计模式和ORM概念,详细说明了DAO操作步骤:1)创建实体类对应数据库表;2)定义DAO接口包含增删改查方法;3)实现DAO接口完成具体数据库操作;4)在主程序中调用DAO对象。文章还展示了两种查询列表方式,并详细讲解了BaseDAO的设计实现,包括使用注解标识主键类型、通过反射自动生成SQL语句等。BaseDAO通过泛型和反射机制实现了通用的数据访问操作,可减少重复代码。最后给出了DAO在实际应用中的调用示例。
2026-03-08 21:04:59
47
原创 JDBC04
摘要:本文介绍了使用JDBC调用存储过程的方法,包括无参数、带输入/输出参数、特殊参数以及返回多结果集的存储过程调用。存储过程具有重复使用、性能优化、减少网络流量和提高安全性等优点。文章详细展示了各种场景下的代码实现,包括事务处理、可滚动/可更新结果集的使用,以及JDBC调用自定义函数的方法。通过示例代码,说明了Statement、PreparedStatement和CallableStatement的使用区别,以及execute、executeQuery和executeUpdate方法的应用场景。
2026-03-07 21:30:17
368
原创 JDBC03
摘要:本文介绍了MySQL中BloB数据类型的存储与读取操作。BloB类型用于存储二进制数据(如图片、视频等),分为四种容量级别(255B至4GB)。文章详细说明了使用PreparedStatement插入BloB数据的注意事项,以及读取BloB文件的方法。同时介绍了JDBC批处理技术(Statement和PreparedStatement两种方式)和数据库连接池(重点讲解Druid和HikariCP)的使用,包括连接池的配置和优化方法。文中还提供了完整的代码示例,演示了如何通过连接池高效操作数据库。
2026-03-07 14:06:47
406
原创 JDBC02
本文介绍了Java中数据库操作的基本封装方法。主要内容包括:1)通过TestQuery类封装查询语句,使用DBObject类管理连接对象;2)对比Statement和PreparedStatement的区别,后者通过参数化查询防止SQL注入;3)演示了LoginPreparedTest登录验证示例;4)封装了通用的executeUpdate方法;5)简要说明UUID和MySQL与Java类型转换。文章重点讲解了数据库连接管理、查询封装和安全查询的实现方式。
2026-03-04 16:57:58
680
原创 JDBC01
本文介绍了Java数据库连接(JDBC)技术,主要包括:1.JDBC是Java访问数据库的标准API,提供统一接口操作多种数据库;2.JDBC体系结构分为驱动管理器接口和API两层;3.详细讲解了5种获取数据库连接的方法,包括直接连接、反射机制等;4.介绍了Statement和ResultSet的使用方法,包括执行SQL语句和处理查询结果;5.总结了JDBC操作的基本流程:加载驱动、获取连接、执行SQL、处理结果、关闭资源。文章通过代码示例展示了数据库操作的完整过程。
2026-03-02 17:43:55
337
原创 MySQL09
摘要 MySQL采用存储引擎架构实现数据存储与管理分离,存储引擎负责数据的实际存取操作。索引作为核心数据结构,通过类似目录的机制加速查询,包括聚簇索引和二级索引两种类型。触发器是数据库的自动化响应机制,在特定事件发生时自动执行预设操作。这种分层设计提升了数据库的灵活性和性能。
2026-02-27 12:57:19
316
原创 MySQL10
摘要:事务是数据库保证数据一致性和恢复能力的关键特性,支持显式和隐式两种使用方式。MySQL作为客户端/服务器架构,需同时处理多个会话中的并发事务。事务隔离性要求在理论上应串行执行,但为提高性能,实际需要在隔离性和性能之间取得平衡,通过不同隔离级别来权衡数据一致性与并发效率。
2026-02-27 12:55:54
350
原创 MySQL08
MySQL数据库支持系统变量和用户自定义变量,用户变量以@开头,分为会话变量和局部变量。用户可通过变量存储中间结果或输出数据,同时提供LOOP循环和LEAVE跳转等流程控制语句,用于过程化编程。
2026-02-26 18:42:44
391
原创 MySQL07
本文概述了MySQL中视图和存储过程/函数的基本概念。视图是虚拟表,简化查询操作;存储过程和函数则封装复杂SQL逻辑,MySQL 5.0+版本支持。主要内容包括视图的创建方法,存储过程和函数的定义与创建步骤,它们都能提高代码复用性和简化应用程序开发。
2026-02-23 20:45:01
32
原创 MySQL06
本文介绍了MySQL中数据表的基本操作与约束类型。主要包括数据增删改操作,以及6种常用约束:主键约束(唯一标识记录)、外键约束(表间关联)、唯一约束、检查约束、非空约束和默认值约束。重点说明了主键的非空唯一特性、自增列的使用方法,以及外键约束的创建过程。这些约束机制共同保证了数据库中数据的完整性和有效性,是数据库设计中的重要组成部分。
2026-02-23 11:49:43
27
原创 MySQL05
SQL子查询是指嵌套在主查询内部的查询语句,分为单行子查询和多行子查询两种类型。单行子查询返回一行数据,使用比较运算符;多行子查询返回多行数据,使用IN、ANY等操作符。相关子查询的执行依赖于外部查询,每行主查询都会重新计算子查询。此外,EXISTS和NOT EXISTS关键字用于判断子查询是否返回结果。这些子查询功能大大增强了SELECT语句的数据处理能力。文章还涉及数据库和表的创建与管理操作。
2026-02-22 00:14:06
36
原创 MySQL04
摘要:MySQL提供了丰富的内置函数,可分为单行函数和聚合函数两大类。单行函数包括数值函数、字符串函数、日期函数、流程控制函数和加密解密函数等,用于数据转换和处理。聚合函数则对数据集合进行汇总计算,返回单个值。此外,GROUP BY子句用于数据分组统计,HAVING用于分组后过滤,与WHERE的分组前过滤形成对比。这些函数增强了MySQL的数据处理能力,提高了开发效率。
2026-02-20 22:11:23
63
原创 MySQL03
本文总结了数据库表关系的创建原则与多表查询方法。一对多关系通过主外键关联实现,多对多关系则需创建中间表并建立两个一对多关系。多表查询分为等值查询和七种SQL JOIN操作,通过表间字段关联实现数据联合查询。文中还介绍了表结构关系分析和多表查询的具体分类应用。
2026-02-19 23:10:52
28
原创 MySQL02
SQL是一种结构化查询语言,主要分为数据查询、数据操作、数据定义和数据控制四类。它具有严格的大小写规范和命名规则,支持算术、比较和逻辑运算符。SELECT语句是SQL的核心,支持别名、去重、NULL值处理等功能。MySQL特有的dual哑表可用于测试查询,而注释则用于解释代码。SQL的运算符包括等号、不等号以及XOR等逻辑运算,其中0='a'会返回1等特性值得注意。
2026-02-18 00:26:28
360
原创 MySQL数据库01
MySQL数据库是一种关系型数据库管理系统,用于高效存储和管理大量数据。相较于内存存储(数据易失)和文件存储(操作繁琐),数据库提供了持久化、高效访问和大容量存储的优势。MySQL采用分层架构,第一层为连接层,负责客户端认证和权限管理。安装MySQL需注意服务启动和配置,同时提供多种图形化管理工具(如Workbench、Navicat等)简化操作。基本操作包括数据库/表的创建、查看和删除。卸载MySQL需停止服务、删除相关文件和清理注册表。
2026-02-15 22:14:15
57
原创 java反射机制
被视为动态语言的关键,允许程序在执行期间,借助ReflectionAPI取得任何类的内部信息,在程序的运行状态中,可以构造任意一个类的对象,也可以了解任意一个类的对象(所属类、成员变量、方法等),并且可以去调用属性和方法,这种动态去获取程序信息,以及动态调用对象的功能,称为java反射机制。一个应用程序总是由很多个类组成,java程序在启动时,并不是一次把所有的类加载运行,而是把保证程序运行的基础类先加载在JVM中,其他类等到JVM用到的时候再进行加载,这样可以节省内存开销。显示加载:通过Class。
2026-01-24 15:02:47
532
原创 ——网络编程
OSI(Open System Interconnect) 开放式系统互联,一般也称作OSI参考模型,是由ISO(国际标准化组织)研究的网络互联模型,早期网络在各大网络公司内部是互通的,但是在外部是不通的,因为没有一个统一的规范,外部计算机之间互相传输数据和信息,对方是不能理解的,所以不能互联。3.端口号:计算机通过IP地址来代表其身份,但是只能表示某台特定的计算机,但是一台计算机上可以同时提供多个服务,比如数据库服务、FTP服务、web'服务,可以通过端口号来区别在相同的计算机上所提供的不同的服务。
2026-01-17 23:39:11
927
原创 多线程03
线程池中最开始是没有线程的,当任务提交给线程池,线程池会创建一个新的线程来执行任务,当线程数达到core核心线程数,并且没有空闲的线程时,再加入的任务会被加入到BlockingQueue中排队,指定有空闲线程去执行这个任务。线程过多会带来调度的开销,会影响整体性能,线程池加锁存放线程的池子,在其中存放了很多可以复用的线程,可以使用线程池来维护多个线程,进行统一管理。AQS会把所有的请求线程构成一个同步队列,当一个线程完成时,会激活自己的后继节点,正在执行的线程不在队列里,等待执行的线程全部处于阻塞状态。
2026-01-14 23:19:34
589
原创 多线程02
2.synchronized是利用锁的机制,使得变量或代码块在某一个时间点只能被一个线程访问,ThreadLocal为每一个线程都提供了变量的副本,使得每个线程在某以时间点访问到的并不是同一个对象,就实现了隔离多个线程对数据的共享。对象锁的概念,采用互斥的方式,让同一时间最多只能有一个线程持有该锁,其他线程想获取这个锁时,就会发生阻塞,就可以保证当前拥有该锁的线程可以安全的执行临界区中的代码,不需要处理上下文切换导致的问题。jps指令,去查看当前死锁线程的pid,再使用jastack pid去查看状态。
2026-01-12 22:54:41
660
原创 文件管理02
每次调用ObjectOutputStream来完成序列化时,如果没有显式生成,系统会自动生成一个,在做反序列化时,系统会重新生成一个新的版本号,和之前的去比较,就会出现版本号不一致的错误,所以为了避免出现这种问题,一般都会显示地序列化声明一个版本号。是Serializable接口的子接口,如果要使用Externalizable来实现序列化,只需要实现Externalizable接口,并重写writeExternal和readExternal方法,可以实现自定义序列化过程。
2026-01-11 21:45:01
520
原创 多线程01
start方法:启动一个新线程,在新的线程中运行run中的代码,start方法让线程进入就绪,不一定会立即执行run方法,因为CPU的时间片可能还没有分配给他,每个线程的start方法只能调用一次,否则会出现IllegalThreadStateException异常。run方法:新线程启动后自动调用的方法,如果在构造Thread对象时,传递了Runnable参数,线程启动后会调用Runnable中的run方法,否则默认情况下,不执行任何操作,但是可以创建Thread对象重写run方法。
2026-01-11 21:42:46
572
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅