自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 MyBatis 延迟加载与缓存

技术核心作用关键配置延迟加载减少初始查询数据量,提升响应速度的select属性一级缓存减少同一会话内的重复查询自动生效,无需额外配置(注意SqlSession生命周期)二级缓存跨会话共享缓存,减少数据库压力实体类序列化、<cache/>标签、缓存策略配置合理运用延迟加载和缓存,能显著提升 MyBatis 应用的性能,但需根据业务场景灵活选择,避免过度使用导致数据不一致或内存溢出。

2025-05-18 22:51:30 944

原创 MyBatis 核心技术详解:从连接池到多表查询

Connection。

2025-05-18 21:52:51 1067

原创 MyBatis框架(入门)

本文详细介绍了MyBatis框架的基本概念、入门程序以及CRUD操作。MyBatis是一个基于Java的持久层框架,通过封装JDBC简化了数据库操作,支持XML或注解配置SQL语句,并采用ORM思想将Java对象与SQL参数映射。文章首先概述了MyBatis的核心功能,随后通过创建数据库、编写Maven项目、定义User类、配置Mapper接口和XML文件等步骤,展示了如何实现一个简单的MyBatis入门程序。接着,文章详细讲解了如何通过代理Dao方式实现增删改查操作,并对比了#{}和${}在SQL注入安全

2025-05-18 17:09:12 1061

原创 Spring框架的事务管理

XML 配置方式:适合于对配置细节有严格要求,且团队对 XML 配置比较熟悉的场景。通过 XML 可以清晰地定义事务的各个方面,但配置文件可能会变得冗长和复杂。XML + 注解方式:结合了 XML 配置的灵活性和注解的简洁性,XML 负责全局配置,注解负责局部配置,是一种比较常用的方式。纯注解方式:适合于追求代码简洁性和开发效率的场景,完全基于 Java 配置和注解,减少了 XML 配置文件的使用,但对开发者的 Java 配置能力要求较高。

2025-05-15 23:47:54 979

原创 Spring 模拟转账开发实战

分层设计:Service 层处理业务逻辑,Dao 层封装数据库操作。依赖注入:通过 Spring 配置文件管理对象依赖,避免硬编码。事务控制:使用注解确保数据一致性,必须配置事务管理器。连接池优化:优先使用 Druid 等开源连接池,提升数据库性能。

2025-05-15 23:17:38 1238

原创 Spring 框架 JDBC 模板技术详解

引入依赖:包含 Spring JDBC 模块、数据库驱动和连接池(如 Druid)。配置连接池:通过 Spring 配置文件管理数据库连接信息,支持内置或开源连接池。注入模板类:将纳入 Spring 容器,通过依赖注入获取实例。执行操作:利用的增删改查方法,结合RowMapper处理结果集。

2025-05-15 22:59:47 817

原创 Spring框架(2)---AOP

通俗理解:AOP(面向切面编程)就像给程序"打补丁",可以在不修改原有代码的情况下,给程序添加新功能。生活比喻就像给手机贴膜:不需要改变手机本身,就能增加防刮功能类似快递包装:在原有商品外增加保护层,不影响商品本身解决了什么问题传统OOP(面向对象)中,像日志记录、权限检查这些通用功能需要在每个方法里重复写AOP把这些"横切关注点"抽离出来,实现"一次编写,多处使用"核心特点横向抽取:不同于继承的纵向扩展非侵入式:不改动原有代码动态增强:运行时给方法添加功能执行顺序。

2025-05-11 22:42:05 1043

原创 MySQL事务和JDBC中的事务操作

事务是数据库操作的最小逻辑单元,具有"全有或全无"的特性。从A账户扣除1000元向B账户增加1000元这两个操作必须作为一个整体执行,要么全部成功,要么全部失败默认自动提交模式(每条SQL作为独立事务)通过显式开启事务使用COMMIT提交或ROLLBACK回滚。

2025-05-10 23:38:26 724

原创 JDBC工具类的三个版本

