自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【Java_EE】Day03 动态SQL

动态SQL是MyBatis的强大特性之一,基于对象导航图语言(Object Graph Navigation, OGNL)的表达式来完成动态SQL,在很大程度上避免了单一SQL语句的反复堆砌,提高了SQL语句的复用性。

2024-09-21 15:44:06 885

原创 【JAVA_EE】Day02 MyBatis的核心配置

使用MyBatis框架解决持久化问题,主要涉及3个核心对象,分别是SqlSessionFactoryBuilder、SqlSessionFactory和SqlSession。所有的MyBatis应用都是以SqlSessionFactory对象为中心,SqlSessionFactoryBuilder就是这个对象的构造器,其提供了多个build()的重载方法。SqlSessionFactory用于创建SqlSession对象,所有MyBatis应用都以SqlSessionFactory对象为中心,SqlSess

2024-09-19 00:30:00 1208

原创 【JAVA_EE】Day01 MyBatis框架(1)

MyBatis框架是一个支持普通SQL操作、存储及高级映射的持久层框架,通过使用简单的XML或注解进行配置和原始映射,将接口和Java的POJO映射为数据库中的记录,使开发人员可以使用面向对象的编程思想和方式来操作数据库。

2024-09-14 01:34:32 865

原创 【Java_Spring】Day30 ORM对象关系映射

ORM(对象关系映射,Object-Relational Mapping)是一种将面向对象编程语言中的对象映射到关系型数据库表中的技术。它使得开发者可以使用对象而不是SQL语句来操作数据库,从而简化了数据持久化过程。

2024-09-07 10:59:09 450

原创 【Java_Spring】Day30 MyBatis中@Mapper注解如何做到底层实现接口

MyBatis 的@Mapper注解通过动态代理和 SQL 映射解析机制,在运行时为接口生成实现类,执行相应的数据库操作。这种设计使得 MyBatis 能够高效地处理各种数据库场景,并且保持了灵活性和松耦合。开发者只需定义接口和 SQL 逻辑,MyBatis 会自动为接口生成代理对象,并将 SQL 语句与数据库交互封装起来。

2024-09-07 10:58:39 403

原创 【Java_Spring】Day30 MyBaties占位符

特性#{}${}安全性防止 SQL 注入不防止 SQL 注入参数处理通过预编译传递参数,自动处理类型转换直接拼接到 SQL 中,不处理类型转换适用场景条件语句、参数绑定等动态 SQL(表名、列名等)SQL 生成。

2024-09-07 10:58:09 318

原创 【Java_Spring】Day30 @Update注解更新内容

在Mapper接口的方法上使用。

2024-09-07 10:57:37 319

原创 【Java_Spring】Day30 @Test单元测试注解

Test注解是用于标记测试方法的注解,它是JUnit框架的一部分,用于编写和运行单元测试。JUnit是一个广泛使用的Java测试框架,帮助开发者验证代码的正确性。

2024-09-07 10:57:07 359

原创 【Java_Spring】Day30 @SpringBootTest测试注解

是 Spring Boot 框架中的一个重要注解,主要用于进行集成测试。它可以启动整个 Spring 应用上下文,模拟一个完整的运行环境,以便在测试环境中对应用进行测试。

2024-09-07 10:56:36 355

原创 【Java_Spring】Day30 @Select注解查询信息

在Mapper接口的方法上使用。

2024-09-07 10:56:00 304

原创 【Java_Spring】Day30 @Mapper注解声明接口

Mapper注解是 MyBatis 框架中的注解,主要用于将一个接口标记为 MyBatis 的 Mapper 接口。该注解告诉 MyBatis 框架,这个接口中的方法与数据库的 SQL 操作相关,并且 MyBatis 将自动为这些方法生成实现代码。

2024-09-07 10:55:21 345

原创 【Java_Spring】Day30 @Insert注解添加SQL语句

Insert注解用于 MyBatis 中执行 SQL 插入操作,允许将 SQL 语句直接嵌入到 Java 代码中,简化了数据库操作。支持简单插入、对象插入和动态 SQL 操作。与 MyBatis 的其他注解(如@Select@Update@Delete)类似,@Insert注解提供了一种灵活、高效的方式来执行数据库操作。

