- 博客(21)
- 收藏
- 关注
原创 Spring框架-IoC控制反转
Spring是一款主流的 Java EE 开源框架,目的是用于简化Java企业级引用的开发难度和开发周期;从简单性、可测试性的角度而言,任何Java应用都可以从Spring中受益;Spring框架提供自己提供功能外,还提供整合其他技术和框架的能力Spring提供了以下多个注解,这些注解可以直接标注在java类上,将它们定义成Spring Bean注解说明@Component。
2025-05-08 09:31:34
727
原创 数据库- JDBC
当应用程序使用完连接后,需要将连接归还给连接池,而不是直接关闭连接。而在Java 7 及以上版本,可以在 try 语句后面的括号中声明和初始化资源,当 try 块结束时,无论是否发生异常,这些资源都会自动调用 close() 方法关闭。通过设置一系列参数来初始化 DruidDataSource 对象,这些参数包括数据库连接的 URL、用户名、密码,以及连接池的一些基本配置,如初始连接数、最大连接数等。创建Userinfo表,包含id,username,password,nickname,age字段。
2025-04-28 20:57:20
1894
1
原创 数据库-子查询、关联查询 和 TCL 语言
ACID四大特性是指数据库事务的四个基本特性,分别是原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)和持久性(Durability)以JOIN左侧表作为驱动表,右侧不满足连接条件的记录结果集对应字段为NULL。查看来自南京的学生都是谁,列出城市名称,学生名字,年龄,性别。查看1年级1班的学生信息,列出学生姓名,年龄和所在班级。查看与"张三"和"李四"在同一个班的学生都有谁。查看比科目2和科目4老师工资都高的老师都有谁。查看1年级1班的同学以及来自的城市。
2025-04-25 17:58:47
1001
原创 数据库-数据类型、约束 和 DQL语言
查看班级编号在6(含)以下的所有大队长,中队长的名字,年龄,性别,职位。查看7岁的“大队长”都有谁,列出这些学生的名字,年龄,性别和职位。查看工资在2000到5000之间的老师的名字,性别,年龄,工资。查看除了‘刘苍松’以外的所有老师的名字,工资,奖金,职位。查看年龄在30岁以上(含)的老师的名字,职称,工资,奖金。查看除一级讲师和二级讲师之外的所有老师的名字,职称,工资。查看所有大队长,中队长,小队长的名字,性别,年龄和职位。查看老师的工资和奖金,首先按照奖金升序,再按照工资降序。
2025-04-24 20:06:46
1111
原创 数据库-基本概述、DDL 语言 和 DML 语言
数据库(DataBase):按照数据结构来组织、存储和管理数据的仓库数据库管理系统(DataBaseManagementSystem):管理数据库的软件。
2025-04-23 20:43:06
1342
原创 Java核心API-网络编程
因为需要处理多客户端,所以服务端要循环调用accept方法,但该方法会产生阻塞,且读取客户端的消息也是依靠一个循环完成的,这会导致它接近是一个死循环,不结束的话也会影响服务端再次调用accept方法,所以与某个客户端的交互就需要使用线程来并发处理。服务端只调用过一次accept方法,因此只有第一个客户端链接时服务端接受了连接并返回了Socket,此时可以与其交互,而第二个客户端建立连接时,由于服务端没有再次调用accept,因此无法与其交互。若想使一个服务端可以支持多客户端连接,我们需要解决以下问题。
2025-04-22 17:22:40
976
原创 Java核心API-多线程
当一个方法使用synchronized修饰后,这个方法称为"同步方法",即多个线程不能同时在方法内部执行,只能有先后顺序的一个一个进行, 将并发操作同一临界资源的过程改为同步执行就可以有效的解决并发安全问题。当在静态方法上使用synchronized后,该方法是一个同步方法.由于静态方法所属类,所以一定具有同步效果,静态方法使用的同步监视器对象为当前类的类对象(Class的实例)同步监视器对象即上锁的对象,要想保证同步块中的代码被多个线程同步运行,则要求多个线程看到的同步监视器对象是同一个。
2025-04-21 14:33:20
1299
原创 Java核心API-高级流、异常处理机制
自定义异常通常用来定义那些业务上的异常问题定义自定义异常需要注意以下问题异常的类名要做到见名知义需要是Exception的子类提供超类异常提供的所有种类构造器。
2025-04-18 20:19:07
838
原创 Java核心API-文件 File、输入与输出 IO 和文件流
所有字节输入流的超类,其中定义了读取数据的方法不管读取的是什么设备(连接该设备的流)都有这些读取的方法,因此我们可以用相同的方法读取不同设备中的数据int read()读取一个字节,返回的int值低8位为读取的数据。如果返回值为整数-1则表示读取到了流的末尾块读取,最多读取data数组总长度的数据并从数组第一个位置开始存入到数组中,返回值表示实际读取到的字节量,如果返回值为-1表示本次没有读取到任何数据,是流的末尾。
2025-04-18 13:27:29
1072
原创 Java核心API-集合排序、Lambda 表达式、双列集合和 forEach 遍历
Collections是集合的工具类,提供了很多便于我们操作集合的方法,其中就有用于集合排序的sort方法。将当前 map 中的每一组键值对以一个 Entry 实例表示,并将所有键值对以Set集合返回。使用Lambda表达式可以更专注代码逻辑,而不必赘述代实现的接口与实现的方法。以集合的形式返回 Map 中所有的 value(不常用)该方法的作用是对给定的集合元素进行自然排序(升序)以 Set 集合形式返回 Map 中所有的 key。JDK1.8推出的新的循环,基于Lambda表达式。
2025-04-16 17:33:52
994
原创 Java核心API-Collection 接口、泛型、Iterator 迭代器、增强型 for 循环、List 集合以及 Set集合
集合是一种可以存放多个数据的容器相比数组,集合对其中的元素的管理更加便捷,解决了数据难以维护(如增、删)的问题。
2025-04-15 17:59:19
1115
原创 Java核心API-String、StringBuilder、Object 和包装类
(通过右键->Generate->equals() and hashcode() 系统生成)Object 类有两个经常被子类重写的方法:toString() 和 equals()对于字符串而言,实际应用中我们通常希望比较的是两个字符串的内容是否相同。== 是比较值是否相等,对于引用类型而言,引用中保存的是地址。判断当前字符串是否是以给定的字符串(str)开始 / 结束的。因此一般都是通过equals()来比较字符串内容是否相同的。构造一个字符串生成器,并初始化为指定的字符串内容。(index为数组下标)
2025-04-14 17:54:00
1108
原创 Java面向对象-package,import,访问控制修饰符,final,static关键字
加载StaticVar.class到方法区中,其中存放了静态变量、构造方法以及其他的方法。new的对象存储在堆里,其中存放了实例变量、构造方法的地址以及其他方法的地址。new的对象的地址存放在栈里。
2025-04-11 17:46:01
903
原创 Java面向对象-引用类型数组、多态和匿名内部类
建议:在强转之前先通过instanceof判断引用指向的对象是否是该类型。何时用:若想创建一个派生类对象,并且对象只创建一次,可以设计为匿名内部类。内部类是定义在另一个类内部的类,就像是一个类里面又嵌套了一个小类。3)可以向上造型成为的类型有:所有继承的类+所有实现的接口。(instanceof为true的条件就是强转成功的条件)1)超类型的引用指向派生类的对象(超类大,派生类小)若想访问的属性或行为在超类中没有时,需向下转型。2)能点出来什么(能访问什么),看引用的类型。数组元素为引用类型的数组。
2025-04-10 19:00:47
549
原创 Java面向对象-继承、抽象类和接口
接口是一种引用数据类型由interface定义只能包含抽象方法(常量、默认方法、静态方法、私有方法----以后再讲)接口不能被实例化(new对象)接口是需要被实现的,实现类必须重写接口中所有的抽象方法(注意:重写接口中的方法时,必须加public------以后再讲)/** 接口的演示 *///编译错误,接口不能被实例化//演示接口的定义//接口中的方法默认都是抽象的,前面默认有abstract//编译错误,抽象法方不能有方法体//演示接口的实现。
2025-04-09 19:03:42
909
原创 Java面向对象-类和对象
类:类型/类别,代表一类个体,是自己创建的数据类型(是一种引用数据类型)构造函数是Java类中用于初始化对象的特殊方法,也称为构造方法或构造器。PS:this只能用在方法中,方法中访问成员变量之前默认有个this.this指的是当前正在使用的对象,也就是调用当前方法的那个对象实例。类和对象的关系:类是对象的模子/模板,对象是类的具体的实例。它是创建对象时自动调用的方法,专门用来为新对象设置初始状态。用引用名打点来访问成员变量或调用方法。对象:真实存在的单个的个体/东西。使用new关键字创建对象。
2025-04-09 09:51:14
448
原创 Java开发入门-数组和方法以及补充
数组是一种用于存储固定大小的相同类型元素的线性数据结构。数据类型[] 数组名;// 方括号在类型后// 定义一个整型数组// 定义一个字符串数组// 定义一个双精度浮点数组定义方法的五要素:访问修饰符、返回值类型、方法名、参数列表、方法体[访问修饰符] [static] 返回类型 方法名([参数列表]) {// 方法体[return 返回值;访问修饰符:控制方法的可见性(public、private等)static:可选,表示是否为静态方法。
2025-04-07 20:35:16
1175
原创 Java开发入门-运算符、结构类型
while 循环是一种 “条件循环”,它会重复执行代码块,直到指定的条件不再满足(变为 false)。其中,&&和||存在短路现象,当&&左侧为false时,其右侧的代码将不会执行,同理,当||左侧为true时,其右侧的代码也不会执行。顺序结构是编程中最基本、最简单的程序执行方式,它按照代码的书写顺序依次执行语句,没有跳转或分支。先计算条件,若条件为true,则返回表达式1的值,若条件为false,则返回表达式2的值。循环中套循环,常常多行多列时使用,外层控制行,内层控制列。
2025-04-06 23:15:53
609
原创 Java开发入门-变量、八大基本数据类型以及Scanner的使用
变量(Variable) 是编程中用于存储数据的基本单元,可以理解为一个有名字的容器,用来存放程序运行过程中需要使用的数据。双精度浮点型,占8个字节,精度为 15 ~ 16 位有效数字。短整型,占2个字节,范围为 -2^15 ~ 2^15-1。长整型,占8个字节,范围为 -2^63 ~ 2^63-1。字节型,占1个字节,范围为 -2^7 ~ 2^7-1。整型,占4个字节,范围为 -2^31 ~ 2^31。字符型,占2个字节,取值范围为 0 ~ 65535。运算时若超出范围会发生溢出,溢出不是错误但要避免。
2025-04-01 20:52:17
452
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人