分类 JAVA 下的文章

2024-09-27
发布
MyBatis-PlusMyBatis-Plus 是 MyBatis 的增强工具,可以简化开发过程,提供 CRUD 操作和其他常用功能的实现。MyBatis-Plus 极大地简化了 MyBatis 的使用,提供了丰富的功能和便利的操作。引入依赖在 pom.xml 中添加 MyBatis-Plus 的依赖:<dependency> <groupId>com.ba...
继续浏览
2024-09-11
发布
MyBatis一个优秀的持久层(Persistence Layer)框架,支持自定义 SQL、存储过程及高级映射。它主要用于 Java 应用程序中简化对数据库的操作。轻量级:MyBatis 比较轻量,核心功能集中在 SQL 映射上,不会强制要求全自动化的 ORM(Object Relational Mapping)。可控性:程序员可以完全掌控 SQL 的执行,适合需要定制复杂 SQL 语句的...
继续浏览
2024-09-10
发布
RESTful 规范的 CRUD 操作符合 REST 架构风格的 API,能够使服务具有良好的可扩展性和松耦合性。RESTful API 的核心概念包括资源、URI(统一资源标识符)、无状态性,以及使用标准的 HTTP 方法来对资源进行操作。HTTP 方法在 RESTful API 中用于定义资源操作:GET 用于获取资源数据,不会对服务器端的数据造成任何修改。示例:GET /api/use...
继续浏览
2024-09-08
发布
开发模式前后端不分离视图层由服务端渲染前后端分离视图层由用户端渲染HelloWorldpackage xin.links.framework.springmvc.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.Reques...
继续浏览
2024-09-08
发布
声明式事务是Spring框架提供的一种管理事务的方式允许在不修改业务代码的情况下,通过注解或XML配置来管理事务。【声明式】VS【编程式】声明式:通过注解等方式,告诉框架,我要做什么,框架会帮我做什么。优点:代码量小。缺点:封装太多。排错不容易编程式:通过代码的方式,告诉框架,我要做什么,需要自己写代码实现。优点:排错容易缺点:代码量多操作数据库1、导入包:spring-boot-start...
继续浏览
2024-09-06
发布
Spring AOPSpring AOP使用动态代理来创建代理对象,并在代理对象上织入横切关注点横切关注点通常指与业务逻辑无关,需要在多个地方重复出现,如日志记录、事务管理、安全检查等核心概念包括切面(Aspect)、连接点(Join Point)、通知(Advice)和切入点(Pointcut)。切面(Aspect):切面是横切关注点的模块化,它包含了通知和切入点。连接点(Join Poi...
继续浏览
2024-09-06
发布
IOC(Inversion of Control,控制反转)控制反转 是一种设计原则,旨在将对象创建和依赖管理的控制权从应用程序代码中转移到外部容器或框架中。换句话说,应用程序不再负责创建和管理依赖,而是将这些职责交给外部的容器或框架。DI(Dependency Injection,依赖注入)依赖注入 是实现控制反转的一种方式,表示对象所依赖的其他对象(依赖)是由外部注入的,而不是自己创建的...
继续浏览
2024-08-31
发布
MVC(Model-View-Controller)是一种常见的设计模式,用于构建结构化、模块化的应用程序。MVC 模型通过将程序分为三层:模型(Model)、视图(View)和控制器(Controller),来实现职责的分离。以一个“餐饮”的例子来解释 MVC。1. Model:(类比厨房)模型(Model)是核心逻辑层,负责处理数据和业务逻辑。在我们的餐饮店例子中,模型就像厨房里的厨师。...
继续浏览
2024-08-17
发布
1. Collection 接口Collection 是 Java 集合框架的根接口,定义了集合操作的一般方法。方法boolean add(E e) 将指定元素添加到集合中。boolean addAll(Collection<? extends E> c) 将指定集合中的所有元素添加到当前集合中。void clear() 移除集合中的所有元素。boolean contain...
继续浏览
2024-08-11
发布
反射和注解javalang.Class类Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。要想解剖一个类,必须先要获取到该类的Class对象。而剖析一个类或用反射解决具体的问题就是使用相关API(1)java.lang.Class(2)...
继续浏览
2024-08-10
发布
网络编程软件结构C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、红蜘蛛、飞秋等软件。B/S结构 :全称为Browser/Server结构,是指浏览器和服务器结构。常见浏览器有IE、谷歌、火狐等。两种架构各有优势,但是无论哪种架构,都离不开网络的支持。网络编程,就是在一定的协议下,实现两台计算机之间正确通信的程序。InetAddress类InetAd...
继续浏览
2024-08-09
发布
java.io.File类File类是java.io包下代表与平台无关的文件和目录,也就是说如果希望在程序中操作文件和目录都可以通过File类来完成,File类能新建、删除、重命名文件和目录。构造方法序号方法描述1public File(String pathname)通过将给定的路径名字符串转换为抽象路径名来创建新的 File实例。2public File(String parent, S...
继续浏览
2024-08-09
发布
线程的创建与启动java虚拟机是支持多线程的,当运行Java程序时,至少已经有一个线程了,那就是main线程。如何创建和启动一个新的线程:继承Thread类Java中java.lang.Thread是表示线程的类,每个Thread类或其子类的实例代表一个线程对象。通过继承Thread类来创建并启动多线程的步骤:定义Thread类的子类,并重写该类的run()方法,该run()方法的方法体就代...
继续浏览
2024-08-09
发布
什么是 Lambda 表达式?Lambda 表达式是 Java 8 引入的一种新特性,它是一种简洁的表示能够传递的代码块。Lambda 表达式可以表示一个函数接口的实现。函数接口是只包含一个抽象方法的接口,例如 Runnable、Comparator 或 Java 8 引入的 java.util.function 包中的接口。Lambda 表达式的语法(parameters) -> e...
继续浏览
2024-08-09
发布
泛型的基本操作泛型定义泛型即“参数化类型”,就是将具体的类型变成参数化类型。在声明一个泛型时,传递的是一个类型形参(Type Parameter),在调用时传递的是一个类型实参(Type Argument)。 参考形式参数泛型的好处示例代码:JavaBean:圆类型class Circle{ private double radius; public Circle(doub...
继续浏览
2024-08-09
发布
Java集合框架Java集合框架是一组在java.util包中定义的类和接口,用于管理和存储数据集合。ListList是一个有序集合,可以包含重复的元素。常用实现ArrayList:基于动态数组,提供快速随机访问。LinkedList:基于链表,提供快速插入和删除操作。用法示例List<String> list = new ArrayList<>(); list.ad...
继续浏览
2024-08-08
发布
常用API常用的API,StringBuilder、StringBuffer的API是完全一致的(1)StringBuffer append(xx):拼接,追加(2)StringBuffer insert(int index, xx):在[index]位置插入xx(3)StringBuffer delete(int start, int end):删除[start,end)之间字符Strin...
继续浏览
2024-08-08
发布
Throwable结构Error:严重错误Error,无法人为处理的错误。例如: StackOverflowError、OutOfMemoryError。Exception:表示异常,其它因编程错误或偶然的外在因素导致的一般性问题。例如:空指针访问、试图读取不存在的文件、网络连接中断、数组角标越界Throwable中的常用方法:public void printStackTrace():打印...
继续浏览
2024-08-07
发布
经典接口介绍java.lang.Comparable我们知道基本数据类型的数据(除boolean类型外)需要比较大小的话,之间使用比较运算符即可,但是引用数据类型是不能直接使用比较运算符来比较大小的。那么,如何解决这个问题呢?Java给所有引用数据类型的大小比较,指定了一个标准接口,就是java.lang.Comparable接口:package java.lang; public int...
继续浏览
2024-08-06
发布
数组多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理。​存储相同类型数据的有序集合.数组中的概念数组名下标(或索引)元素数组的长度数组的特点:数组本身是引用数据类型,而数组中的元素可以是任何数据类型。创建数组对象会在内存中开辟一整块连续的空间。占据的空间的大小,取决于数组长度和其中元素的类型。数组中的元素在内存中是依次紧密排列的,有序的。数组,...
继续浏览
2024-08-05
发布
枚举类型本质上也是一种类,只不过是这个类的对象是有限的、固定的几个,不能让用户随意创建,它继承的是 java.lang.Enum类😀 枚举类的实现– 在 JDK5.0 之前需要程序员自定义枚举类型。私有化类的构造器,保证不能在类的外部创建其对象在类的内部创建枚举类的实例。声明为:public static final ,对外暴露这些常量对象对象如果有实例变量,应该声明为 private fi...
继续浏览
2024-08-04
发布
什么是内部类?将一个类A定义在另一个类B里面,里面的那个类A就称为内部类,B则称为外部类。为什么要声明内部类呢?遵循高内聚低耦合的面向对象开发总原则。便于代码维护和扩展。 内部类形式根据内部类声明的位置(如同变量的分类)可以分为:(1)成员内部类:静态成员内部类非静态成员内部类(2)局部内部类有名字的局部内部类匿名的内部类成员内部类如果成员内部类中不使用外部类的非静态成员,那么通常将内部类声...
继续浏览