2024-09-07 10:54:46 340

原创 【Java_Spring】Day30 @Delete注解删除信息

在Mapper接口的方法上使用。

2024-09-07 10:54:16 401

原创 【Java_Spring】Day30 @Configuration详解

带有。

2024-09-07 10:53:45 393

原创 【Java_Spring】Day30 @ComponentScan注解详解

的作用是告诉 Spring 框架要扫描哪些包,以便找到那些标有 Spring 注解的类,并将其注册为 Bean。典型场景是 Spring 启动时,扫描项目的某个包及其子包,自动加载其中的组件。等注解的类自动注册为 Spring 容器中的 Bean。是 Spring 中用于自动扫描并注册 Bean 的注解。等注解的类,并将它们自动注册到 Spring 容器中,或衍生注解的类自动注册到 Spring 容器中。配合使用,通过扫描指定的包或类路径,将标记了。如果项目中有多个需要扫描的包,可以在。

2024-09-07 10:52:14 332

原创 【Java_Spring】Day29 Spring 注解方式配置并加载类的Bean对象

通过,Spring能够基于注解自动管理Bean的创建、配置和注入,支持灵活的Java配置方式,简化了应用程序的配置和管理流程。

2024-09-07 10:47:34 357

原创 【Java_Spring】Day29 Spring 依赖注入

依赖注入(Dependency Injection, DI)是一种设计模式,用于解决对象之间的依赖关系。其基本概念是,当一个对象需要另一个对象时,不由自己创建这个对象,而是通过外部机制(如框架或容器)将所需的对象传递进来。这种方式可以让对象的依赖更加明确,减少耦合。

2024-09-07 10:46:33 249

原创 【Java_Spring】Day29 Spring 四种注入方式@Component、@Repository、@Service、@Controller注解

这四个注解主要用于不同层次的组件,便于代码的组织和维护,同时利用Spring的自动装配功能。

2024-09-07 10:46:00 289

原创 【Java_Spring】Day29 Spring 什么是JavaSpring

它提供了一组全面的功能,支持依赖注入(Dependency Injection, DI)、面向切面编程(Aspect-Oriented Programming, AOP)以及事务管理等。Spring 还包括一系列子项目(如 Spring Boot、Spring Data 等),帮助开发者构建不同类型的应用程序。Spring 还支持与多种框架和技术的集成,如 JDBC、JPA、Hibernate 等,极大地提升了开发效率。

2024-09-06 09:52:15 278

原创 【Java_Spring】Day29 Spring 三层架构设计

面向接口的设计思想和三层架构(Controller、Service、DAO)是现代软件开发中广泛采用的设计模式,目的是为了提高代码的可维护性、可扩展性和可复用性。以下是为什么要面向接口设计以及采用三层架构的原因和好处。

2024-09-06 09:40:58 1206

原创 【Java_Spring】Day29 Spring 面向接口编程

