JAVA基础知识
文章平均质量分 83
这个专栏适用于新手学习Java基础,不定期更新。
爱吃香蕉的阿豪
华为云开发者社区组织HCDG核心组,2023华为产品测评官,华为云享专家,阿里云专家博主,腾讯云HAI模范
展开
-
Spring如何实现IoC( IDEA创建一个maven项目实现IoC)
IoC不是一种技术,只是一种思想,一个重要的面向对象编程的法则,它能指导我们如何设计出松耦合、更优良的程序对象的创建控制权由程序转移到外部,这种思想我们叫控制反转你不需要自己去new对象,交给它来new,达到解耦把你IoC容器里的Bean有关联的给它关联起来,就叫DI思想以下代码举例,当BookDao的实现类升级了,出现了BookDaolmpl2,那业务实现中的new对象也需要改动,这样耦合度就很高。业务层实现数据层实现 Spring提供了一个容器,我们称它为IoC容器,他用来充当IoC思想的原创 2022-06-27 00:20:26 · 381 阅读 · 0 评论 -
视频流截取保存到本地路径(打包jar包CMD运行)
现在有一批https的监控视频流URL,需要对视频流进行每三秒截屏一次,并保存到本地路径,png格式,以当前时间命名。原创 2023-02-23 10:08:59 · 789 阅读 · 0 评论 -
如何在IDEA上创建一个Maven项目2022版
如何在IDEA上创建一个Maven项目2022版原创 2022-06-06 13:55:22 · 6142 阅读 · 7 评论 -
使用IDEA连接Mysql数据库
使用IDEA连接Mysql数据库,提前在可视化工具中建好表原创 2022-06-07 14:01:51 · 43743 阅读 · 35 评论 -
Springboot & MySQL & Mybatis 学生管理系统
本学生管理系统主要是以年级、班级为单位,进行老师和学生信息记录和统计功能。项目采用前后端分离架构思想,前端采用HTML+CSS+VUE来实现页面效果展示,后端采用SpringBoot+MybatisPlus框架实现数据存储等服务。存储层使用高性能的MySQL,服务器使用SpringBoot内置的Tomcat9.x,项目构建工具使用Maven来管理jar包和项目构建。点击学生管理系统获取资源!Vue是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心原创 2022-07-07 09:33:53 · 985 阅读 · 0 评论 -
SpringBoot简介&IDEA在线创建一个SpringBoot项目
SpringBoot 项目创建有三种方式,分别是在线创建、使用Spring initializr快速创建、和改造Maven工程创建,本期讲的就是如何在线创建一个SpringBoot项目。首先我们要下载好IntelliJ IDEA以及jdk1.8版本。springboot 是 spring 快速开发脚手架,通过约定大于配置的方式,快速构建和启动 spring 项目.springboot根据我们项目中所引入的依赖,比如引入了springmvc构件,就会判断出是要进行springmvc的web开发,就会把spr原创 2022-06-08 10:53:19 · 2350 阅读 · 0 评论 -
若依框架部署从零开始2023版(前后端分离)
电脑最近重装了一次系统,目前什么都没有安装,记录一下从零开始部署前后端分离版本的若依框架系统先去官网把若依源码拉下来。原创 2023-03-11 12:56:19 · 4293 阅读 · 2 评论 -
搭建My Batis(Maven + MySql + log4j)
MyBatis是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis避免了几乎所有的JDBC代码和手动设置参数以及获取结果集。MyBatis可以使用简单的XML或注解来配置和映射原生信息,将接口和Java的POJOs(PlainOrdinaryJavaObject,普通的Java对象)映射成数据库中的记录。下图是本项目中的整体结构,搭建的时候可以参考各包目录位置。...原创 2022-07-20 09:08:13 · 357 阅读 · 0 评论 -
JAVA日志技术 & Logback
为什么需要记录日志?我们不可能实时的24小时对系统进行人工监控,那么如果程序出现异常错误时要如何排查呢?并且系统在运行时做了哪些事情我们又从何得知呢?这个时候日志这个概念就出现了,日志的出现对系统监控和异常分析起着至关重要的作用。......原创 2022-07-15 20:56:14 · 476 阅读 · 0 评论 -
IO流之 字节流 & 字符流
大多数应用程序都需要实现与设备之间的数据传输,例如键盘可以输入数据,显示器可以显示程序的运行结果等。在Java中,将这种通过不同输入输出设备(键盘,内存,显示器,网络等)之间的数据传输抽象的表述为“流”,程序允许通过流的方式与输入输出设备进行数据传输。Java中的“流”都位于Java.io包中,称之为IO(输入输出)流。IO流即InputOutput的缩写。一切文件数据在存储时,都是以二进制数字的形式保存,都一个一个的字节,那么传输时一样如此。所以,字节流可以传输任意文件数据。httpshttps。...原创 2022-07-23 00:23:05 · 966 阅读 · 0 评论 -
JAVA异常处理(三种异常处理机制)
异常是程序在编译或执行的过程中可能出现的问题,语法错误不算在异常体系提前处理异常,程序会更加安全Error: 系统级别问题、JVM退出等,代码无法控制Exception: Java.lang包下,称为异常类,它表示程序本身可以处理的问题 Runtime Exception及其子类: 运行时异常,编译阶段不会报错(如空指针,数组索引越界异常) 除Runtime Exception之外所有异常:原创 2022-07-14 15:21:04 · 7368 阅读 · 0 评论 -
JAVA & Map集合详解
Map集合是一种双列集合,每个元素包含两个数据Map集合的每个元素的格式:Key = value(键值对元素)Map集合也叫 “键值对集合”Map集合非常适合做类似于购物车这样的业务场景 Map的键: 无序、不重复、无索引Map的值: 可重复Map集合后面重复的键对应的值会覆盖前面重复键的值Map集合的键值可以为null 先获取Map集合的全部键的Set集合遍历键的set集合,通过键提取对应值涉及到API...............原创 2022-07-12 15:54:58 · 602 阅读 · 0 评论 -
JAVA可变参数 ( IDEA演示 )
在 Java 5 中提供了变长参数,允许在调用方法时传入不定长度的参数,本质上还是基于数组的实现在定义方法时,在最后一个形参后加上三点 …,就表示该形参可以接受多个参数值,多个参数值被当成数组传入。可变参数格式:可变参数作用:输出结果:一个形参列表中可变参数只能有一个 可变参数必须放在形参列表的最后面ArrayList工具类有一个静态方法:public static List asList(T…a){},对返回集合不能进行增删,可以修改List接口有一个静态方法:public stat原创 2022-07-11 07:45:23 · 367 阅读 · 0 评论 -
Lambda表达式
Lambda表达式是JDK8后的一种新语法形式 Lambda表达式只能简化函数式接口的匿名内部类的写法形式 演示:先创建应该抽象类 使用Lambda表达式抽象简化匿名内部类,转换类型必须是接口 把Animal类改成接口 此时已经编译正常,并且对对象a进行了简化 首先必须是接口,其次接口中只能有一个抽象方法函数式接口,即适用于函数式编程场景的接口。而Java中的函数式编程体现就是 Lambda,所以函数式接口就是可以适用于Lambda使用的接口总结有时我们需要在程序的某处使用原创 2022-07-07 12:13:30 · 185 阅读 · 0 评论 -
包装类(装箱&拆箱&数据类型转换)
在Java5 中添加了两个新特性,那就是自动装箱和拆箱,因为基本类型的广泛使用,但是Java 又是面向对象的语言,所以提供了包装类型的支持。 JAVA是面向对象语言,为了实现一切皆对象,于是为8种基本数据类型提供了对于的引用类型集合和泛型只支持包装类型,不支持基本数据类型比如:为了解决该问题,我们引入了包装类,顾名思义,就是将基本类型“包装起来“,使其具备对象的性质,包括可以添加属性和方法,位于java.lang包下。既然有了基本数据类型和包装类,就必然存在它们之间的转换将基本数据类型转化为对应类型的包装类原创 2022-07-06 22:19:11 · 743 阅读 · 0 评论 -
static应用之 单例设计模式(饿汉单例&懒汉单例)
本章我们来学习单例模式中的饿汉单例和懒汉单例,那么什么是单例模式呢?应用该模式的这个类永远只有一个实列,即一个类只能创建一个对象例如电脑上的任务管理器对象只需要一个就能解决问题,可以节省内存空间先定义一个类,把构造器私有如下图,先来看一下没有把构造器私有化的SingleInstance类,此时Test类中可以随意创建多个SingleInstance的实例化。 在SingleInstance类中用private修饰无参构造器,此时左边new方法报错了。我们在右边创建一个静态变量来存储对象,变量名为instan原创 2022-06-27 20:22:30 · 193 阅读 · 0 评论 -
JAVA语法&包和访问控制 & Static 关键字的作用
在编写 Java 程序时,随着程序架构越来越大,类的个数也越来越多,这时就会发现管理程序中维护类名称也是一件很麻烦的事,尤其是一些同名问题的发生。开发人员还可能需要将处理同一方面的问题的类放在同一个目录下,以便于管理。 计算机中存放了若干类型的文档,为了管理方便,操作系统采用了树形结构的文件夹形式存放这些文档,并对文档进行管理。为了更好地组织类,Java 提供了包机制。包是类的容器,用于分隔类名空间。如果没有指定包名,所有的类都属于一个默认的无名包。Java 中将实现相关功能的类组织到一个包中。例如,Jav原创 2022-06-21 21:11:47 · 231 阅读 · 0 评论 -
JAVA 抽象类(Abstract Class) 和 接口(Interface) 的区别
对于面向对象编程来说,抽象是它的一大特征之一。在 Java 中,可以通过两种形式来体现 OOP 的抽象:接口和抽象类。这两者有太多相似的地方,又有太多不同的地方。今天我们就一起来学习一下Java中的接口和抽象类抽象类不能用于实例化对象,抽象类往往用来表示抽象概念。举个例子,中国人(Chinese 类)和美国人(American 类)都有“吃饭”这个行为,因此可以先定义一个 Person 类,然后让 Chinese 和 American 都继承这个类。但如何在父类 Person 中定义“吃饭”这个方法呢?一般原创 2022-06-20 23:03:15 · 708 阅读 · 0 评论 -
Java八种基本数据类型&字符串&运算符(图文详解)
Java基本类型共有八种,基本类型可以分为三类,字符类型char布尔类型boolean数值类型byte、short、int、long、float、double数值类型又可以分为整数类型byte、short、int、long和浮点数类型float、double。 四种整型的特点 逻辑与的运算规则为:有一个运算数为假,其值为假,两个运算数都为真,其值为真。逻辑与的关系值表如下图所示 逻辑或的运算规则为:有一个运算数为真,其值为真,两个运算数都为假,其值为假。逻辑或的关系值表如下图所示。......原创 2022-06-15 21:55:57 · 3196 阅读 · 0 评论 -
Java 对象间关系(依赖、关联、聚合和组合)
面向对象设计 对象间关系:依赖、关联、聚合和组合,四种关系容易混淆。特别后三种,只是在语义上有所区别,所谓语义就是指上下文环境、特定情景等。 依赖关系,是类与类之间的联接。依赖关系表示一个类依赖于另一个类的定义。使用关系。一般情况下,依赖关系在Java语言中体现为局域变量、方法的形参,或者对静态方法的调用。比如说我要借书,那么我就要去图书馆,那么借书方法实现就要依赖于图书馆,即下面的Book依赖于Library 关联关系,是类与类之间的联接,它使一个类知道另一个类的属性和方法。拥有关系。关联可以是原创 2022-06-12 20:58:24 · 3017 阅读 · 0 评论 -
内部类的概念与分类(成员内部类,局部内部类,匿名内部类)
内部类,就是一个类内部包含另一个类,即一个事物的内部包含着另一个事物。例如:身体和心脏 、汽车与发动机之间的关系。demo07InnerClass 可以看见在out下的内部类文件命名规则是 外部类$内部类.class类名称 对象名 = new 类名称();外部类名称.内部类名称 对象名 = new 外部类名称().new 外部类名称(); 把这条公式插入到demo07InnerClass 中 使用heart.调用内部类方法 如果一个类是定义在一个方法内部的,那么这是一个局部内原创 2022-06-11 17:49:48 · 216 阅读 · 0 评论 -
Java的流程控制(选择结构语句 if ~ switch &循环结构语句dowhile ~ for)
程序执行的控制流程分为三种,也称为三种结构,分别是:顺序结构、和循环结构。顺序结构指的是程序执行按照代码的编写顺序,依次从上往下开始执行,直到程序结束。程序的执行默认是顺序执行的一个 if 语句包含一个布尔表达式和一条或多条语句如果布尔表达式的值为 true,则执行 if 语句中的代码块,否则执行 if 语句块后面的代码。使用 if,else if,else 语句的时候,需要注意下面几点:if 语句至多有 1 个 else 语句,else 语句在所有的 else if 语句之后。if 语句可以有原创 2022-06-13 22:25:52 · 175 阅读 · 0 评论