- 博客(16)
- 收藏
- 关注
原创 ResultSet解析和常见异常
ResultSet是 JDBC 执行查询语句(如 SELECT)后,数据库返回的结果集合,它代表了一组“行”数据,你可以逐行读取查询出来的字段值。简单来说:🎯ResultSet 就是你执行 SELECT 查询后,数据库返回的“表格数据”,你可以按行按列读取其中的内容。主题关键点ResultSet 是什么?JDBC 查询(SELECT)后返回的结果集,代表数据库返回的“表”如何解析?使用rs.next()遍历,getInt()等方法按列读取列索引从几开始?从 1 开始,不是 0推荐使用列名还是索引?
2025-08-19 21:17:16
1003
原创 封装DBUtil
功能是否包含在基础 DBUtil说明获取数据库连接✅封装执行增删改(DML)✅执行查询(DQL)❌(可扩展)可返回 ResultSet 或对象列表自动关闭资源✅使用 PreparedStatement✅防止 SQL 注入事务控制❌(可扩展)可增加 begin/commit/rollback 方法连接池支持❌(可扩展)推荐整合 HikariCP / Druid。
2025-08-19 21:16:27
721
原创 JDBC,Druid和Hikal连接池
能力说明JDBC 是什么Java 标准数据库连接 API作用连接数据库,执行 SQL,处理结果核心类ConnectionStatementResultSet推荐做法使用、try-with-resources、连接池适用场景原生 JDBC 适合小型项目,大型项目建议用 MyBatis / Hibernate在 Java 应用中,每次访问数据库都需要建立一个数据库连接(Connection),这个过程是比较耗时的(网络握手、身份验证等)。如果每次都新建连接,性能会很差;
2025-08-18 22:01:29
1045
原创 原型模式(java)
原型模式是一种通过复制现有对象来创建新对象的设计模式,避免了重复初始化的开销。它通过Cloneable接口和clone()方法实现,分为浅拷贝(仅复制引用)和深拷贝(递归复制对象)两种方式。浅拷贝简单但可能导致对象共享问题,深拷贝更安全但实现复杂,可通过手动clone()或序列化实现。该模式适用于对象创建成本高、需要动态配置或避免重复创建的场景,如数据库查询、游戏角色克隆等。优点是减少初始化开销,缺点是深拷贝实现较复杂。使用时需根据需求选择拷贝方式,权衡性能与安全性。
2025-07-31 10:16:05
548
原创 单例模式(java)
缺点:能够被反射破坏(在构造方法里面抛出异常,可以解决,但是这样做代码的可读性将再次变差,不在优雅)把内存中对象的状态转换为字节码的形式,把字节码通过io输出流,写到磁盘上。优点:写法优雅,利用了JAVA本身语法特点,性能高,避免了内存浪费。缺点:和饿汉式一样,有些情况下,内存浪费,不适合在大批量的情况。如果要扩展单例对象,只有修改代码,没有其他途径。缺点:在某些情况下,可能会造成内存的浪费,优点:执行效率高,性能高,没有任何的锁。缺点:代码的可读性降低了,不够优雅。优点:性能高了,线程安全了。
2025-07-31 10:14:31
203
原创 反射(Reflection)和注解(Annotation)
Java反射机制允许程序在运行时动态获取类信息并操作对象,包括创建实例、调用方法和访问字段。其核心是Class类,通过反射可实现动态加载类、调用私有成员等功能,广泛应用于框架开发(如Spring)、动态代理和注解处理。但反射存在性能开销和安全风险,可能破坏封装性。单例模式可通过构造方法检查或枚举类型防止反射攻击。注解是Java的元数据机制,用于提供程序元素的额外信息,分为内置注解、元注解和自定义注解,可通过反射读取处理。注解在Spring、JUnit等框架中广泛应用,支持编译检查、代码生成和运行时处理。
2025-07-15 22:06:58
2080
原创 计算机网络基础
计算机网络基础与Java Socket编程 计算机网络是通过通信线路将分布在不同地理区域的计算机互连,实现资源共享和信息传递的系统。其核心是网络通信协议,如广泛使用的TCP/IP协议,它通过三次握手建立可靠连接,并通过四次挥手断开连接。IP地址作为网络设备的唯一标识,分为A、B、C、D、E五类,IPv6则解决了IPv4地址耗尽问题。 Java通过Socket和ServerSocket类实现网络通信: 服务器端使用ServerSocket监听端口,通过accept()接收客户端连接 客户端通过Socket指定
2025-07-15 22:03:10
2030
原创 MySQL
MySQL是一款开源的关系型数据库管理系统,具有高性能、可靠性和易用性。本文介绍了MySQL的基本概念、安装配置方法、常用SQL语句(创建数据库、表,增删改查操作),以及用户权限管理、性能优化(索引、慢查询)、数据备份恢复等关键功能。还涵盖主从复制、高可用方案,以及与PHP/Python/Java的连接方式。最后提供了常见问题排查方法,包括启动失败、连接问题和数据恢复等。
2025-07-08 22:18:12
433
原创 多线程(java)
Java多线程编程指南摘要: Java作为主流开发平台,其多线程机制能有效提高CPU利用率。本文介绍了线程的三种创建方式:继承Thread类、实现Runnable接口(推荐)、实现Callable接口(支持返回值),重点对比了各自优缺点。同时讲解了线程生命周期、线程同步方案(synchronized和Lock)、线程安全问题及解决方案,并推荐使用线程池(ExecutorService)进行高效线程管理。文章还涉及线程池参数配置、Fork/Join框架等高级应用,最后总结了多线程最佳实践和常见问题(如死锁、活
2025-07-06 22:01:35
909
原创 IO流(java)
Java IO流是处理输入输出操作的核心机制,分为字节流(InputStream/OutputStream)和字符流(Reader/Writer),按方向又分为输入流和输出流。其主要功能包括文件读写、网络通信和内存数据传输等。IO流通过抽象类提供统一接口,支持缓冲机制提高效率,并自动处理字符编码。常用类有FileInputStream、BufferedReader等,Java7引入的try-with-resources语法可自动关闭资源。此外,NIO提供了更高效的IO操作方式,如非阻塞IO和内存映射文件。I
2025-07-03 20:52:32
931
原创 集合框架(JCF)
Java集合框架(JCF)是Java提供的用于存储和操作对象集合的统一架构,包含接口、实现类、算法和迭代器四大组成部分。核心接口包括Collection(List/Set/Queue)和Map,提供ArrayList、LinkedList、HashSet、TreeMap等多种高效实现类。框架设计强调统一性、可扩展性和类型安全,支持泛型和多线程操作。通过Collections和Arrays工具类提供排序、查找等算法功能。JCF简化了开发过程,提高了代码复用性和可维护性,是Java编程中数据处理的重要工具。
2025-07-02 22:38:24
1927
原创 常用工具类,正则和枚举以及异常
用途正则表达式模式说明用户名3-16字符,包含字母数字-_强密码^(?=.*[A-Z])(?=.*[a-z])(?=.*\\d)(?至少8字符,包含大小写字母、数字和特殊字符IPv4地址基本IPv4格式验证URL^(https?:\\/\\/)?HTTP/HTTPS URL验证中文纯中文字符身份证号(15或18位)`^(\d{15}基础枚举示例MONDAY,TUESDAY,WEDNESDAY,THURSDAY,FRIDAY,SATURDAY,SUNDAY。
2025-07-01 22:03:56
760
原创 面向对象(JAVA)
(Object-Oriented,简称OO)是一种编程范式(Programming Paradigm),其核心思想是将现实世界的事物抽象为程序中的“对 象”, 通过封装、继承、多态等特性来设计和组织代码。面向对象编程(OOP)以对象为基本单元,每个对象都包含:数据(属性):描述对象的特征(列:小狗的颜色,性别,年龄)行为(方法):对象执行的操作(列:小狗在吃屎,吃完后趴下睡觉)//小狗的颜色//性别int avg;//年龄//构造方法的有参和无参// 方法(行为)
2025-06-30 21:19:04
880
原创 JAVA的基础知识
表达式(Expression):是由变量、常量、运算符组成,并能计算出结果的代码片段。字符集就是一套字符和数字编码之间的对应表,比如:字符编码(十进制)A65B66a97中计算机只能处理数字,所以字符必须转换为数字才能存储和处理,字符集就定义了这种转换方式。字符集定义了字符与数字之间的映射规则,Java 使用 Unicode 编码,能支持多语言字符。✅ASCII 完整表(十进制、十六进制、字符 含义)
2025-06-29 23:01:46
1036
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