自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 synchronized和ThreadLocal的区别

和是 Java 中用于处理多线程并发的两种机制,它们有不同的作用和影响。

2024-02-18 10:35:48 519

原创 Springboot中的全局异常与局部异常处理

如果异常被 try-catch 语句捕获,那么全局异常处理器不会介入。如果异常没有被 try-catch 语句捕获,那么全局异常处理器会接管异常的处理。try-catch 语句优先于全局异常处理器。

2024-02-18 10:27:57 525

原创 全局异常处理器简单使用

全局异常处理器允许我们统一处理这些异常,而不是在每个地方都去处理它们,会省去大部分。:通过全局异常处理器,我们可以提供友好的错误信息给用户,而不是让他们看到一堆堆栈跟踪信息。最后,在我们的 Controller 类中,当用户请求一个不存在的商品时抛出。:通过集中处理异常,可以使代码更加清晰易懂,减少重复的异常处理代码。异常,并返回一个包含友好错误信息的响应,让用户知道该商品不存在。在异常处理方法中编写处理异常的逻辑,可以返回自定义的错误信息。现在,当用户访问一个不存在的商品时,全局异常处理器会捕获到。

2024-02-16 18:38:21 447

原创 MyBatis-Plus快速入门

接口,无需写具体的 SQL 语句,MyBatis-Plus 会自动生成。以上是一个简单的 MyBatis-Plus 的使用例子。下面是一个使用 MyBatis-Plus 的基本例子。在这个例子中,使用了 Lombok 注解。类,实现了基本的增删改查方法。简化了实体类的编写,

2024-01-16 17:55:01 380

原创 SpringMVC中拦截器的简单使用

现在,当我们访问 “/secured/hello” 路径时,拦截器的逻辑将会执行。接下来,让我们创建一个简单的Controller,以及一个包含拦截逻辑的方法。这个接口定义了三个方法,分别在请求处理前、请求处理后和视图渲染后执行。首先,我们需要创建一个拦截器类,该类需要实现。注解,表示这是一个配置类。注册为一个Bean,并在。方法中配置拦截器的路径。

2024-01-14 18:11:53 486

原创 Spring MVC中@Controller和@RestController的区别

用于定义 RESTful 风格的控制器。其方法的返回值会直接写入 HTTP 响应体,而不是通过视图解析器解析为视图。处理用户请求,返回视图名称,然后由视图解析器解析为实际视图。而在构建 RESTful API 的场景中,使用。用于定义一个传统的 Spring MVC 控制器,它的方法通常返回视图名称或。直接返回数据,通常以 JSON 或 XML 格式。对象,由视图解析器解析并渲染成 HTML 页面。在构建 Web 页面的场景中,使用。

2024-01-14 17:55:24 608

原创 Spring Boot快速入门:构建你的第一个Web应用程序

Spring Boot 是一个用于编写Java应用程序的框架,旨在简化开发过程并提高开发效率。它解决了许多在传统Java开发中常见的问题。

2023-10-10 22:15:41 98

原创 sql映射文件中#{}和${}两者之间有什么区别

在MyBatis的SQL映射文件中,#{} 和 ${} 是两种用于插入变量值的方式。

2023-09-24 13:12:21 430

原创 Ajax的post和get请求

请求代码区别在哪里,只是前端代码部分有区别,后端部分没有区别,前者的请求包含在请求体中,服务器需要知道请求体的数据类型,如果不设置正确的。,服务器可能无法正确地解析请求体中的数据。

2023-09-21 09:24:12 75

原创 切入点表达式

这个切点表达式的含义是,选择com.spring.AOP.UserDaoIml类中的add方法,并且不关心方法的参数。1. 访问修饰符模式(可选): 用于指定连接点的访问修饰符,比如 public、private 等。切点表达式是在 AOP 中用来定义哪些连接点应该被切面的通知影响的一种方式。3. 类名模式: 用于指定类的全限定名,可以使用通配符。4. 方法名模式: 用于指定方法的名称,可以使用通配符。2. 返回类型模式(可选): 用于匹配方法的返回类型。

2023-08-23 21:52:05 71

原创 @Qualifier的使用

假设你正在开发一个餐厅管理系统,你有多种类型的食物,比如 pizza、burger、salad 等,还有多种配送方式,比如 bike、car、drone 等。当应用中存在多个类型相同的 Bean 并且需要注入其中特定的 Bean 时,可以使用 @Qualifier注解来指定要注入的具体 Bean。通过构造函数的参数上的 @Qualifier 注解,我们明确指定了要注入的食物和配送方式 Bean。

2023-08-22 21:21:57 774

原创 XML自动装配