1、加载驱动2、获取连接3、编写sql4、获取执行sql的stmt对象有两种 stmt(存在sql注入问题 字符串拼接) pstmt(预编译可以防止sql注入)5、执行sql 拿到结果集6、遍历结果集7、关闭资源(按倒序关闭,资源先开的后关,后开的先关)

2025-05-10 22:27:19 809

原创 Spring框架(1)

Spring是一个轻量级的开源Java开发框架,由Rod Johnson在2003年创建。它的核心思想是通过控制反转(IOC)和面向切面编程(AOP)来实现松耦合的应用程序设计。Spring框架通过IOC和AOP两大核心思想,极大地简化了Java企业级开发。从最初的XML配置到现在的注解驱动开发,Spring不断演进,为开发者提供了更加便捷的开发体验。掌握Spring的基本概念和使用方法,是Java开发者必备的技能。希望通过本文的介绍,你能对Spring框架有一个清晰的认识,并能够开始在实际项目中使用它。

2025-05-09 23:32:10 1502

原创 SpringMVC框架(2)

​/*** 老师* 系统的异常类*/​// 提示消息​@Override​​​​​​​/*** 老师*/​/*** 程序出现了异常,调用异常处理器中的方法* @param o* @param e* @return*/@Override// 在控制台打印异常的信息// 做强转// 判断}else{exception = new SysException("系统正在维护,请联系管理员");​// 存入异常提示信息。

2025-05-06 21:43:13 796

原创 SpringMVC框架

/日期// 2000-11-11 格式的日期不能进行转换了,开发使用还是比较多,比较简单//引用对象//map@Override'}';return age;自定义类型转换器// 判断throw new RuntimeException("请输入内容");// 进行转换try {// 进行转换注册自定义类型转换器,在springmvc.xml配置文件中编写配置-- 配置spring创建容器时要扫描的包 -->

2025-04-27 23:04:24 810

原创 Maven进阶

maven的核心配置文件pom.xml,定义了项目的基本信息、依赖、构建配置等。maven中央仓库链接。

2025-04-26 21:47:45 1282

原创 Maven私服架构

Nexus是最流行的 Maven 私服管理工具通过nexus可以搭建maven仓库,同时nexus还提供强大的仓库管理功能,构件搜索功能等。仓库管理(存储、代理、分组)权限控制(谁可以上传/下载)高可用 & 备份Nexus 的核心概念仓库类型作用例子Proxy(代理仓库)代理远程仓库(如 Maven Central),缓存依赖Hosted(托管仓库)存储公司内部的 Jar 包releases(稳定版)、snapshots(快照版)Group(仓库组)

2025-04-26 21:47:22 1010

原创 Idea创建项目的搭建

ON ‘Update’ action和ON Frame deactivation选最长的,端口可以修改,防止端口号被占用。从上往上依次为:磁盘maven的安装目录、maven的settings文件和maven的本地库配置。勾选上Create from archetype选择下述图片上的webapp,下一步。在maven的conf下的settings.xml中添加本地库。可以在目录中新建java目录和resources目录。进入Modules中,选择到该文件的目录下。填写好GroupId和项目名,下一步。

2025-04-22 23:54:38 618

原创 Spring---拦截

在Web应用开发中,拦截器(Interceptor)扮演着至关重要的角色,它类似于现实世界中的安全检查站,对进入系统的每个请求进行审查和控制。Spring MVC提供的拦截器机制允许我们在请求处理的生命周期中插入自定义逻辑,实现横切关注点(Cross-Cutting Concerns)的集中处理。

2025-03-26 22:02:05 1044

原创 SpringMVC请求和响应

SpringMVC作为Spring框架中的核心Web模块,提供了强大而灵活的请求处理与响应机制。本文将深入剖析SpringMVC的请求映射、参数绑定、数据响应以及异常处理等核心功能,帮助开发者构建健壮的Web应用程序。RequestMapping注解是SpringMVC中建立请求URL和处理方法之间对应关系的核心。

2025-03-24 22:56:47 431

原创 SpringMVC配置和基本原理

