自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JavaSSM框架-MyBatis 框架(七)

MyBatis逆向工程能够根据数据库表自动生成Java实体类、Mapper接口和映射文件。配置步骤包括:添加MyBatis核心依赖和逆向工程插件,创建核心配置文件mybatis-config.xml,编写generatorConfig.xml配置文件指定数据库连接、生成策略和逆向分析的表。执行MBG插件后,会生成基础CRUD操作代码。QBC查询可通过EmpExample构建复杂条件查询,如组合条件查询(and/or)。逆向工程大大简化了持久层开发工作,提高开发效率。

2025-09-11 10:07:46 702

原创 JavaSSM框架-MyBatis 框架(六)

MyBatis缓存机制详解 MyBatis提供两级缓存机制:一级缓存是SqlSession级别的,默认开启;二级缓存是SqlSessionFactory级别的,需要手动配置。一级缓存在执行增删改操作或手动清空时会失效。二级缓存要求实体类实现序列化接口,且SqlSession关闭后才会生效。 二级缓存支持多种配置选项,包括缓存回收策略、刷新间隔等。MyBatis查询时先检查二级缓存,再查一级缓存,最后访问数据库。此外,MyBatis支持整合第三方缓存如EHCache,需添加相关依赖并配置ehcache.xml

2025-09-11 09:48:13 955

原创 JavaSSM框架-MyBatis 框架(五)

摘要: MyBatis动态SQL技术通过条件判断动态生成SQL语句,解决传统SQL拼接问题。文章介绍了if、where、trim标签的使用:if标签通过test属性判断条件是否执行;where标签自动处理where关键字和and条件;trim标签可自定义SQL前后缀处理。还讲解了choose、when、otherwise标签实现多条件分支查询,类似if-else结构。这些标签能灵活组合,实现复杂条件查询,提升SQL编写效率。

2025-09-10 17:00:11 996

原创 JavaSSM框架-MyBatis 框架(四)

本文介绍了MyBatis中自定义映射resultMap的环境搭建与数据准备,以及字段名与属性名不一致时的三种解决方案。首先搭建了包含员工表(t_emp)和部门表(t_dept)的数据库环境,并创建了对应的Emp和Dept实体类。随后详细说明了当数据库字段名与实体类属性名不一致时的处理方法:1)通过SQL语句为字段设置别名;2)在MyBatis配置文件中启用mapUnderscoreToCamelCase设置,实现下划线命名到驼峰命名的自动转换;3)使用resultMap进行显式映射。这些方法能有效解决字段与

2025-09-10 09:36:33 1206

原创 JavaSSM框架-MyBatis 框架(三)

本文介绍了MyBatis的多种查询功能实现方式:1)查询单条数据返回实体类对象,通过id查询用户信息;2)查询多条数据返回List集合,获取所有用户信息;3)查询单行单列数据,如统计总数;4)查询单条数据返回Map集合,字段名为key;5)查询多条数据返回Map集合的两种方式:List<Map>或使用@MapKey注解指定键。每种方式均包含接口定义、XML映射配置和单元测试示例,展示了灵活的数据查询方案。

2025-09-09 13:45:42 1035

原创 JavaSSM框架-MyBatis 框架(二)

MyBatis核心配置文件详解:配置文件标签必须按固定顺序排列,包括properties、settings、typeAliases等。properties标签可引入外部properties文件;typeAliases用于设置类型别名;environments配置数据库连接环境,包含事务管理方式(JDBC/MANAGED)和数据源类型(POOLED/UNPOOLED/JNDI);mappers标签引入映射文件,要求mapper接口与映射文件包路径和名称一致。同时提供了IDEA创建配置模板的方法,可通过sett

2025-09-09 09:08:50 934

原创 Window下快速删除大量文件