在自动装配中,Spring容器会根据配置和Bean的依赖关系,自动将Bean装配在一起。有两种常见自动装配的方式:按类型自动装配(byType)、按名称自动装配(byName)。在上述示例中,car Bean 被定义为一个 Car 类的实例,driver Bean 被定义为一个 Driver 类的实例,同时将 car 作为依赖注入到 driver。在上述示例中,driver Bean 被自动装配,Spring容器会根据类型自动找到 car Bean 并注入到 driver 中。

2023-08-18 14:21:05 46

原创 Spring框架的Bean生命周期

以下是一个使用Spring框架的Bean生命周期的简单示例,其中展示了各个生命周期阶段的回调方法。2. 设置name属性:"John Doe"3. 自定义初始化方法被调用。5. 自定义销毁方法被调用。1. 构造函数被调用。

2023-08-18 14:03:02 22

原创 Spring中如何设置创建的bean对象是单实例还是多实例

在 Spring 中,你可以通过配置来指定是否创建单例(Singleton)或多实例(Prototype)的 Bean。默认情况下,Spring 创建的 Bean 是单例的,但你也可以显式地设置为多实例。

2023-08-17 15:23:58 551

原创 工厂Bean

Spring有两种类型Bean,一种是普通Bean,另一种为工厂Bean。

2023-08-17 14:34:04 110

原创 基于XML配置文件对Bean的管理操作

在配置文件中,使用。

2023-08-16 10:22:46 42

原创 Session会话

会话是指在服务器端存储用户数据的一种机制,用于跟踪用户在网站上的活动和状态。会话允许服务器在用户访问不同页面或发起多次请求时保持用户特定的数据,以便为用户提供个性化的体验。

2023-08-09 11:17:14 76

原创 Cookie快速入门

它会在每次向服务器发起请求时将相应的Cookie信息包括在请求头中一并发送给服务器。服务器会读取这些Cookie,以识别用户、维护会话状态和提供个性化的服务。每个cookie的大小通常不超过4kb在Java中,你可以使用Servlet来修改已经存在的Cookie。以下是两种修改Cookie的方法示例代码:方法一:直接替换Cookie方法二:创建新的CookiesetMaxAge方法是用于设置Cookie的过期时间的方法。它是Cookie类的一个方法,可用于在Java中操作和控制Cookie的生命周期。

2023-08-08 11:24:16 31

原创 重定向与请求转发的区别

重定向是通过HTTP响应头部发送特定的状态码(如301或302)和新的URL,告知客户端发起新的请求到该URL。客户端收到重定向响应后,会自动向新的URL发起新的请求,从而显示新的页面或资源。请求转发是在服务器内部进行的,服务器将客户端的请求转发到另一个资源或Servlet处理。而在请求转发中,由于是在服务器内部进行的转发,原始请求的数据可以直接在转发的目标资源中使用,无需额外的数据传递。虽然它们都用于实现页面导航和资源交互,但在实现上有明显的区别,适用于不同的场景和需求。

2023-08-05 19:47:54 223

原创 如何在静态方法中使用泛型

在Java中,静态方法不能直接使用类的泛型参数(Type Parameters),因为泛型是与类实例相关的,而静态方法不依赖于类的实例。但是,我们可以在静态方法上使用自己的泛型参数,使得该静态方法可以使用泛型。要在静态方法中使用泛型,可以在方法上声明自己的泛型参数,与类的泛型参数无关。这样,该静态方法可以独立地使用自己的泛型类型。请注意,静态方法中的泛型参数在调用时会自动推断类型,所以可以在调用时省略类型参数。的实例,使用类的泛型参数。,使用静态方法的泛型参数。上使用了自己的泛型参数。

2023-08-03 21:35:20 3021

原创 文件的上传与下载

当涉及到文件上传时,通常会使用Apache Commons FileUpload库来处理Multipart/form-data类型的请求,它能够更方便地解析上传的文件和表单数据。以下是使用JSP和Servlet实现文件上传和下载的步骤,同时使用commons-fileupload.jar库进行解析。

2023-08-03 09:33:54 106

原创 简介:JSTL标签库及核心库常见标签与使用示例

