- 博客(48)
- 收藏
- 关注
原创 Spring MVC 对象转换器:初级开发者入门指南
Converter// 示例:将字符串 "yyyy-MM-dd" 转换为 Date 对象 public class StringToDateConverter implements Converter < String , Date > {try {throw new IllegalArgumentException("无效的日期格式,请使用 yyyy-MM-dd");} } }
2025-02-21 14:54:58
492
原创 MyBatis映射文件 <resultMap> 元素详解与示例
拓展阅读:MyBatis映射文件常用元素详解与示例MyBatis | XML 映射文件。
2025-02-13 22:09:53
1229
原创 MyBatis 缓存机制详解
MyBatis 的缓存机制通过减少数据库压力显著提升性能,但需权衡数据一致性与性能。合理配置一级与二级缓存,结合业务场景选择合适的策略,才能最大化发挥其优势。对于高频读写场景,建议通过代码设计(如延迟加载)或引入外部缓存系统进一步优化。拓展阅读深入理解 MyBatis 框架的核心对象:SqlSession。
2025-02-11 09:03:55
1093
原创 深入理解 MyBatis 框架的核心对象:SqlSession
SqlSession是 MyBatis 中用于执行 SQL 语句、获取映射器(Mapper)和管理事务的接口。它是 MyBatis 框架与数据库交互的核心对象。每个线程都应该有它自己的SqlSession实例,SqlSession的实例不是线程安全的,因此不能被共享。SqlSession是 MyBatis 框架中非常重要的对象,它负责执行 SQL 语句、获取映射器和管理事务。在使用SqlSession时,应该注意其线程安全性,并确保在使用完毕后及时关闭。通过合理使用SqlSession。
2025-02-11 08:34:59
883
原创 深入浅出Log4j2:从入门到实战应用指南
Log4j2是Apache基金会推出的新一代Java日志框架,作为Log4j 1.x和Logback的升级版本,它通过重新设计架构实现了显著的性能提升。根据Apache官方基准测试,异步日志性能比Log4j 1.x提升18倍,同步日志效率也提高了20倍以上。插件化架构:支持通过简单配置扩展Appender、Filter等组件异步日志记录:基于LMAX Disruptor库实现无锁高性能异步日志智能配置重载:支持运行时动态修改配置(无需重启应用)多API支持。
2025-02-08 20:19:22
1081
原创 Java反射机制:解锁Java编程的奥秘
反射是Java在运行时(Runtime)分析类结构、调用方法、访问字段的能力。例如,通过获取任意类的Class对象分析类的字段、方法、构造器创建对象实例(即使构造器私有)动态调用方法修改字段值(包括私有字段)// 示例:通过Class类的getName()方法获取类的全限定名,通过getFields()方法获取类的所有字段等。Class<?System.out.println("类的名称:" + clazz.getName());
2025-02-08 19:44:09
1178
原创 Spring 框架中的 Bean 及其生命周期详解
通过合理利用这些生命周期阶段,开发者可以更好地管理 Bean 的行为,理解生命周期有助于优化资源管理、实现扩展逻辑(如AOP),并避免常见陷阱(如循环依赖)。Spring容器负责创建、配置和管理这些Bean,所以Bean其实就是应用程序中的组件,比如服务层、数据访问层或者控制器之类的,都是通过Bean来组装的。比如,容器启动的时候,Bean被实例化,然后进行一些初始化,接着被使用,最后容器关闭时被销毁。这是 Bean 生命周期的第一步,Spring 容器通过反射机制创建 Bean 的实例。
2025-02-07 18:03:50
774
1
原创 MyBatis核心配置文件详解:从层级关系到实战配置
作用:处理 JDBC 类型与 Java 类型间的转换,例如日期格式、枚举类型。示例:自定义处理器:public class LocalDateTimeTypeHandler extends BaseTypeHandler<LocalDateTime> {// 实现类型转换逻辑</MyBatis 的配置文件通过层级化的结构,将数据源、事务、类型处理、SQL 映射等模块解耦,开发者只需按需配置即可快速集成。理解每个元素的作用及优先级,能够避免常见的配置错误,并灵活应对多环境、多数据库等复杂场景。附录。
2025-02-06 22:22:06
846
原创 Maven工程核心概念GAVP详解:从命名规范到项目协作的基石
GAVP是Maven项目的灵魂,它不仅规范了项目标识,还为依赖管理、多模块协作和版本控制提供了基础支持。正确理解并应用GAVP规则,能显著提升团队协作效率和项目可维护性。无论是命名规范还是版本策略,都需结合团队实际场景灵活调整,最终目标是实现“代码如诗,依赖如歌”的理想开发体验。
2025-02-03 16:28:19
1328
原创 使用 Python 爬取某网站简历模板(bs4/lxml+协程)
在本教程中,我们将学习如何使用 Python 来爬取站长素材网站上的简历模板。我们将使用requests和库来发送 HTTP 请求和解析 HTML 页面。本教程将分为两个部分:第一部分是使用的方法,第二部分是使用lxml的方法,并比较两者的差异。首先,确保你已经安装了 Python。
2024-12-09 10:10:51
783
原创 爬取某市KFC餐厅信息(POST请求+PYMYSQL)
本教程将指导您如何使用Python爬取石家庄市的KFC门店信息,并将这些信息存储到MySQL数据库中。我们将使用requests库来发送网络请求,pymysql库来操作MySQL数据库。我们需要定义请求的URL和参数。URL是KFC官网提供的API接口,用于获取门店信息。参数包括城市名称(cname)、页码(pageindex)和每页显示的门店数量(pagesize)。data = {'pid': '',请求头:在发送请求时,我们设置了User-Agent。
2024-12-08 17:04:59
1353
2
原创 构建 Java Web 应用程序:实现简单的增删查改(Mysql)
本教程将指导您如何使用Java Servlet和JSP技术构建一个简单的Web应用程序。该应用程序将包括用户注册、登录、注销(删除用户信息)、修改密码以及根据性别查询用户信息等功能。我们将使用MySQL数据库来存储用户数据。步骤 2: 创建项目和配置环境在IDE中创建一个新的Java Web项目。配置项目的构建路径,包括JDK和Servlet API库。步骤 3: 实现数据库连接在 中配置数据库连接参数。实现 方法,用于获取数据库连接。步骤 4: 实现业务逻辑用户注册:
2024-12-06 14:07:07
932
1
原创 基于Python的人脸识别(Python 3.12+face_recognition库)
在这个教程中,我们将学习如何使用Python和库来加载图像、提取人脸编码,并比较两个人脸是否相似。库是一个强大的工具,它基于dlib的深度学习模型,可以轻松实现人脸检测和识别功能。本教程适合初学者,我们将通过一个简单的项目来了解这个库的基本用法和环境配置。
2024-12-05 18:08:57
6277
10
原创 Python爬虫——城市数据分析与市场潜能计算(Pandas库)
本教程将指导您如何使用Python和Pandas库来处理城市数据,包括GDP、面积和城市间距离。我们将计算每个城市的市场潜能,这有助于了解各城市的经济影响力。
2024-12-03 22:38:33
1090
原创 Python爬虫——豆瓣电影TOP250榜单爬取,并使用网页解析方法及excel操作库将排名号、电影名,年份,国家,类型评分,一句话影评requests、BeautifulSoup、openpyxl
Python爬虫——豆瓣电影TOP250榜单爬取,并使用网页解析方法及excel操作库将排名号、电影名,年份,国家,类型评分,一句话影评requests、BeautifulSoup、openpyxl
2024-12-02 17:30:59
1088
原创 RedHat解决yum
如果自动无法正常链接网络,查看本机IP设置,如果本机连接的热点/WiFi 去找到连接的网络的名称 在桥接模式中找到对应的网络名称 并选择。2.进入Linux系统后使用终端命令窗口进行登录(此命令需要在root用户下进行)VM导航栏-编辑-虚拟网络编辑器-桥接模式(默认外部链接是自动)Red Hat Enterprise Linux 9 64 位。当我们登录时出现System Not Registered时。解决方案一:采用官方账号注册登录。1.在安装时选择登录账号。
2024-11-26 08:19:42
218
原创 构建 Java Web 应用程序:从 Servlet 到数据库交互(Eclipse使用JDBC连接Mysql数据库)
第 1 部分:环境设置安装 Java Development Kit (JDK):下载并安装 JDK。 设置 IDE:安装并配置 IDE(如 IntelliJ IDEA 或 Eclipse)。 安装数据库:下载并安装 MySQL 数据库。 配置数据库:创建数据库和用户,设置权限。 确保MySQL数据库服务正在运行。 使用数据库管理工具(如终端命令行或Navicat)测试连接。第 2 部分:创建 Web 应用程序项目创建新项目:在 IDE 中创建新的 Java Web 项目。 配置项目结
2024-11-22 23:23:39
1029
原创 JDBC JAVA连接数据库(黑马程序员)
把数据保存到可掉电式存储设备中以供之后使用。大多数情况下,特别是企业级应用,数据持久化意味着将内存中的数据保存到硬盘上加以”固化”,而持久化的实现过程大多通过各种关系数据库来完成。持久化的主要应用是将内存中的数据存储在关系型数据库中,当然也可以存储在磁盘文件、XML数据文件中。JDBC(Java Database Connectivity)是一个独立于特定数据库管理系统、通用的SQL数据库存取和操作的公共接口(一组API),定义了用来访问数据库的标准Java类库,()使用这些类库可以以一种标准。
2024-05-15 16:53:44
1803
1
原创 初识vue
举例:v-bind:href="xxx" 或 简写为 :href="xxx",xxx同样要写js表达式,备注:Vue中有很多的指令,且形式都是:v-?写法:{{xxx}},xxx是js表达式,且可以直接读取到data中的所有属性。6.{{xxx}}中的xxx要写js表达式,且xxx可以自动读取到data中的所有属性;2.root容器里的代码依然符合html规范,只不过混入了一些特殊的Vue语法;1.想让Vue工作,就必须创建一个Vue实例,且要传入一个配置对象;注意区分:js表达式 和 js代码(语句)
2023-07-31 22:11:53
102
原创 Java 数组
什么是数组?数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。数组中的概念数组名下标(或索引)元素数组的长度数组本身是引用数据类型,而数组中的元素可以是任何数据类型,包括基本数据类型和引用数据类型。创建数组对象会在内存中开辟一整块连续的空间。占据的空间的大小,取决于数组的长度和数组中元素的类型。数组中的元素在内存中是依次紧密排列的,有序的。数组,一旦初始化完成,其长度就是确定的。数组的。
2023-07-23 21:46:14
102
原创 Java 异常处理
在使用计算机语言进行项目开发的过程中,即使程序员把代码写得尽善尽美客户输入数据的格式问题读取文件是否存在网络是否始终保持通畅等等。异常:指的是程序在执行过程中,出现的非正常情况,如果不处理最终会导致JVM的非正常停止。异常指的并不是语法错误和逻辑错误。语法错了,编译不通过,不会产生字节码文件,根本不能运行。代码逻辑错误,只是没有得到想要的结果,例如:求a与b的和,你写成了a-b在编写程序时,经常要在可能出现错误的地方加上检测的代码,如进行x/y运算时,要检测分母为0数据为空输入的不是数据而是字符等。
2023-07-12 21:30:28
81
原创 Java 面向对象
在Java中,this关键字不算难理解,它的作用和其词义很接近。它在方法(准确的说是实例方法或非static的方法)内部使用,表示调用该方法的对象它在构造器内部使用,表示该构造器正在初始化的对象。this可以调用的结构:成员变量、方法和构造器在实例方法或构造器中,如果使用当前类的成员变量或成员方法可以在其前面添加this,增强程序的可读性。不过,通常我们都习惯省略this。但是,当形参与成员变量同名时,如果在方法内或构造器内需要使用成员变量,必须添加this来表明该变量是类的成员变量。
2023-07-09 22:34:13
92
原创 MySQL_变量、流程控制与游标
虽然我们也可以通过筛选条件 WHERE 和 HAVING,或者是限定返回记录的关键字 LIMIT 返回一条记录, 但是,却无法在结果集中像指针一样,向前定位一条记录、向后定位一条记录,或者是 随意定位到某一 条记录 ,并对记录的数据进行处理。这个时候,就可以用到游标。游标,提供了一种灵活的操作方式,让我们能够对结果集中的每一条记录 进行定位,并对指向的记录中的数据进行操作的数据结构。游标让 SQL 这种面向集合的语言有了面向过 程开发的能力。
2023-07-08 14:21:43
106
原创 JAVA 流程控制语句
流程控制语句是用来控制程序中各语句执行顺序的语句,可以把语句组合成能完成一定功能的小逻辑模块程序设计规定了三种流程结构程序从上到下逐行地执行,中间没有任何判断和跳转。根据条件,选择性地执行某段代码。有if-else和两种分支语句。根据循环条件,重复性的执行某段代码。有forwhiledo-while三种循环语句。补充:JDK5.0 提供了foreach循环,方便的遍历集合、数组元素。
2023-07-06 22:27:43
133
原创 软考 软件工程
1.初始级(Initial) 最低 软件过程不明确,项目完成靠个人。2.可重复级(Repeatable) 建立了基本的。CMM将软件过程改进为以下5个成熟度级别。5.优化级(Optimized) 最高。3.已定义级(Defined)4.已管理级(Managed)
2023-07-06 10:20:20
86
原创 JAVA 变量与运算符
变量名、方法名:当有多个单词的时候,第一个首字母是小写,其他的首字母都是大写(小驼峰)出了作用域,变量不可以再被调用。- 内存中的一个存储区域,该区域的数据可以在同一类型范围内不断变化。Java中变量、方法、类等要素命名时使用的字符序列,称为标识符。- 变量的作用域:其定义所在的一对{ }内。类名、接口名:有多个单词的时候,所有首字母都是大写(大驼峰)- 同一个作用域内,不能定义重名的变量。- 变量的构成包含三个要素:数据类型、变量名、储存的值。基本数据类型:包括整数类型、浮点数类型、字符类型、布尔类型。
2023-07-03 17:44:50
99
原创 JAVA语言概述
main()方法的格式是固定的 public static void main(String[] args)每一个字节码文件对应一个Java类,并且字节码文件名与类名相同。编译 针对 .java结尾的源文件进行编译操作 格式:java 源文件名.java。运行 针对于编译后生成的字节码文件,进行解释运行 格式java字节码文件名。字节码文件对应Java类进行解释运行的 要注意区分大小写!编写 将Java代码编写在 以 .Java结尾的源文件中。查看解释运行的类名、字节码文件路径是否书写错误。
2023-07-03 15:01:57
68
原创 C语言数据类型
关键字——int、short、long、unsigned、char、float、double、_Bool、_Complex、_Imaginary;
2023-07-01 14:15:42
72
原创 MySQL数据备份和还原
执行命令后,输入连接数据库的密码,输入密码后,即可完成数据库的备份。mysqldump -u root -p 数据库名称>保存路径。在数据备份完成以后,可以在相应路径下找到文件。
2023-06-09 10:45:32
120
原创 MySQL视图和触发器
1)or replace:可选项,用于指定 or replace 子句。该语句用于替换数据库中已有的同名视图,但需要在该视图上具有DROP权限。2)algorithm 子句:这个可选的algoruthm子句是MySQL对标注SQL的拓展。与包含数据的表不一样,视图只包含使用时动态检索数据的查询。使用create view语句来创建视图语法格式如下。关于视图创建和使用的一些最常见的规则和限制。视图是用于创建动态表的静态定义。
2023-05-26 17:44:51
173
Python爬虫-城市数据分析与市场潜能计算所需文件-283地级市的欧氏距离.xlsx
2024-12-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人