这是由于Window删除文件或者文件夹的机制导致的,删除的文件还需要放到回收站等等,所以导致删除较慢,上网找了很多方法,大部分都是用第三方软件工具或者命令行删除,但是都比较麻烦,尝试了部分也行不通。这里直接使用 python 删除大量文件,快速方便,在删除十万多张图像时,只用了几秒钟,只需将下面代码中的 folder 替换成 需要删除的文件夹即可。在Window下删除大量文件时,往往很慢,比如一些大规模数据集可能包含数十万张图像,甚至百万张图像。

2025-09-08 09:09:09 379

原创 JavaSSM框架-MyBatis 框架(一)

MyBatis是一个半自动ORM框架,支持定制化SQL和对象映射,相比JDBC和Hibernate更加灵活。搭建MyBatis环境需要: 创建Maven项目并导入MyBatis、MySQL等依赖 创建数据库表结构 编写POJO类映射数据库表 配置mybatis-config.xml核心文件,设置数据库连接 创建Mapper接口和XML映射文件编写SQL 通过SqlSessionFactory获取SqlSession执行操作 MyBatis将SQL与Java代码分离,提高了开发效率和可维护性。

2025-09-07 12:31:22 1270

原创 YOLOv1 讲解

YOLOv1将目标检测视为回归问题,通过将输入图像划分为7×7网格,每个网格预测2个边界框及其置信度和20个类别的条件概率。网络输出为7×7×30的张量,前10个元素对应两个边界框的坐标和置信度,后20个元素是类别概率。预测阶段对98个边界框进行非极大值抑制(NMS),首先计算每个边界框的类别概率(置信度×条件概率),然后按类别过滤并去除重叠框,最终保留最可能的检测结果。YOLOv1实现端到端检测,但受限于网格划分,对小目标和密集目标检测效果较差。

2025-09-06 16:46:45 1285

原创 MiniDrive:面向自动驾驶的更高效的视觉语言模型

MiniDrive:一种高效的多图像视觉语言模型框架,用于自动驾驶任务 本文提出了一种名为MiniDrive的新型视觉语言模型框架,专为自动驾驶任务设计。该框架通过三个关键创新解决了现有模型的计算效率和多图像处理问题: 采用UniRepLKNet作为视觉编码器,首次在VLM中使用大卷积核网络高效提取多级2D特征; 提出特征工程专家混合(FE-MoE)模块,将多图像2D特征映射为视觉token,减少特征冗余; 设计动态指令适配器(DI-Adapter),使视觉token能根据文本指令动态调整。 实验结果表明,

2025-09-06 12:46:55 2154 1

原创 Java学习笔记-JDBC数据库连接池(三)