简称为JSTL,是用于JavaServer Pages(JSP)的标签库,提供了一组自定义标签,用于简化在JSP页面中执行常见的任务,如条件判断、循环、格式化输出等。●scope:设置的变量的保存位置(即作用域,如果未设置 标签的 scope 属性,则默认情况下,变量会被存储在 page 作用域中。4. , , :用于执行多个条件判断,类似于Java中的switch语句。●var:设置变量的名称,用于后续在页面中引用该变量。

2023-07-31 10:40:33 447 2

原创 EL表达式(还算详细)

EL 表达式是 Expression Language 的缩写,全称为 "Expression Language"。它是一种用于在Java Web应用中访问和操作数据的简化表达式语言。EL 表达式最初是为(JSP)开发的,但后来也被广泛应用于其他基于Java的Web框架。

2023-07-30 10:33:14 2915 1

原创 JSP中的页面转发标签(Forward)

JSP页面转发是一种在服务器端完成的页面跳转方式,对客户端浏览器是透明的,即浏览器的URL地址不会改变。它通过 <jsp:forward> 标签指定转发的目标地址,并将请求转发到该地址。转发使得目标页面能够访问原始请求中的数据(例如请求参数、属性等),并且可以在目标页面中处理数据后生成响应。

2023-07-29 09:53:51 2265

原创 JSP入门指南:了解JSP的基本概念与应用

JSP(JavaServer Pages)是一种用于开发动态Web应用程序的技术,它允许在HTML页面中嵌入Java代码,从而实现在服务器端动态生成内容。JSP是一种模板技术,它将Java代码嵌入到HTML页面中,使得开发人员可以更方便地创建动态的Web页面。引入JSP的主要目的是为了简化Web应用程序的开发过程,并实现动态内容的展示。使用JSP可以将Java代码和HTML代码组合在一起,而不需要手动拼接字符串,使得代码更加易读、易维护。

2023-07-28 12:45:06 5482 1

原创 深入理解HTTP协议:请求和响应详解及MIME类型说明

HTTP(Hypertext Transfer Protocol)是Web浏览器和Web服务器之间传输数据的协议,在互联网上应用最广泛。本文将深入探讨HTTP协议的基本概念,并通过生活中的例子详细说明HTTP请求和响应的内容,同时介绍常见的MIME类型及其作用。

2023-07-23 20:22:18 785 1

原创 Java Servlet入门指南:创建和实现自定义Servlet

Servlet是运行在服务器上的Java小程序,是JavaWeb三大组件之一,用于处理客户端的HTTP请求并响应数据给客户端。在Java中,Servlet通常继承自类,它提供了处理HTTP请求的一系列方法,如doGet()doPost()等。

2023-07-23 14:24:28 1052 1

原创 【XML简介】

DOM4J是一个流行的Java XML解析库,它提供了简单而强大的API来处理XML文档。// 创建 SAXReader 解析器try {// 加载 XML 文档// 创建 XPath 对象// 执行 XPath 查询// 处理查询结果上述示例中,我们使用DOM4J创建了一个SAXReader对象,然后使用该对象加载XML文档。通过操作Document对象,我们可以对XML文档进行读取、修改、处理等操作。在第二个示例中,我们还演示了如何使用XPath表达式来查询XML数据。

2023-07-18 13:32:51 83 1

原创 jQuery和js的页面加载后触发事件有什么区别

JavaScript 的 window.onload:这是 JavaScript 提供的事件,表示整个页面(包括资源如图片等)都已经加载完成后执行相应的处理程序。因此,在使用 window.onload 时,可能需要等待更长的时间来执行操作。$(document).ready() 事件在 DOM 加载完成后立即触发,无需等待其他资源完成加载,适合处理 DOM 相关操作。window.onload 事件表示整个页面及其资源都已加载完毕后触发,适合处理需要等待所有资源加载完成后的操作。

2023-07-17 15:45:51 387 1

原创 $(“MyElement“).click(自定义函数名 )和$(“MyElement“).click(自定义函数名 () )有什么区别(jQuery调用函数)

("MyElement").click(自定义函数名()) 则是将 自定义函数名() 的返回值作为参数传递给 .click() 方法。$("MyElement").click(自定义函数名) 是将一个自定义函数名作为参数传递给 .click() 方法,表示当 <MyElement> 元素被点击时,调用该指定名称的函数。在代码中,$("MyElement").click(自定义函数名) 和 $("MyElement").click(自定义函数名()) 是一对括号的区别。

2023-07-17 12:47:34 53 1

原创 jQuery对Dom元素的增删改操作常用方法

toggleClass():在元素上添加/移除一个类名。prepend():将元素添加到目标元素的开头。html():设置或获取元素的 HTML 内容。addClass():为元素添加一个或多个类名。append():将元素添加到目标元素的末尾。remove():删除目标元素及其子元素。before():在目标元素前添加元素。text():设置或获取元素的文本内容。after():在目标元素后添加元素。empty():清空目标元素的子元素。attr():设置或获取元素的属性值。

2023-07-16 20:05:13 635 1

原创 jQuery 对象和 DOM 对象的些区别和和如何对他们进行区分

使用方法:jQuery 对象和 DOM 对象之间可以相互转换,可以通过 [0] 索引或 get() 方法从 jQuery 对象中获取 DOM 对象,也可以使用 $() 函数将 DOM 对象封装成 jQuery 对象。定义:jQuery 对象是一个由 jQuery 函数($)返回的特殊对象,它是对匹配的 DOM 元素集合进行操作的工具。在 jQuery 中,有两种常见的对象:jQuery 对象和 DOM 对象。它们之间有一些区别和区分。DOM 对象具有原生的属性和方法,可以操作元素的内容、样式、事件等。

2023-07-15 20:08:50 256 1

原创 jQuery核心函数

(document.getElementById("myElement")):将 ID 为 "myElement" 的元素转换为 jQuery 对象。1. 选择器字符串:当传入一个选择器字符串时,$() 函数将会返回与该选择器匹配的元素的 jQuery 对象。$("#myElement"):选取 ID 为 "myElement" 的元素并返回 jQuery 对象。$(".myClass"):选取 class 为 "myClass" 的元素并返回 jQuery 对象。

2023-07-15 19:54:42 170 1

原创 一个基于数组的简单队列 ArrayQueue

以上代码实现的队列是一个简单实现,没有考虑到动态扩容或缩容的情况。在实际应用中,可能需要根据具体需求对队列进行更加完善的设计和实现。

2023-07-10 09:59:37 64 1

原创 Java中的 switch case 语句和其常用关键字的使用示例

根据 option 的值,switch 语句将会执行相应的代码块。需要注意的是,在每个 case 的代码块末尾要加上 break 语句,以防止其他 case 的代码被执行。- 在 switch/case 语句中,每个 case 的代码块结尾都需要加上 break,以防止执行其他 case 的代码。这是一个简单的 switch/case 语句的示例,你可以根据实际需求在不同的 case 中编写适当的代码块。- break 关键字用于跳出 switch 语句或循环语句,终止当前的代码块的执行。

2023-07-08 13:06:06 3152 1

原创 instanceof 关键字的作用

中的一个双目运算符,用来测试一个对象是否为一个类的实例,用法。确定类型,则通过编译,具体看运行时定。或间接子类,或者是其接口的实现类,结果。类型,如果不能转换则直接报错。表示一个类或者一个接口,当。的对象,或者是其直接。

2023-06-15 17:36:18 134 1

原创 Java继承快速入门(注意事项)

然后我们定义了子类 Student,它通过继承 Person 类,增加了一个字段 grade 和一个公有方法 study,用于返回学生的年级和学习任务。这样,在使用子类 Student 时,既可以利用 Person 类的 getInfo 方法获取基本信息,又能直接调用子类 Student 的 study 方法获取学生信息。然后定义一个子类 Student,它通过继承 Person 类,增加了一个字段 grade 和一个公有方法 study,用于返回学生的年级和学习任务。,从而实现更加具体和完善的功能。

2023-06-13 19:20:31 74 1

原创 内连接(sql)

上述语句将 orders 表和 customers 表基于 customer_id 列进行等值连接,返回订单号、客户名称和订单日期。上述语句将 products 表和 suppliers 表基于 supplier_id 列进行非等值连接,返回产品名称和供应商名称。上述语句将 employees 表自连接,基于 manager_id 列进行等值连接,返回员工姓名和经理姓名。其中,t1 和 t2 为同一张表的别名(起别名可以用as关键字,或者用空格隔开)。等值连接的语法格式为:(sql99语法)

2023-06-12 12:56:48 1337

原创 Java中的方法重写

而当执行b.move()时,由于b是一个Dog对象,并且Dog类重写了move方法,因此会执行Dog类的move方法,输出"狗可以跑和走"。需要注意的是,在重写方法时,访问修饰符不能比被重写方法更严格,如被重写方法是public,则重写方法可以是public或protected;- 访问修饰符:重写方法的访问修饰符不能比被重写方法更严格,如被重写方法是public,则重写方法可以是public或protected。- 方法名和参数列表:重写方法的方法名和参数列表必须与被重写方法相同。

2023-06-11 11:18:22 602 1

原创 Java重载(注意要点)

在上面的例子中,我们定义了三个名为sum的方法,它们的参数列表分别为(int,int),(double,double)和(int,int,int)。每个方法的功能都是计算两个或三个数字的和。通常来说,重载的意义在于提供多种不同的方式进行操作,比如sum方法的重载版本可以接收不同类型的数据,能够适用于不同的场景,使程序更加灵活。Java中的重载(Overload)是指在同一个类中定义多个具有相同方法名但参数不同的方法,它们可以拥有不同的返回值类型,,与方法的访问修饰符、返回值类型和方法的异常类型无关。

2023-06-10 14:47:17 659 1

空空如也

空空如也

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

TA关注的人

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