SpringMVC是Spring框架中的一个重要模块,它基于MVC(Model-View-Controller)设计模式,为构建灵活、松耦合的Web应用程序提供了全面的支持。SpringMVC通过DispatcherServlet作为前端控制器,将请求分发到各个处理器,并支持灵活的URL映射、数据绑定、验证和视图解析等功能。与传统的Servlet开发相比,清晰的职责分离强大的配置灵活性与Spring生态系统的无缝集成支持多种视图技术易于测试。

2025-03-24 22:19:31 819

原创 Spring

IOC -- Inverse of Control,控制反转,将对象的创建权力反转给Spring框架!在java当中一个类想要使用另一个类的方法,就必须在这个类当中创建这个类的对象,那么可能会出现如下情况, 比如A类当中创建着B对象,B类当中有C对象,C类当中有A对象,这个如果一个类出了问题,那么可能会导致这个框架出现问题。Spring 将创建对象的权利给了IOC,在IOC当中创建了ABC三个对象吗,那么我们我们其他的类只需要调用集合, 大大的解决了程序耦合性的问题。

2025-03-22 21:43:17 1049

原创 Spring---AOP

AOP(Aspect-Oriented Programming,面向切面编程)是一种编程范式,旨在通过“横切”的方式将分散在多个模块中的共同功能(称为“横切关注点”)集中管理。AOP的核心思想是将横切逻辑与业务逻辑分离,从而提高代码的模块化和可维护性。

2025-03-22 20:31:58 278

原创 深入理解事务

事务是一个完整的业务流程,是不可再分的工作单元。它通常与DML(数据操作语言)语句相关,如INSERTUPDATEDELETE等。事务的执行与业务逻辑密切相关,不同的业务逻辑可能需要不同数量的DML语句。事务是数据库管理中的核心概念,确保了数据的完整性和一致性。通过理解事务的基本概念、四大特征以及在MySQL和MyBatis中的使用,我们可以更好地设计和实现可靠的数据库应用。希望本文能帮助你更深入地理解事务,并在实际开发中灵活运用。

2025-03-18 23:15:54 515

原创 手写一个Tomcat

Tomcat 是一个广泛使用的开源 Java Servlet 容器,用于运行 Java Web 应用程序。虽然 Tomcat 本身功能强大且复杂,但通过手写一个简易版的 Tomcat,我们可以更好地理解其核心工作原理。本文将带你一步步实现一个简易版的 Tomcat,并深入探讨其核心组件和运行机制。

2025-03-08 21:17:02 1994 1

原创 深入理解HTTP协议

HTTP(HyperText Transfer Protocol)是互联网上应用最广泛的协议之一,它是Web通信的基础。无论是浏览网页、发送API请求,还是进行文件传输,HTTP都扮演着至关重要的角色。本文将深入探讨HTTP协议的各个方面的核心知识点。

2025-03-01 19:04:37 712

原创 Tomcat

在Java开发的广阔天地中,Tomcat犹如一座坚固的桥梁,连接着开发者与Web应用的无限可能。它不仅是Apache软件基金会旗下的一个开源项目,更是无数Java Web应用赖以运行的基石。本文将带您深入了解Tomcat的奥秘,从其定义、作用到安装目录的解析,一一为您揭晓。

2025-02-25 23:19:53 376

原创 Java--IO流

Java IO流是Java编程中处理输入输出的核心机制。无论是读取文件、网络通信,还是处理用户输入,IO流都扮演着至关重要的角色。本文将探讨Java IO流的基础概念和常用类。

2025-02-20 18:09:22 832

原创 Java代理

在软件开发中,代理模式是一种非常常见的设计模式。它允许我们通过一个代理对象间接访问目标对象,从而在不修改目标对象的情况下增强其功能。代理模式广泛应用于日志记录、权限校验、事务管理、延迟加载等场景。本文将带你深入了解Java中的代理模式,包括静态代理和动态代理的实现方式。

2025-02-19 11:45:06 1206

原创 Java反射