基本介绍是Apache组织提供的一个开源JDBCT具类库,它是对JDBC的封装,使用dbutils能极大简化jdbc编码的工作量DBUtils 相关类与接口QueryRunner类:该类封装了SQL的执行,是线程安全的,可以实现增、删、改、查、批处理,使用QueryRunner类实现查询``ResultSetHandler接口:该接口用于处理java.sql.ResultSet,将数据按要求转换为另一种形式`:把结果集中的第一行数据转成对象数组:把结果集中的每一行数据都转成一个数组, 再。

2025-09-05 11:29:40 423

原创 Java学习笔记-JDBC数据库连接池(二)

当需要成批插入或者更新记录时,可以采用Java的批量更新机制,这一 机制允许多条语句一次性提交给数据库批量处理,通常情况下比单独提交处理更有效率。

2025-09-05 11:23:38 684

原创 Java学习笔记-JDBC数据库连接池(一)

本文介绍了JDBC的基本概念和入门使用。JDBC为Java程序访问不同数据库提供了统一接口,开发者只需面向接口编程,不同数据库厂商提供具体实现。文章通过模拟JDBC接口和MySQL/Oracle实现类,展示了JDBC的工作原理。详细讲解了JDBC编程步骤:注册驱动、获取连接、执行SQL、释放资源。并给出了第一个JDBC程序示例,演示了如何连接MySQL数据库并执行增删改查操作。最后提到连接数据库的五种方式,其中第一种方式是直接创建Driver对象并通过Properties设置用户名密码进行连接。

2025-09-04 10:16:04 1076

原创 Java学习笔记-零基础学MySQL(五)

MySQL事务是保证数据一致性的重要机制,由一组DML语句组成,要么全部成功,要么全部失败。事务支持回退和提交操作,可通过保存点实现部分回退。操作包括start transaction开启事务、savepoint设置保存点、rollback回退、commit提交。MySQL默认自动提交DML语句,需显式开启事务才能回滚。事务隔离级别分为读未提交、读已提交、可重复读和串行化,可防止脏读、不可重复读和幻读问题。InnoDB支持事务,MyISAM不支持。事务具有ACID特性:原子性、一致性、隔离性和持久性,确保数

2025-09-04 09:54:37 884

原创 Java学习笔记-零基础学MySQL(四)

本文摘要: MySQL约束主要包括五种:主键(primary key)、非空(not null)、唯一(unique)、外键(foreign key)和检查约束(check)。主键约束要求字段唯一且非空,一张表只能有一个主键(可以是复合主键)。非空约束确保字段不为空,唯一约束保证字段值不重复。外键约束用于建立表间关系,要求从表外键值必须存在于主表主键中或为NULL。检查约束用于限定字段值范围(MySQL5.7仅语法支持)。文章通过具体示例演示了各约束的创建、使用和删除方法,并特别说明了复合主键、外键关联等注

2025-09-03 17:15:28 942

原创 Java学习笔记-零基础学MySQL(三)

本文介绍了MySQL表查询的加强功能,主要包括模糊查询、排序查询、分页查询和分组查询四个部分。在模糊查询中,演示了使用LIKE操作符和通配符进行模糊匹配的方法;排序查询部分讲解了ORDER BY子句的使用,包括单列和多列排序;分页查询通过LIMIT关键字实现数据分页显示;分组查询部分详细说明了GROUP BY子句的应用,配合HAVING子句对分组结果进行过滤。文章通过具体SQL示例,展示了如何实现日期比较、模糊匹配、排序分页、部门统计等常见查询需求,并提供了格式化输出和别名的使用技巧。

2025-09-03 17:06:34 530

原创 Java学习笔记-零基础学MySQL(二)

本文介绍了数据库CRUD操作的基本语句,包括INSERT、UPDATE、DELETE和SELECT语句的使用方法及注意事项。重点讲解了INSERT语句的8个细节要求、UPDATE语句的多字段修改能力、DELETE语句的删除限制,以及SELECT语句的基本语法和注意事项。通过创建商品表和成绩表的具体案例,演示了各类SQL语句的实际应用,包括数据类型匹配、默认值设置、批量操作等技巧,为数据库操作提供了实用指导。

2025-09-02 11:37:32 485

原创 Java学习笔记-零基础学MySQL(一)

本文介绍了MySQL数据库的安装配置、基本操作及数据类型。主要内容包括:MySQL的安装步骤与命令行连接方法;Navicat和SQLyog两种图形化管理工具的安装;数据库三层结构(DBMS-数据库-表)的组成关系;SQL语句的四大分类(DDL、DML、DQL、DCL);数据库的创建、查看、删除、备份与恢复操作;表的创建方法;以及整型、BIT类型、小数等常用数据类型的详细说明和使用示例。文中提供了大量SQL代码实例和操作示意图,适合初学者快速掌握MySQL的基本操作。

2025-09-02 11:23:15 608

原创 Java学习笔记-反射(二)

Java类加载机制与反射应用 摘要:本文详细介绍了Java类加载机制及其在反射中的应用。主要内容包括: 类加载的两种方式:静态加载(编译时)和动态加载(运行时) 类加载的三个阶段:加载(生成Class对象)、连接(验证/准备/解析)、初始化(执行<clinit>方法) 反射API的使用:获取构造器(getConstructors())、成员变量(getFields())和成员方法(getMethods())等方法 类加载时机与多线程同步机制 静态变量与常量的初始化差异 该机制为Java实现动态语

2025-09-01 17:50:13 1388

原创 Java学习笔记-反射(一)

Java反射机制摘要 Java反射机制允许程序在运行时动态获取类的内部信息并操作对象属性与方法。通过Class类及相关反射API(Method、Field、Constructor等),可以在不知道具体类的情况下创建对象、调用方法、访问字段。反射机制广泛应用于框架设计,其核心原理是通过类加载后在堆中生成的唯一Class对象来获取类的完整结构信息。示例展示了如何通过配置文件动态加载类并调用方法,相比传统方式具有更高的灵活性,但会略微降低性能。反射机制实现了"运行时类型识别"(RTTI)能力,

2025-09-01 17:44:29 1103

原创 Java学习笔记-网络编程(更新中...)

本文摘要介绍了Java网络编程的基础知识,主要包括网络通信概念、IP地址与域名、端口号、网络协议以及Socket套接字等内容。重点讲解了TCP/IP协议栈的组成和TCP/UDP协议的特点,并通过InetAddress类的实际应用演示了获取主机信息的方法。此外,还阐述了Socket在网络通信中的核心作用,以及基于TCP协议的客户端-服务端编程模型,为后续网络应用开发奠定理论基础。

2025-08-31 10:21:08 804

原创 Java学习笔记-IO流(更新中...)

Java IO流之文件操作摘要:本文介绍了Java中文件操作的基本概念和使用方法。重点讲解了File类的三种创建文件方式,包括指定路径、父目录+子路径等方式。提供了获取文件信息的常用方法,如getName()、getAbsolutePath()等。同时详细说明了目录操作和文件删除的实现,包括判断文件/目录存在、创建多级目录(mkdirs())和删除操作。通过示例代码演示了如何在实际开发中进行文件创建、信息获取和目录管理等常见操作,为Java文件IO编程提供了基础指导。

2025-08-31 10:13:17 751

原创 Java学习笔记-多线程基础

多线程基础摘要 程序是为完成特定任务编写的指令集合。进程是运行中的程序,如QQ或编译运行的代码。线程由进程创建,是进程的实体,如QQ同时打开多个聊天窗口。单线程同一时刻只能执行一个任务,多线程可同时执行多个任务。并发是单核CPU通过任务交替执行实现的"伪同时",并行是多核CPU真正同时执行多个任务。 Java创建线程有两种方式:1)继承Thread类并重写run方法;2)实现Runnable接口重写run方法。线程启动需调用start()而非直接调用run(),start()内部通过na

2025-08-30 09:55:57 1141

原创 Java学习笔记-GUI编程基础(更新中...)

本文介绍了Java GUI编程中的绘图基础,主要包括Java绘图坐标体系、绘图原理和实例练习。第一部分讲解了Java绘图的基本概念,强调在JPanel面板上绘图而非JFrame窗口。第二部分详细说明了Graphics类作为绘图工具,提供多种绘图方法如drawOval、drawLine等,并演示了如何设置画笔颜色和字体。最后通过坦克绘图练习,展示了如何创建坦克类并继承使用坐标系统进行图形绘制。文章提供了完整的代码示例,帮助理解Java绘图的基本原理和实现方法。

2025-08-30 09:30:05 229

原创 Java学习笔记-泛型

Java泛型是JDK5引入的重要特性,本质是参数化类型,允许在定义类、接口或方法时使用类型参数,使用时再指定具体类型。泛型的主要优势包括:提高代码复用性、增强类型安全(编译时检查)、减少类型转换。泛型语法包括声明(如class Person<E>)和实例化(如Person<String>)。使用注意事项:泛型只支持引用类型,静态方法不能用类的泛型参数,数组初始化受限制。自定义泛型类和接口可以定义多个类型参数,接口实现时可指定具体类型或保留泛型。泛型在编译时约束类型,但运行时可通过反射

2025-08-29 09:30:32 1341

原创 Java学习笔记-集合(更新中...)

Java集合框架是Java中用于存储和操作数据的重要工具。文章首先介绍了集合的优点,包括动态扩容、丰富API和泛型支持等。然后对集合进行了简单分类,主要分为单列集合(Collection接口下的List和Set)和双列集合(Map接口实现类)。 Collection接口是单列集合的根接口,文章详细介绍了其常用方法,如add、remove、contains等,并通过代码示例演示了这些方法的使用。此外,还讲解了集合遍历的两种方式:迭代器(Iterator)和增强for循环。 迭代器部分重点介绍了Iterator

2025-08-29 09:19:24 702

原创 Java学习笔记-常用类(二)

基本介绍StringBuilder,一个可变的字符序列,此类提供一个与StrngBuffer 兼容的API,但不保证同步(即它不是线程安全的),该类被设计用作的一个简易替换,用在字符串缓冲区被单个线程使用的时候。如果可能,建议优先采用该类,因为在大多数是实现中,它比StringBuffer要快在 StringBuilder 上的主要操作是 append 和 insert 方法,可重载这些方法,以接受任意类型的数据StringBuilder特点。

2025-08-28 09:06:19 941

原创 Java学习笔记-常用类(一)

引入基本介绍java.lang.StringBuffer 代表可变的字符序列,可以对字符串内容进行增删很多方法和String相同,但StringBuffer是可变长度的StringBuffer是一个容器。是字符串缓冲区//老韩解读//1. StringBuffer 的直接父类 是 AbstractStringBuilder//2. StringBuffer 实现了 Serializable, 即StringBuffer的对象可以串行化。

2025-08-28 09:04:29 959

原创 Java学习笔记-异常Exception

概念异常处理就是当异常发生时,对异常处理的方式异常处理的方式:程序员在代码中捕获发生的异常,自行处理throws:将发生的异常抛出,交给调用者(方法)来处理,最顶级的处理者就是JVM,JVM的处理方式则是直接终止程序运行,将异常信息输出在控制台上,即发生异常时在控制台上输出的那一堆红色的信息(默认的处理异常的方式示意图基本概念当程序中出现了某些“错误”,但该错误信息并没有在Throwable子类中描述处理,这个时候可以自己设计异常类,用于描述该错误信步骤。

2025-08-27 09:18:36 1058

原创 Java学习笔记-枚举和注解

注解( Annotation )也被称为元数据( Metadata ),用于修饰解释包、类、方法、属性、构造器、局部变量等数据信息和注释一样,注解不影响程序逻辑,但注解可以被编译或运行,相当于嵌入在代码中的补充信息在 JavaSE 中,注解的使用目的比较简单,例如标记过时的功能,忽略警告等。在 JavaEE 中注解占据了更重要的角色,例如用来配置应用程序的任何切面,代替 java EE 旧版中所遗留的繁冗代码和 XML 配置等使用 Annotation 时要在其前面增加。

2025-08-27 08:38:23 882

原创 Java学习笔记-面向对象编程(高级)

代码块代码块又称为初始化块,属于类中的成员,类似于方法,将逻辑语句封装在方法体中,通过 { } 包围起来,但和方法不同,没有方法名,没有返回,没有参数,只有方法体,而且不用通过对象或类显式调用,而是加载类时,或创建对象时隐式调用,代码块分为静态代码块和普通代码块基本语法[修饰符]{代码举例:int age;普通代码块static {静态代码块...说明修饰符可选,要写的话,也只能写static代码块分为两类,使用static修饰的叫静态代码块,没有static修饰的,叫普通代码块。

2025-08-27 08:17:57 1192

原创 Java学习笔记-面向对象编程(中级)

本文摘要: 本文介绍了面向对象编程的中级知识,主要包含三部分内容: 集成开发环境部分详细介绍了IDEA和Eclipse两种主流Java开发工具,包括安装使用、项目结构、快捷键设置等实用技巧,重点讲解了IDEA中的project-module-package-class层级结构。 Java包与访问修饰符部分系统阐述了包的三大作用、命名规范及使用方法,详细说明了四种访问修饰符(public/protected/default/private)的作用范围和使用场景。 面向对象编程部分重点讲解了封装和继承两大特性,

2025-08-26 20:28:00 827 1

原创 Java学习笔记-面向对象编程(基础)

本文介绍了面向对象编程的基础概念,主要包括类与对象的关系、内存结构、方法调用机制和可变参数的使用。重点讲解了类作为抽象模板与对象作为具体实例的区别,以及对象在内存中的存储方式(堆、栈、方法区)。详细说明了成员方法的传参机制、可变参数的定义和使用规则,以及全局变量和局部变量的作用域差异。最后解释了this关键字在区分属性和局部变量中的作用,并特别指出在构造器中调用其他构造器的语法要求。这些概念为理解面向对象编程提供了基础框架。

2025-08-26 13:25:20 470

原创 Java学习笔记-程序控制结构及数组

本文介绍了Java程序控制结构和数组的基本概念。控制结构包括单分支、双分支、多分支、switch分支、for/while/do-while循环以及break/continue/return语句,与其他语言类似,并补充了增强for循环的用法。数组部分详细讲解了动态和静态两种初始化方式,以及数组默认值、长度属性和引用特性。特别强调了数组在内存中的存储机制和二维数组的理解方式,指出二维数组本质上是元素为一维数组的数组。文章通过代码示例和内存图说明了数组的赋值机制和创建方法。

2025-08-26 13:13:58 255

原创 Java学习笔记-运算符

本文介绍了Java运算符的补充知识点,包括取余运算的本质、关系运算符的结果类型、instanceof的使用方法、逻辑运算符的区别、==运算符的注意事项、复合赋值运算符的类型转换特性以及位运算符的运算规则。同时讲解了自增自减运算符的面试题解析,键盘输入语句的使用方法,以及原码、反码、补码的概念和不同进制数的表示方法。这些内容是Java编程中运算符使用的重要知识点总结。

2025-08-26 08:59:45 505

原创 Java学习笔记-变量与数据类型

Java变量与数据类型分为基本类型和引用类型。基本类型包括byte(1字节)、short(2)、int(4)、long(8)、float(4)、double(8)、char(2)和boolean(1)。Java与C语言不同:1)+运算符可连接字符串;2)boolean只有true/false值。字面量有整型、浮点型、布尔型等。自动类型转换需注意char/byte/short不互转,整数默认int,浮点数默认double。强制转换需注意优先级和char处理。基本类型与String可通过加号或包装类方法转换,如

2025-08-26 08:58:24 649

原创 Java学习笔记-Java入门

本文介绍了Java编程语言的基础知识,主要包括五个方面内容:首先讲解了Java的跨平台特性和JVM核心机制;其次详细说明了JDK、JRE和JVM之间的关系与区别;然后提供了JDK安装和path环境变量配置的具体步骤;接着阐述了Java编程的注意事项和注释使用方法;最后简要说明了DOS操作系统的基本概念。全文重点突出了Java"一次编译,到处运行"的核心优势,以及开发环境的搭建要点,为Java初学者提供了清晰的技术指引。

2025-08-25 20:49:27 936

原创 Java学习笔记-Java 概述

本文介绍了Java语言的概述内容,主要包括Java的就业方向、应用场景、技术特点和开发工具。Java广泛应用于企业级系统、Android开发、大数据处理等领域,具有面向对象、健壮性和跨平台等核心特点。文章还简述了Java的诞生背景和技术体系平台,并推荐了常用的开发工具。该内容适合Java初学者了解Java语言的基本概况和应用前景,为后续学习奠定基础。

2025-08-25 19:35:45 643

空空如也

空空如也

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

TA关注的人

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