- 博客(25)
- 收藏
- 关注
原创 自定义映射resultMap —— 一对一、多对一
resultMap标签下可以创建六种标签,<id>用于添加数据库表中主键的映射关系,<result>用于添加除了主键之外的其他列名的映射关系,此外还有<association>、<collection>、<discriminator>、<consturctor>四种标签,之后会讲解它们的作用,2、如果字段名和实体类中的属性名不一致的情况下,但是字段名符合数据库的规则(使用_),实体类中使用的属性名符合java的规则(使用驼峰命名),可以在MyBatis的核心配置文件中设置一个全局配置信息。
2025-03-21 17:42:54
853
原创 Mybatis的各种查询功能
1.1、搭建module:10mybatis${}的本质就是字符串拼接,采用sql拼接,无法防止sql注入#{}的本质就是占位符赋值 ,采用预编译 防止sql注入1.2、单个字面量类型的参数 int i = 1;如果mapper接口中的方法参数为单个的字面量类型,此时可以使用#{}和${}以任意的名称获取参数的值,如果使用${},注意需要手动添加单引号。1.3、多个字面量类型的参数。
2025-03-21 17:07:13
905
原创 mysql事务
本文详细解释了事务的概念,包括其原子性、持久性、隔离性和一致性,以及在转账操作中的应用。讨论了事务的四大特性,隔离级别的概念和MySQL中事务的提交与回滚,以及并发问题如脏读、不可重复读和幻读。最后介绍了不同隔离级别的含义和对一致性的保障。
2025-03-20 19:47:12
808
原创 Mybatis简介和项目环境搭建
MyBatis最初是Apache的一个开源项目iBatis, 2010年6月这个项目由Apache Software Foundation迁移到了Google Code。随着开发团队转投Google Code旗下, iBatis3.x正式更名为MyBatis。代码于2013年11月迁移到Github。iBatis一词来源于“internet”和“abatis”的组合,是一个基于Java的持久层框架。iBatis提供的持久层框架包括SQL Maps和Data Access Objects(DAO)。
2025-03-20 01:32:36
812
原创 深入了解 MyBatis 逆向工程
MyBatis 逆向工程,简单来说,就是根据数据库中的表结构,自动生成对应的 Java 实体类、Mapper 接口以及 Mapper XML 文件。以往,开发者需要手动编写这些代码,不仅耗时费力,还容易出错。有了逆向工程,只需进行一些配置,就能快速生成这些基础代码,让开发者将更多精力放在业务逻辑的实现上。。
2025-03-20 01:02:38
789
原创 手写一个简易版的tomcat
Tomcat 是一个广泛使用的开源 Servlet 容器,用于运行 Java Web 应用程序。深入理解 Tomcat 的工作原理对于 Java 开发者来说是非常有价值的。本文将带领大家手动实现一个简易版的 Tomcat,通过这个过程,我们可以更清晰地了解 Tomcat 是如何处理 HTTP 请求和响应的。根据以上功能,我们创建如下图所示的包--tomcat类的作用是启动整个tomcat容器--webapp包下存放你自己创建的servlet动态资源。
2025-03-11 19:10:44
954
原创 HTTP 协议简介
通过了解 HTTP 协议的基本概念、特点、工作流程、请求方法、状态码以及发展历程,我们能够更好地理解互联网的运行机制,为开发高效、稳定的网络应用提供坚实的基础。随着互联网技术的不断发展,HTTP 协议也在持续演进,未来它将继续为我们带来更优质的网络体验。
2025-03-06 17:23:37
1133
原创 Tomcat介绍
通过以上步骤,你已经成功安装和部署了 Tomcat,并可以将自己的 Java Web 应用部署到 Tomcat 上进行测试和运行。在实际开发中,还可以根据项目需求对 Tomcat 进行进一步的配置和优化,如调整线程池大小、配置虚拟主机等。希望本文能帮助你顺利开启 Java Web 开发之旅,享受 Tomcat 带来的便捷与高效。
2025-02-27 20:06:56
673
原创 java基础——抽象类与接口
抽象类是一种不能被实例化的类,它为子类提供了一个通用的模板。抽象类可以包含抽象方法和具体方法。抽象方法是没有方法体的方法,它只定义了方法的签名,具体的实现需要由子类来完成。在 Java 中,使用abstract关键字来定义抽象类和抽象方法。接口是一种完全抽象的类型,只包含抽象方法和常量。在 Java 8 及以后的版本中,接口还可以包含默认方法和静态方法。默认方法提供了接口方法的默认实现,子类可以选择是否重写;静态方法则可以直接通过接口名调用。使用interface关键字来定义接口。重写。
2025-02-18 13:29:17
709
原创 java断点调试(debug)
断点调试是指在程序的某一行设置一个断点,调试时,程序运行到这一行就会停住,然后你可以一步一步往下调试,调试过程中可以看各个变量当前的值,出错的话,调试到出错的代码行即显示错误,停下。进行分析从而找到这个Bug断点调试是程序员必须掌握的技能。断点调试也能帮助我们查看java底层源代码的执行过程,提高程序员的Java水平。
2025-02-15 21:19:33
1128
原创 git版本控制工具介绍
分布式版本控制中,每个开发者的本地仓库都是一个完整的版本库,包含了项目的所有历史记录和版本信息。所有的版本数据都集中管理,开发者需要与中央服务器进行交互来进行版本控制操作(SVN),便于团队协作,但如果中央服务器出现故障,所有的版本会有丢失风险。通过创建不同的分支,开发人员可以在各自的分支上独立地进行开发、测试等工作,互不干扰。创建好后取SSH地址,创建一个用于接收远程仓库的文件夹,输入克隆命令:git clone 输入你自己的SSH地址,刚开始创建仓库的小伙伴会遇到警告,因为仓库中没有文件,不必理会。
2025-02-14 21:32:48
1588
2
原创 java反射机制
Java 反射机制是 Java 语言中的一个重要特性,它允许程序在运行时获取和操作类的信息,包括类的构造函数、方法、字段等,并且能够动态地创建对象、调用方法和访问字段。
2025-02-13 23:29:18
797
原创 java集合详解
Java 集合框架是 Java 提供的一组用于存储和操作数据的类和接口,它位于java.util包中。集合框架提供了丰富的数据结构和算法,能够帮助开发者更高效地处理和管理数据。以下将从集合框架的体系结构、主要接口和类、常用操作等方面进行详细介绍。
2025-02-12 22:45:17
956
原创 java异常处理
在 Java 中,还可以自定义异常类来满足特定的业务需求。自定义异常类通常继承自Exception类(检查型异常)或类(非检查型异常)。// 自定义异常类try {// 可能会抛出MyException的代码throw new MyException("这是一个自定义异常");// 处理自定义异常System.out.println("捕获到自定义异常:" + e.getMessage());合理地使用 Java 异常机制可以使程序更加健壮、易于维护和调试。
2025-02-12 19:38:39
1228
原创 java中的包装类
自动装箱:指的是将基本数据类型自动转换为对应的包装类对象。例如,把int类型的值直接赋给Integer类型的变量,Java 编译器会自动完成从int到Integer的转换。自动拆箱:与自动装箱相反,它是将包装类对象自动转换为对应的基本数据类型。例如,把Integer类型的对象直接赋给int类型的变量,编译器会自动将Integer对象转换为int值。
2025-02-11 23:57:37
678
原创 == 和 equals方法详解
=运算符对于基本数据类型,比较的是值是否相等。对于引用数据类型,比较的是引用是否指向同一个对象。equals方法在Object类中,默认比较的是引用是否相等。许多类会重写equals方法,以实现基于对象内容的比较。在使用equals方法时,要注意对象是否重写了该方法,以及重写后的比较规则。
2025-02-11 21:55:12
670
原创 java中的Object类
在 Java 中,Object,也就是说ObjectObject。如果一个类没有显式地声明继承自某个父类,那么它默认继承自 Object类。下面从几个方面详细介绍 Object。
2025-02-11 19:44:28
234
原创 java基础——多态的作用、概念及用法理解
多态是面向对象的重要特性,简单点说:“一个接口,多种实现”,就是同一种事物表现出的多种形态。编程其实就是一个将具体世界进行抽象化的过程,多态就是抽象化的一种体现,把一系列具体事物的共同点抽象出来, 再通过这个抽象的事物, 与不同的具体事物进行对话。多态的本质是父类引用指向子类对象,多态允许将子类的对象当作父类的对象使用,某父类型的引用指向其子类型的对象,调用的方法是该子类型的方法。这里引用和调用方法的代码编译前就已经决定了,而引用所指向的对象可以在运行期间动态绑定。
2025-02-11 13:28:37
1188
原创 Java中的继承:理解、应用与最佳实践
在面向对象的编程语言中,继承是一种重要的概念。Java作为一门流行的编程语言,继承是其面向对象编程(OOP)的核心特性之一。本文将详细介绍Java中的继承概念、工作原理以及最佳实践。
2025-02-09 23:22:12
335
原创 平衡二叉树、B树、B+树、红黑树解析
B+树非叶子节点不含数值,纯当索引,省空间,能存更多的数据,在内存相同的情况下能存更多的k值,整棵树高度越低,而且B+树的叶子节点相连,整棵树能直接遍历,B树遍历比B+树麻烦,区间查找也是。排列方式:一个节点左边的数据要比当前节点小,右边的数据要比当前节点大。如果是三节点的话,转换出一个黑色的节点和一个红色的节点(两种可能)一个节点左边的数据要比当前节点小,右边的数据要比当前节点大。如果是四节点的话,转换出一个中间黑色的节点和两个红色的节点。5、一个节点如果是红色节点,那么他的子节点一定是黑色。
2024-10-31 16:58:15
738
原创 哈夫曼树和哈夫曼编码
带权路径长度是从根节点到该节点路径的长度与该节点权值乘积,树的带权路径长度是所有叶子节点的带权路径长度之和(WPL),WPL最小的就是哈夫曼树。
2024-10-31 16:28:47
331
1
原创 float和int类型的取值范围和精度比较
int类型和float类型在java中都是占四个字节,也就是32位,如何去比较float和int类型的精度,首先要分析两者的组成。
2024-10-17 20:14:29
756
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人