在Java的世界中,反射(Reflection)是一个强大而神秘的工具。它允许程序在运行时动态地获取类的信息并操作类的属性和方法。本文将带你深入理解Java反射,揭开反射的神秘面纱。

2025-02-18 19:26:08 904

原创 Java抽象类与接口

在Java编程中,接口(Interface)和抽象类(Abstract Class)是两种重要的抽象机制,它们为代码的设计提供了灵活性和扩展性。然而,它们之间有着本质的区别,理解这些区别是编写高质量代码的关键。

2025-02-17 21:50:07 585

原创 Java异常体系

在Java的世界中,异常(Exception)是程序运行过程中不可避免的一部分。无论是用户输入错误、文件读取失败,还是网络连接中断,异常都会悄然而至。Java提供了一套完善的异常处理机制,帮助开发者优雅地应对这些意外情况。本文将带你深入探索Java异常体系。

2025-02-13 10:45:56 345

原创 Java包装类:128陷阱与自动拆装箱

在Java的世界中,包装类是一个不可或缺的存在。它们为基本数据类型提供了对象化的支持,使得基本类型能够参与到面向对象的编程范式中。然而,包装类的使用并非总是那么简单,尤其是当涉及到“128陷阱”和自动拆装箱时,稍有不慎便可能引发意想不到的问题。本文将带你深入探讨Java包装类的奥秘,揭示其中的陷阱与技巧。

2025-02-13 10:09:34 1259

原创 Java--Object类

Java作为一门面向对象的编程语言,所有类都直接或间接继承自Object类。Object类作为所有类的根类,提供了许多基础方法,其中==equals()和hashCode()这三个方法尤为重要,也常常容易混淆。本文将深入探讨它们的区别和作用。

2025-02-11 21:08:13 572

原创 Java多态

在面向对象编程,多态(Polymorphism)是一个核心概念,它允许我们以统一的方式处理不同类型的对象。Java作为一门面向对象的编程语言,多态性是其强大功能之一。通过多态,我们可以编写出更加灵活、可扩展和易于维护的代码。

2025-02-10 16:00:38 689

原创 Java继承

在Java编程的广阔世界中,继承作为面向对象编程的核心概念之一,扮演着至关重要的角色。它不仅能够促进代码的重用,还显著增强了软件的可扩展性和可维护性。

2025-02-08 15:55:43 546

原创 JavaScript ——dom操作

对象.原生属性=值 自定义属性 getAttribute()获取,setAttribute()设置。找上一个 previousSibling previousElementSlibling。对象.style.属性=值 obj.style.cssText="css样式"找下一个 nextSibling nextElementSibling。true:复制全部,false复制外壳。

2024-12-15 23:15:00 202

原创 JavaScript基础语法

用var就行;分号可加可不加 直接alert调用命名函数若赋给其他值自己名字不在起作用console.log("函数执行")//调用()内按顺序赋值。

2024-12-15 22:30:00 159

原创 CSS选择器基本类型

以上规则使用大多数场景,特殊场景不适用。

2024-12-15 22:00:00 178

原创 CSS基本布局(2)

内联元素不会独占一行,其宽度和高度由内容决定,无法设置width和height属性,其外边框margin只能设置水平方向(左右),内边框(padding)可以设置所有方向。常见的内联元素有<span><a>等。块级元素会独占一行,并且可以设置width、height、padding、margin等属性。常用的块级元素有<div>、<p>、<h1>等。元素不会独占一行,但可以设置宽度和高度。允许设置内边距和外边距的所有方向。允许使用 Flexbox 布局模型,能够灵活控制子元素的排列、对齐和分布。

2024-12-13 23:18:39 342

原创 CSS基本布局(1)盒子模型

html和css链接在头部class对应./id对应#

2024-12-12 23:44:30 587

原创 HTML基本标签(2)

【代码】HTML基本标签(2)

2024-12-11 23:27:12 175

原创 HTML常用基本标签(1)

target设置资源打开窗口的方式_self本窗口,_blank新窗口 aa指定名字为aa的窗口。注意:html中不识别空格,js中识别。src链接,name命名。

2024-12-11 23:13:48 504

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除