接口(

2024-09-06 09:40:27 429

原创 【Java_Spring】Day29 Spring 单例和多例模式

单例模式:是Spring的默认作用域,适合无状态、共享资源的场景,Spring负责管理Bean的整个生命周期。多例模式:为每次请求创建新实例,适合有状态、独立任务的场景,Spring只负责创建,不负责销毁。选择何种模式取决于应用的具体需求和Bean的状态管理。

2024-09-06 09:37:32 840

原创 【Java_Spring】Day29 Spring @Value注解注入值

Value注解的主要作用是将外部配置或常量注入到Spring Bean中,支持属性占位符、默认值和SpEL表达式,非常灵活,适合配置驱动的应用开发。

2024-09-06 09:36:59 297

原创 【Java_Spring】Day29 Spring @Resource注解及@Resource与@Autowired的联系和区别

Autowired主要根据类型进行注入,适用于Spring应用,支持更多Spring特性。@Resource主要根据名称进行注入,符合Java标准,适用于需要Java EE兼容性的场景。两者在Spring框架中都可以实现依赖注入,但@Autowired更灵活,尤其是在需要根据类型进行注入的场景中。

2024-09-06 09:36:05 429

原创 【Java_Spring】Day29 Spring @Qualifier注解的应用

/ 定义接口// 实现支付宝支付@Component@Override// 实现信用卡支付@Component@Override@Qualifier注解在Spring中用于指定注入的Bean,解决了多个实现类或Bean定义时的歧义问题。通过明确指定Bean的标识符,Spring能够根据指定的Bean进行正确的依赖注入,提高了代码的灵活性和可维护性。

2024-09-06 09:35:30 230

原创 【Java_Spring】Day29 Spring @PostConstruct生命周期回调注解

注解是Java中的一个注解,通常用于Spring框架中,表示在依赖注入完成后立即调用的方法。它可以在一个类的初始化过程中执行一些需要的初始化逻辑。

2024-09-06 09:19:21 123

原创 【Java_Spring】Day29 Spring @PreDestroy生命周期回调注解

注解是Java中的一个注解,通常用于Spring框架中,标识在需要执行的方法。它用于执行一些清理工作或资源释放操作,在Bean即将从Spring容器中移除之前自动调用。

2024-09-06 09:18:58 384

原创 【Java_Spring】Day29 Spring @PostConstruct生命周期回调注解

注解是Java中的一个注解,通常用于Spring框架中,表示在依赖注入完成后立即调用的方法。它可以在一个类的初始化过程中执行一些需要的初始化逻辑。

2024-09-06 09:13:57 299

原创 【Java_Spring】Day29 Spring @Autowired字段注入

/ 定义接口// 实现支付宝支付@Component@Override@Autowired字段注入是一种简便的自动装配方式,可以让Spring容器自动为类的字段注入所需的Bean。这种方式省略了显式的构造函数或setter方法,使代码更简洁,但也使得依赖关系在代码中不够显式,对调试和测试可能会有一定的影响。

2024-09-06 09:13:14 288

原创 【Java_Spring】Day29 Java的21种设计模式

创建型模式:帮助管理对象的创建。结构型模式:处理类和对象的组合关系。行为型模式:处理对象之间的交互和职责分配。这些设计模式能够帮助开发者编写更加灵活、可维护、可扩展的代码。在Java开发中,选择合适的设计模式能够有效解决各种常见的设计问题。

2024-09-06 09:08:54 927

原创 【Java_Spring】Day29 finalize()垃圾回收

finalize()方法用于在对象被GC回收前进行清理操作,但由于其不确定性和效率问题,它不适合在现代Java开发中使用。推荐使用或实现接口来代替finalize(),以确保资源可以被及时、可靠地释放。

2024-09-06 09:08:34 325

原创 【Java_Spring】Day29 .properties文件

文件是一种简单的键值对配置文件,主要用于存储配置信息和国际化资源。它具有轻量、可扩展、易于读取和维护的优点,并且与 Java 自带的Properties类和类集成良好。

2024-09-06 09:06:24 340

原创 【MySQL_JDBC】Day23-Day28 数据库基础、JDBC基础、聊天室3.0

保存数据的仓库就称为数据库这是一套可以独立运行,用于维护磁盘上的数据的一套软件。INSERT:向表中插入记录的操作UPDATE:修改表中记录的操作DELETE:删除表中记录的操作INSERT语句,向表中插入记录INSERT后面指定的字段名可以与表结构不一致,但是要求VALUES子句中指定的值个数,顺序,类型必须与指定的字段一致INSERT语句可以忽略某些字段,此时被忽略的字段会插入默认值INSERT语句可以显示的插入默认值,此时VALUES子句中对应字段的值使用关键字DEFAULT。

2024-09-03 16:24:01 1720

原创 【JAVA CORE_API】Day22 Java的反射机制(2)、注解

Java中的注解(Annotation)是一种元数据(metadata),用于在代码中添加补充信息。注解不直接影响代码的执行,而是为编译器、开发工具或运行时提供一些指示或配置。它们通常用在类、方法、字段、参数、包等位置,位于声明之前,以符号开头。例如,@Override注解表示一个方法重写了其父类中的方法。- 注解本质上是为代码添加标签,以便在编译时或运行时可以被工具或框架读取,并执行相应的操作。

2024-08-26 09:30:24 787

原创 【JAVA CORE_API】Day21 Map接口、在线聊天室v3.0、Java的反射机制(P1)

Java的反射机制是一种让程序在运行时动态获取类、接口、方法、属性等信息的能力。通过反射,程序可以在不知道类的情况下创建对象、调用方法、或访问属性。这种机制允许程序在运行时检查和操作代码结构,而不需要在编译时知道具体的类型。简而言之,反射使得代码能够“自我检查”和“自我修改”。这对于编写更灵活、通用的代码非常有用,比如框架、工具库、或一些需要处理未知类型对象的程序。Java的反射机制就像是你手中的一面“魔法镜子”(反射API)。

2024-08-23 18:37:52 1187

原创 【JAVA CORE_API】Day20 互斥、Socket高级、在线聊天室v2.0

互斥锁是什么:互斥锁(Mutex)是指几个线程执行几个不一样的代码,但是代码又不能一起执行,使用互斥锁;如何实现互斥锁:在Java中,通过关键字为像创建互斥锁的两端代码加上本关键字来实现互斥锁,可以用在方法或同步块上。class Aoo{try {System.out.println(thread.getName() + ":methodA完毕");try {System.out.println(thread.getName() + ":methodB完毕");

2024-08-23 11:58:07 844

原创 【JAVA CORE_API】Day19 多线程API(2)、多线程并发安全问题、同步

用特定的对象作为锁,适用于需要更灵活的同步控制,避免过多的竞争。选择与共享资源最相关的对象。

2024-08-21 20:13:58 735

原创 【JAVA CORE_API】Day18 网络编程、线程、在线聊天室v1.0

是Java提供的用于进行网络编程的API;Socket编程可以让软件与软件之间以计算机作为载体,以网络作为信息流动的通道进行远端数据传递,达到交流的目的。计算机网络是指将具有独立功能的多台计算机通过通信线路连接起来,实现数据共享和交流的计算机系统。Socket(套接字):网络通信的标准API、进行可靠的网络通讯。TCP协议是面向连续的可靠传输协议,双方建立连接及断开连接需要双向确认后才可以进行当任意一方在没有进行确认断开操作就擅自结束,另一方就会出现该异常。三次握手与四次挥手:客户端与服务端建立。

2024-08-21 20:02:58 931

原创 【JAVA CORE_API】Day17 转换流、缓冲字符流、异常概念try、catch、finally、throw、throws、异常API、自定义异常

在Java语言出现以前,传统的异常处理方式多采用返回值来标识处现的异常情况,这种方式虽然为程序员所熟悉,但却有很多坏处;首先,一个API可以返回任意的返回值,而这些返回值本身并不能解释该返回值是否代表一个异常情况发生了和该异常的具体情况,需要调用API的程序自己判断并解释返回值的含义;其次,并没有一种机制来保证异常情况一定会得到处理,调用程序可以简单地忽略该返回值,需要调用API的程序员记住去检测返回值并处理异常情况。这种方式还让程序代码变得冗长,尤其是当进行IO。

2024-08-19 17:50:03 873

原创 【JAVA CORE_API】Day16 IO流、文件流、换种字节流、对象流

简单地说,就例如用水管举例,自来水公司通过水管到各户家里,这个管道就是低级流,但是这时候我想用热水洗澡,我们不能利用烧水再和凉水勾兑,太麻烦了,于是我们使用热水器,自来水管连进热水器,热水器就是一个高级流;再就是我们如果想喝过滤水,我们也可以选择装一个过滤器,这也是一个高级流;那如果我们想用纯净水去洗澡呢?我们就可以先接一个过滤器这个高级流,再接一个热水器高级流,将水进行二次、三次、…处理,在关流的时候关的也是高级流,就像洗完澡要关的是热水器,而不是水阀。

2024-08-17 17:14:12 1037

配套代码【JAVA BASICS】Day03 运算符:算术、关系、逻辑、赋值、字符串连接、条件、分支结构

配套代码【JAVA BASICS】Day03 运算符:算术、关系、逻辑、赋值、字符串连接、条件、分支结构

2024-08-03

配套代码【JAVA BASICS】Day02 变量、八种基本数据类型、类型间的转换

配套代码【JAVA BASICS】Day02 变量、八种基本数据类型、类型间的转换

2024-08-03

空空如也

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

TA关注的人

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