自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Mybatis的配置

①引入Mybatis的坐标②引入MySQL驱动的jar包③引入Junit单元测试的jar包④引入log4j的jar包(日志)--mybatis核心包-->--mysql驱动包-->-- 单元测试 -->-- 日志 -->

2025-12-27 23:20:52 616

原创 Java类与对象

光说概念太抽象,直接上代码!结合上面“学生”的例子,我们一步步来写。class 类名 { 成员变量(属性);成员方法(行为);// 定义Student类// 成员变量(属性):学号、姓名、年龄、专业int age;// 成员方法(行为):上课System.out.println(name + "正在上" + major + "的课");// 成员方法(行为):交作业System.out.println(name + "提交了作业");// 成员方法(行为):考试。

2025-12-24 23:36:16 773

原创 Java数据库操作:JDBC入门5步走

JDBC其实就是Java操作数据库的“桥梁”,核心步骤就5个:导入驱动→建立连接→执行SQL→处理结果→关闭资源。新手不用一开始就追求高深的知识,先把基础步骤练熟,写几个增删改查的例子,慢慢就能理解背后的逻辑了。我刚开始练的时候,经常因为URL写错、密码输错、忘记关闭资源报错,多试几次、多查几次错误信息就好了。编程这东西,光看没用,一定要动手写!

2025-12-24 23:15:24 818

原创 Java反射

/ 成员变量(包含public和private)// 构造器(无参和有参)// 成员方法(包含public和private)System.out.println(name + "正在学习Java反射~");System.out.println(name + "正在吃" + food);@Override。

2025-12-22 23:38:20 952

原创 Java IO流

IO,即Input/Output(输入/输出),是程序与外部设备(如文件、键盘、网络)之间进行数据传输的过程。而“流”(Stream)则是对数据传输的抽象描述——数据像水流一样从一个地方流向另一个地方,我们通过“流”对象来控制这个传输过程。Java IO流的核心设计思想是“面向抽象编程”,通过定义一系列抽象类(如InputStream、OutputStream、Reader、Writer)规范流的操作接口,再由具体的实现类适配不同的数据源/目的地(如文件、字节数组、网络)。

2025-12-21 21:17:11 869

原创 数据结构的八大排序

核心思想是前后两两进行对比交换;:核心思想是找最小和待排序数组的第一个进行交换;:核心思想是待排序数组插入到鹰派好的数组当中,待排序数组已经排好序;:核心思想是先将数组按固定间隔分组(间隔初始为数组长度的一半,逐步减半至 1),每组内做插入排序;通过分组预排序让数组 “基本有序”,最后整体以间隔 1(即普通插入排序)完成最终排序,减少插入排序的移动次数;:核心思想是 “分治”;先将数组递归拆分为左右两个子数组,直到子数组长度为 1(天然有序);

2025-12-20 14:29:13 943

原创 有序二叉树节点的删除

我们删除二叉树的节点时候,要保证删除以后的数据继续保持有序状态,那么就会分为三种情况a.删除叶子节点;b.删除只有一个子节点的节点;c.删除有两个子节点的节点。

2025-12-18 17:24:35 1231

原创 二叉树的构建和遍历、查询

如图,树的一个节点拥有三个关键部分,分别是左子节点(lChild)、右子节点(rChild)和值(data)。就拿有序二叉树来说,它的特点是:左子节点的值比父节点小,右子节点比父节点大例如:构建有序二叉树4871923。

2025-12-17 20:18:46 1319

原创 Java异常体系

注意:不要在 finally 中使用 return (会覆盖 try 或 catch 中的 return 结果,导致逻辑混乱)。①throws:用在方法声明后,表名该方法可能抛出的异常类型,将异常“交给调用者处理”(适用于编译时异常,或不想在当前方法处理的运行时异常)。当Java内置异常无法满足业务需求(如“用户余额不足”“订单状态非法”)时,可自定义异常,让异常信息更贴合业务场景。②throw:用在方法内部,主动抛出一个具体的异常对象(通常结合业务逻辑判断,如参数非法时)。

2025-12-16 20:31:29 922

原创 servlet原理和tomcat原理

1. 启动阶段:初始化 Servlet 容器(1)扫描 & 读取配置扫描项目中的所有 Servlet 文件,获取其全路径名;读取 Servlet 类中@WebServlet注解的配置(即 Servlet 的访问路径)。(2)生成 Servlet 容器(核心步骤)用 HashMap 构建 “Servlet 容器”:key = Servlet 的访问路径;value = 对应 Servlet 对象(通过全路径名实例化)。2. 处理请求阶段(1)接收请求。

2025-12-06 13:35:12 961

原创 socket编程入门

Socket是应用层与传输层间的通信接口,实现网络数据传输。创建Socket通信需指定端口号,服务器端通过ServerSocket监听连接请求,客户端通过Socket建立连接后发送数据。为避免主线程处理大量请求导致数据丢失,引入子线程处理机制,但会面临线程资源消耗问题。解决方案是使用线程池(ThreadPoolExecutor),通过核心线程数、最大线程数等参数优化资源管理,实现高效任务处理。线程池采用任务队列机制,当核心线程满时任务进入队列,队列满则创建新线程,超出最大线程数则触发拒绝策略。

2025-12-03 16:11:38 832

原创 Java中的集合

①有序性 List保证按插入顺序排序;②唯一性 List可以重复存储元素;③获取元素 List可以通过索引直接操作元素。

2025-11-07 10:45:26 1590

原创 Java入门:JDK、进制转换全解析

Java的标准安装包,内部装有编译运行的资源(各种基础类库和编译器);:内部包含Java程序运行的环境,用于解释字节码文件;:虚拟机,为了屏蔽底层操作系统的差异。我们命名Java文件时要遵循驼峰命名法则,即单词每个首字母大写,例如HelloController。2.Java如何作注释?(1)//:单行注释;(2)/*...*/长注释;(3)/**...*/自动生成文档;3.:类、接口、数组。

2025-11-06 22:53:08 325

原创 Java字符串

+号等价于调用Stringbuilder当中的append方法,Stringbuilder会在堆中开辟内存空间并完成数组的拼接(拼接时不能在原数组上进行拼接),拼接好后调用Stringbuilder中的toString方法,内容是newString(value),这样我们会在堆里边开辟内存空间指向字符串常量池当中的字符串(来自于StringBuilder当中拼接好的字符串)。

2025-11-04 14:17:05 744

原创 电脑中数据的存储

存储信息时,电机会带动盘片旋转,磁头会对应到盘片的对应位置,盘片的切面有许多小磁颗粒,小磁颗粒的表面涂有磁性涂层,利用电生磁原理,通电后使得小磁颗粒一端带有N或S极,不同磁极表示不同的信息,代表0或1,由此存储于磁盘中。:文件储存在磁盘里,使用的时候转化为数据和指令到内存(特点:关机后内存里的数据就会丢失)中,之后到cpu、运算器、控制器中运算。通过给电容充电,使得电容带电,表示为1,相邻的电容不充电,表示0,这样就可以存储数据。常用的数据会存在内存中,电脑一旦关机,内存里的数据就会消失。

2025-11-03 00:49:14 348

原创 Java当中的数据类型与运算

在十进制的条件下,如数2000000001——>2.00000000(1)*10^9,其中的1会丢失。float是单精度(32位),double是双精度(64位),阶位/数值位越长,精度和范围越高。遵循IEEE754标准,结构分为“符号位(正负)”+“阶位(指数)”+“数值位(尾数)”;②>> 右移运算:高位看符号位,是0补0是1补1,低位舍弃;②| 按位或操作:两个操作数同位0则为0,否则为1;①& 按位与操作:两个操作数同为1则为1,否则为0;③^ 按位异或操作:操作数相同为0,否则为1;

2025-11-03 00:41:34 395

原创 Java final与泛型深度解析

我们使用Integer定义的数据会自动进行装箱,自动装箱调用valueOf()方法,该方法会判断我们入参是否在-128~127之间,如果爱这之间,则会返回一个已存在的对象的地址(该对象在Cache数组中,Cache数组是一个从-128~127的数组),则不会创建新对象,反之则重新创建对象。

2025-11-03 00:28:33 1160

原创 Java继承本质

Animal内存空间里边会有变量color、name和方法run()、eat(),此时main()中的Animal0x1对应着堆中的0x1内存空间。如图,在堆中创建父类对象之后,父类对象有run()、eat()、name和color,创建子类对象时,子类对象中的run()方法会把父类当中的对象覆盖掉,所以会优先创建父类对象。例如在Animal中的run()方法中写入输出“所有的动物都会跑”,在Cat中的run()方法中写入输出“猫用四只脚跑步......”,此时运行输出的结果将会是“猫用四只脚跑步”。

2025-10-29 19:51:16 976

原创 Java程序运行与JVM内存解析

CPU会由于OS内部的时间片机制分别调用t1、t2线程:假如先调用t1 2万次,还剩下98万次未完成,count的值变成20000,此时由于时间片机制轮到CPU调用t2了,假如调用 t2 25万次,还剩下75万次未完成,此时count的值会变成250000,由此循环往复,count的值永远小于200万。由于线程调度是随机的,t1和t2的打印结果是交替出现的,它们输出顺序是不确定的,有可能先输出t1,也有可能先输出t2。每个线程会被分配一个极短的时间片,时间片耗尽后,CPU会切换到其他线程。

2025-10-25 11:08:47 816

空空如也

空空如也

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

TA关注的人

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