【Java回顾】Day3 继承|Override/Ovverload|多态|抽象类|封装|接口|枚举
学习资料 菜鸟教程
https://www.runoob.com/java/java-interfaces.html
继承|Override/Ovverload|多态|抽象类|封装|接口|枚举
继承 创建分等级层次的类,子类继承父类的特征、行为、方法
-
class 父类{ } class 子类 extends 父类{ super(); }
一些性质
-
Java 不支持多继承(一个类继承2个父类),但支持多重继承。
-
-
子类拥有父类非private的属性、方法。缺点是耦合度高代码独立性越差。
-
extends和implements关键字
- 所有的类都是继承于java.lang.Object,默认继承Object
- extends
- 单一继承,一个子类只能拥有一个父类
- implements 类继承接口可多继承
- 使java具有多继承的特性,使用范围为类继承接口的情况,可以同时继承多个接口(,)
-
public interface A {public void eat();public void sleep(); }public interface B {public void show(); }public class C implements A,B { }
-
super与this关键字
- super
- 对父类成员的访问,用来引用当前对象的父类。
- this
- 对自己的引用,引用当前对象(自己的方法或构造函数所属的对象实例)
- super
-
final关键字
- 修饰变量(类属性、对象属性、局部变量和形参)、方法(包括类方法和对象方法)和类。
- 定义为最终类,不能被继承,或者用于修饰方法,该方法不能被子类重写。
- 声明类: final class 类名 {//类体}
- 声明方法: 修饰符(public/private/default/protected) final 返回值类型 方法名(){//方法体}
-
构造器
- 子类不继承父类的构造器(构造方法和构造函数)。
- 继承构造器的方法
- 无参构造器 直接继承
- 带参构造器,用super来继承参数。
-
// 带参数构造器,调用父类中带有参数的构造器public SubClass(int n) {super(300);System.out.println("SubClass(int n): " + n);this.n = n;}
-
Java重写(Override)和Java重载(Overload)
重写(Override)
- 本质:指子类定义了一个与其父类相同外壳(相同名称、参数列表、返回类型)的方法
- 自定义父类方法,个性化
- 返回类型可以不同,但必须是父类返回值的派生类
- 声明为final的方法不能被重写;声明为static的方法不能被重写但能被再次声明
- 子类和父类是否在一个包
- 在,可以重写除了声明private和final的方法
- 不在,重写父类声明为public和protected的非final方法
- 构造方法不能被重写。
- super. 子类如果想调用父类的方法,用这个
重载(Overload)
- 在一个类里面,方法名字相同,而参数不同,返回类型可以不同。重载方法有独一无二的参数类型列表。
- 构造器的重载
- 规则
- 必须改变参数列表(个数类型不一样)
- 可以声明更广的检查异常
重写和重载的区别
- 参数列表、返回类型、异常、访问
- 重载:参数列表必须修改|其他的可以修改
- 重写:参数列表、返回类型一定不能修改|异常和访问不能更高广。
Java多态
-
核心:同一个行为具有多个不同表现形式或形态的能力;多态是同一个接口,使用不同的实例而执行不同操作。
-
3个必要条件
- 继承
- 重写
- 父类引用指向子类对象:Parent p=new Child();
-
多态的转型
- 向上转型(Upcasting) 将子类对象赋值给父类引用。
- 例如:Animal a = newCat(); // 向上转型 **
a.eat(); // 调用的是 Cat 的 eat** - 通过a只能调用Animal类中声明的方法,但实际运行时会调用Cat类的重写版本(多态的体现)。父类引用只能访问父类中声明的方法和属性,不能直接访问子类特有的方法或属性。
- 例如:Animal a = newCat(); // 向上转型 **
- 向下转型(Downcasting)
- 父类引用(指向子类对象)重新转型为子类类型引用,以便访问子类的特有方法或属性。
- Cat c=(Cat)a; c.work();
- 向上转型(Upcasting) 将子类对象赋值给父类引用。
-
虚函数
- 如果不希望某个函数具有虚函数特性,加final
-
多态的实现方式
- 重写
- 接口 (类比为插座)
- 抽象类和抽象方法
抽象类
- 不充分的信息来描绘一个具体的对象;不能实例化对象,必须被继承。
- public abstract class定义抽象类,可以【继承抽象类】的成员方法、成员类
- 【抽象方法】
- 抽象方法有特殊的成员方法,和具体的abstract子类实现。
- 只包含方法名,没有方法体
- 子类继承了抽象类,任何子类必须重写父类的抽象方法,或者声明自身为抽象类。
- 抽象类不能被实例化
- 抽象类中不一定包含抽象方法,但有抽象方法的类必定是抽象类。包含抽象方法的类必须是抽象类。
- 构造方法,类方法(static)不能声明为抽象方法。
封装
- 作用:良好的封装减少耦合;类内部的结果可以自由修改;可以对成员变量进行更精确的控制;隐藏信息,实现细节。
-
public class Person{private String name;//实例变量和局部变量的冲突private int age;public int getAge(){return age;}public String getName(){return name;}public void setAge(int age){this.age = age;}public void setName(String name){this.name = name;} }
- 步骤
- 修改属性的可见性来限制对属性的访问。(private)
- 对每个值属性提供对外的公共方法访问
- 任何要访问类中私有成员变量的类都要通过【getter和setter】方法。
接口
-
抽象方法的集合,interface
-
一个类通过继承接口的方式,来继承接口的抽象方法。
-
类描述对象的属性和方法,接口则包含类要实现的方法。 除非实现接口的类是抽象类,否则该类要定义接口中的所有方法。
-
接口无法被实例化,但可以被实现。一个实现接口的类,必须实现接口内所描述的所有方法,否则就必须声明为抽象类。
-
特性
- 接口中所有的方法必须是抽象方法
- 接口不能包含成员变量,除了 static 和 final 变量。
- 接口不是被类继承了,而是要被类实现。
- 接口的方法是隐式抽象,接口的变量被隐式指定为public static final变量。
- 接口中的方法是共有的
-
抽象类和接口的区别
- JDK1.8以后,接口有静态方法和方法体了。
- 接口中的成员变量只能是public static final类型的。
- 接口中不能含有静态代码块以及静态方法。
- 一个类只能继承一个抽象类,一个类可以实现多个接口。
- 接口不能包含成员变量,除了 static 和 final 变量。
-
接口Code
-
1
[可见度] interface 接口名称 [extends 其他的接口名] {// 声明变量// 抽象方法 }
-
2
/* 文件名 : Animal.java */ interface Animal {public void eat();public void travel(); }
-
-
接口的实现
- 当类实现接口的时候,类要实现接口中所有的方法,否则,类必须声明为抽象的类。
- 类使用implements来实现接口。
...implements 接口名称[, 其他接口名称, 其他接口名称..., ...] ...
- publicclassMammalIntimplementsAnimal{
-
重写接口中声明的方法
- 不能抛出强制性异常,只能在接口中或者继承接口的抽象类中抛出该强制性异常。
- 保持方法名一致,返回值类型一致。
- 如果实现该接口的类是抽象类,就没必要实现该接口的方法。
-
规则
- 一个类可以同时实现多个接口
- 一个接口能继承另一个接口 extends
-
接口的多继承
- public interface Hockey extends Sports,Event
-
标记接口
-
没有包含任何方法和属性的接口,打个标签是什么类型。
-
用处
- 公共的父接口
- 向一个类添加数据类型
Java枚举(enum)
- 特殊的类,一组常量
- 1
enum Color { RED,GRENN,BLUE; } public class Test{ public static void main(String[] args) { Color c1=Color.RED; System.out.println(c1);}}
- 内部类也可以使用枚举
- 迭代枚举元素
for(Color myVar:Color.values()){ System.put.println(myVar);)}
- 在switch中使用枚举类
- 1
- values(),ordinal()和valueOf()方法
- enum定义的枚举类默认继承了ava.lang.Enum类,并实现了java.lang,Serializable和java.lang.Comparable两个接口
- values()返回枚举类中所有的值
- ordinal()找到每个枚举常量的索引,就像数组索引一样
- valueOf()返回指定字符串值的枚举常量
- 枚举类成员
- 枚举跟普通类一样可以用自己的变量、方法和构造函数,构造函数只能使用private访问修饰符,所以外部无法调用。
- 枚举可以包含具体方法、抽象方法。如果枚举类有抽象方法,则枚举类的每个实例都必须实现它。
相关文章:
【Java回顾】Day3 继承|Override/Ovverload|多态|抽象类|封装|接口|枚举
学习资料 菜鸟教程 https://www.runoob.com/java/java-interfaces.html 继承|Override/Ovverload|多态|抽象类|封装|接口|枚举 继承 创建分等级层次的类,子类继承父类的特征、行为、方法 class 父类{ } class 子类 extends 父类{ super(); }一些性质 Java 不支持…...
redux react-redux @reduxjs/toolkit
redux团队先后推出了redux、react-redux、reduxjs/toolkit,这三个库的api各有不同。本篇文章就来梳理一下当我们需要在项目中集成redux,从直接使用redux,到使用react-redux,再到react-redux和reduxjs/toolkit配合使用,…...
javascript变量
变量 命名规范 以 字母、数字、下划线、美元符号 $ 组成、不能以 数字开头、且不能使用 js 中的关键字。 命名规范推荐采用小驼峰 命名法 。类名 采用 大驼峰命名。 var 声明变量的特点 在 script 上下文中定义的是 全局变量,全局变量会自动称为 window的属性。 在…...
第3章 总线
总线的定义 为多个部件 分时共享 公共信息传送线路。 系统之间、模块之间、芯片内部用来传递信息信号线集合。 共享 总线上可连接多个部件 各部件间相互交换信息 都可通过总线来。 分时 同一时刻 总线上只能传 一个部件信息。 采用标准总线的优点 简化系统软硬件设计 从硬件角度…...
df.replace({‘b‘: r‘\s*(\.)\s*‘}, {‘b‘: r‘\1ty‘}, regex=True)
这段代码 df.replace({b: r\s*(\.)\s*}, {b: r\1ty}, regexTrue) 用于在 DataFrame 中进行替换操作,具体来说是针对 b 列,匹配并替换符合正则表达式的值。 详细解析: df.replace():这是 Pandas 中的 replace() 方法,用…...
UE5通过蓝图节点控制材质参数
通过蓝图节点控制材质的参数 蓝图节点 在材质上设置标量值 和 在材质上设置向量参数值 Set Scalar Parameter Value on Materials Set Vector Parameter Value on Materials 这两个蓝图节点都可以在蓝图中,控制材质的参数值和向量值...
C# 设计模式(创建型模式):建造者模式
C# 设计模式(创建型模式):建造者模式 引言 在软件开发中,创建型设计模式主要关注对象的创建方式,其中建造者模式(Builder Pattern)是非常重要的一种。建造者模式通过一步一步构建一个复杂对象…...
LINUX下载编译gtk
下载 选择自己合适的版本 GNOME / gtk GitLab 下载meson GNOME / gtk GitLab 编译 BUILD_DIRbuilddir INSTALL_DIR${HOME}/gtk-resultMESON_PATHpwd/meson-1.6.1/meson.py${MESON_PATH} setup \--prefix ${INSTALL_DIR} \${BUILD_DIR}cd builddir${MESON_PATH} compile…...
linux上使用cmake编译的方法
一、hello 例程仅基于一个cpp文件 C文件或工程进行编译时可以使用g指令(需要对每一个程序和源文件分别使用g指令编译),当程序变大时,一个工程文件往往会包含很文件夹和源文件,这时我们需要的编译指令将越来越长&#…...
瑞_Linux中部署配置Java服务并设置开机自启动
文章目录 背景Linux服务配置步骤并设置开机自启动附-Linux服务常用指令 🙊 前言:由于博主在工作时,需要将服务部署到 Linux 服务器上运行,每次通过指令启动服务非常麻烦,所以将 jar 包部署的服务设置开机自启动&#x…...
洛谷 P1075 [NOIP2012 普及组] 质因数分解 C语言
题目: P1075 [NOIP2012 普及组] 质因数分解 - 洛谷 | 计算机科学教育新生态 题目描述 已知正整数 n 是两个不同的质数的乘积,试求出两者中较大的那个质数。 输入格式 输入一个正整数 n。 输出格式 输出一个正整数 p,即较大的那个质数。…...
非关系型数据库和关系型数据库的区别
🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…...
每日一些题
题解开始之前,给大家安利一个上班偷偷学习的好搭档,idea中的插件有一个叫 LeetCode with labuladong,可以在idea中直接刷力扣的题目。 朋友们上班没事的时候,可以偷偷摸几题。看八股的话,可以用面试鸭,也是…...
SQL-leetcode-197. 上升的温度
197. 上升的温度 表: Weather ---------------------- | Column Name | Type | ---------------------- | id | int | | recordDate | date | | temperature | int | ---------------------- id 是该表具有唯一值的列。 没有具有相同 recordDate 的不同行。 该表包…...
如何将服务器的镜像推送到阿里的容器镜像服务中
要将服务器的镜像推送到阿里云个人镜像仓库,请按照以下步骤操作: 前提条件: 确保已安装Docker1。您的阿里云账号或RAM用户已准备好,了解镜像仓库登录名和密码设置方法1。已在阿里云容器镜像服务(ACR)中创建个人版实例,…...
【深度学习基础之多尺度特征提取】多尺度图像增强(Multi-Scale Image Augmentation)是如何在深度学习网络中提取多尺度特征的?附代码
【深度学习基础之多尺度特征提取】多尺度图像增强(Multi-Scale Image Augmentation)是如何在深度学习网络中提取多尺度特征的?附代码 【深度学习基础之多尺度特征提取】多尺度图像增强(Multi-Scale Image Augmentation࿰…...
java springboot配置
1、下载和安装JDK 2、下载和安装Maven 3、下载VSCode插件 4、VSCode配置maven 5、创建SprngBoot项目 6、配置和运行项目 本文参考 前言 对于Java后端开发者而言最常用的开发工具则是IDEA了,而对于前端开发者而言最熟悉的开发工具便是VSCode,两者都…...
C 实现植物大战僵尸(二)
C 实现植物大战僵尸(二) 前文链接,C 实现植物大战僵尸(一) 五 制作启动菜单 启动菜单函数 void startUI() {IMAGE imageBg, imgMenu1, imgMenu2;loadimage(&imageBg, "res/menu.png");loadimage(&am…...
基于Spring Boot的宠物领养系统的设计与实现(代码+数据库+LW)
摘 要 如今社会上各行各业,都在用属于自己专用的软件来进行工作,互联网发展到这个时候,人们已经发现离不开了互联网。互联网的发展,离不开一些新的技术,而新技术的产生往往是为了解决现有问题而产生的。针对于宠物领…...
大数据存储Nosql
大数据存储Nosql复习篇 一、理论题、论述题 第1章 绪论 1、NoSQL数据库和关系数据库在设计目标上有何主要区别? (1)关系数据库 优势:以完善的关系代数理论作为基础,具有数据模型、完整性约束和事务的强一致性等特点,借助索引机…...
Git常用指令
集中式管理工具 SVN 分布式管理工具 git 优点:速度,简单设计,允许高并发的分支,完全分布式 vi ~.txt //编写文件(分支) 工作区 git add ~.txt …...
2024 年发布的 Android AI 手机都有什么功能?
大家好,我是拭心。 2024 年是 AI 快速发展的一年,这一年 AI 再获诺贝尔奖,微软/苹果/谷歌等巨头纷纷拥抱 AI,多款强大的 AI 手机进入我们的生活。 今年全球 16% 的智能手机出货量为 AI 手机,到 2028 年,这…...
k8s基础(2)—Kubernetes-Namespace
一、Namespace概述 名字空间 在 Kubernetes 中,名字空间(Namespace) 提供一种机制,将同一集群中的资源划分为相互隔离的组。 同一名字空间内的资源名称要唯一,但跨名字空间时没有这个要求。 名字空间作用域仅针对带有…...
车路云网图安全风险复杂交织
随着网联汽车与智能交通深度融合,车云路一体协同发展,车联网迎来全面发展的战略机遇期,但在车联网高速发展的同时,网络安全威胁也不断敲响警钟,网络暴露面扩大,车联网网络安全风险快速升高。车路云一体化也…...
Markdown如何添加任务列表-复选框的添加
Markdown如何添加任务列表-复选框的添加 前言语法讲解使用场景及应用实例代码整和渲染结果小结其他文章快来试试吧☺️ Markdown如何添加任务列表-复选框的添加👈点击这里也可查看 前言 To-do任务列表是一种很常见的时间管理工具,它适用于工作计划&…...
Android 旋转盘导航栏
1.直接上源码: package com.you.arc;import android.content.Context; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Paint; import android.graphics.Point; import android.graphics.RectF; import android.support…...
matlab-数字滤波器设计与实战
文章目录 数字滤波器设计FIR 滤波器设计IIR 滤波器设计巴特沃斯滤波器切比雪夫 I 型滤波器切比雪夫II型椭圆滤波器线性相位与非线性相位零相位响应数字滤波器实战数字滤波器产生延迟的主要原因补偿滤波引入的延迟补偿常量滤波器延迟补偿与频率有关的延迟从信号中除去不需要的频…...
虚拟机中的时统卡功能和性能调优
【写在前面】 飞腾开发者平台是基于飞腾自身强大的技术基础和开放能力,聚合行业内优秀资源而打造的。该平台覆盖了操作系统、算法、数据库、安全、平台工具、虚拟化、存储、网络、固件等多个前沿技术领域,包含了应用使能套件、软件仓库、软件支持、软件适…...
[算法] [leetcode-20] 有效的括号
20 有效的括号 给定一个只包括 ‘(’,‘)’,‘{’,‘}’,‘[’,‘]’ 的字符串 s ,判断字符串是否有效。 有效字符串需满足: 左括号必须用相同类型的右括号闭合。 左括号必须以正确的顺序闭合…...
TDengine 如何进行高效数据建模
1.背景 数据建模对于数据库建立后整体高效运行非常关键,不同建模方式,可能会产生相差几倍的性能差别 2. 建库 建模在建库阶段应考虑几下几点: 建多少库 根据业务情况确定建库个数,TDengine 不支持跨库查询,如果业…...
2024.12.30(多点通信)
作业: 1、将广播发送和接收端实现一遍,完成一个发送端发送信息,对应多个接收端接收信息实验。 发送端 #include <myhead.h>#define PORT 8888 #define IP "192.168.124.255"int main(int argc, const char *argv[]) {//1、…...
前端路由layout布局处理以及菜单交互(三)
上篇介绍了前端项目部署以及基本依赖的应用,这次主要对于路由以及布局进行模块化处理 一、 创建layout模块 1、新建src/layout/index.vue <template><el-container class"common-layout"><!-- <el-aside class"aside">&l…...
Zynq PS端外设之GPIO
1. GPIO(通用输入/输出) GPIO外设有4个Bank,Bank0/1通过MIO连接到PS的引脚上;Bank2/3通过EMIO连接到PL的引脚上。 注意:Bank1的电平要改成LVCOMS 1.8 GPIO寄存器 寄存器: DATA_RO: 读取GPIO的输…...
Java 操作 PDF:从零开始创建功能丰富的PDF文档
Java 操作 PDF:从零开始创建功能丰富的PDF文档 引言环境准备依赖引入 创建PDF文档一键生成空白PDF添加表单字段(选项)添加电子签名添加公章图像 结论 引言 随着数字化办公的普及,PDF格式因其跨平台兼容性和安全性而被广泛应用于各…...
12.30-1-5学习周报
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 文章链接摘要Abstract一、方法介绍1.HAT-CIR2.Horde3.DWGRNet 二、实验总结 文章链接 https://arxiv.org/pdf/2405.04101 摘要 本博客介绍了论文《Continual lea…...
H3C Tftp 备份与恢复配置文件
pc 运行 tftp 软件与路由器相连。打开 tftp。 在交换机用户试图下,dir /all 命令查看设备的配置文件。 备份命令:将配置文件备份到地址为 10.10.10.2 的 tftp 服务器 <H3C>backup startup-configuration to 10.10.10.2 恢复命令:恢复配…...
【Matlab算法】基于改进人工势场法的移动机器人路径规划研究(附MATLAB完整代码)
基于改进人工势场法的移动机器人路径规划研究 结果图摘要1. 引言2. 方法说明2.1 基本原理2.2 改进策略3. 核心函数解释3.1 改进的斥力计算函数3.2 路径规划主函数4. 实验设计4.1 实验环境设置4.2 关键参数选择5. 结果分析5.1 实验结果5.2 性能分析附录:完整代码参考文献结果图…...
基于Springboot校园失物招领系统【附源码】
基于Springboot校园失物招领系统 效果如下: 系统登陆页面 物品页面 系统首页面 失物招领管理页面 失物认领页面 宣传视频页面 物品挂失留言管理页面 宣传视频类型管理页面 研究背景 在校园环境中,失物招领是一个常见的问题。传统的失物招领方式主要依…...
Vue 自定义指令
首先,我们知道vue中有很多自带指令,v-bind、v-on、v-model等。但在业务开发中,我们常见一些自定义指令如:v-copy、v-longpress等。那么如何定义自己所需的指令呢? 接下来我们分别从指令注册、指令的钩子函数、指令的参…...
JAVA-制作小游戏期末实训
源码 import game.frame.Frame;public class App {public static void main(String[] args) {System.out.println("starting......");new Frame();} } package game.controller;import game.model.Enemy;public class EnemyController implements Runnable{private…...
【Vue教程】使用Vite快速搭建前端工程化项目 | Vue3 | Vite | Node.js
🙋大家好!我是毛毛张! 🌈个人首页: 神马都会亿点点的毛毛张 🚩今天毛毛张分享的是关于如何快速🏃♂️搭建一个前端工程化的项目的环境搭建以及流程🌠 文章目录 1.前端工程化环境搭建&#…...
4.CSS文本属性
4.1文本颜色 div { color:red; } 属性值预定义的颜色值red、green、blue、pink十六进制#FF0000,#FF6600,#29D794RGB代码rgb(255,0,0)或rgb(100%,0%,0%) 4.2对齐文本 text-align 属性用于设置元素内文本内容的水平对齐方式。 div{ text-align:center; } 属性值解释left左对齐ri…...
【工具整理】WIN换MAC机器使用工具整理
最近公司电脑升级,研发同学统一更换了 Mac Book Pro 笔记版电脑,整理一下安装了那些软件以及出处,分享记录下~ 知识库工具 1、语雀 网址:语雀,为每一个人提供优秀的文档和知识库工具 语雀 个人花园&…...
Elasticsearch向量检索需要的数据集以及768维向量生成
Elasticsearch8.17.0在mac上的安装 Kibana8.17.0在mac上的安装 Elasticsearch检索方案之一:使用fromsize实现分页 快速掌握Elasticsearch检索之二:滚动查询(scrool)获取全量数据(golang) Elasticsearch检索之三:官方推荐方案search_after…...
《小型支付商城系统》项目(一)DDD架构入门
目录 1.DDD架构 1.1充血模型 1.2领域模型 1.2.1实体 1.2.2值对象 1.2.3聚合 1.2.4领域服务 1.2.5工厂 1.2.6仓储(Repository) 2.DDD建模 3.DDD工程模型 项目介绍:知识星球 | 深度连接铁杆粉丝,运营高品质社群ÿ…...
web课程设计--酷鲨商城-springboot和vue
文章目录 页面截图技术分析数据库代码地址 页面截图 登陆页面: 分类列表 添加分类 轮播图列表 添加轮播图 商品列表 添加商品信息 技术分析 前端使用 html页面的 vue.js(vue2)和element-ui绘制前端界面 后台使用Springbootmybatis来实现crud。还有一…...
解决virtualbox克隆ubuntu虚拟机之后IP重复的问题
找遍了国内论坛,没一个能解决该问题的,所以我自己写个文章吧,真讨厌那些只会搬运的,污染国内论坛环境,搜一个问题,千篇一律。 问题 操作系统版本为"Ubuntu 24.04 LTS" lennytest1:~$ cat /etc…...
活动预告 |【Part1】Microsoft Azure 在线技术公开课:使用 Azure DevOps 和 GitHub 加速开发
课程介绍 通过 Microsoft Learn 免费参加 Microsoft Azure 在线技术公开课,掌握创造新机遇所需的技能,加快对 Microsoft Cloud 技术的了解。参加我们举办的“使用 Azure DevOps 和 GitHub 加速开发”活动,了解迁移到 DevOps 所需的合适工具和…...
SpiderFlow平台v0.5.0之数据库连接
一、寻找lib目录安装方式 在 SpiderFlow 平台中,连接数据库时需要指定数据库的 DriverClassName,并确保正确配置数据库驱动。通常,驱动文件(JAR 文件)需要放置在指定的文件夹中,以便 SpiderFlow 可以找到并…...
springboot集成阿里云短信服务
springboot集成阿里云短信服务 一.阿里云账号准备 流程:注册阿里云账号>短信服务>新增资质>新建签名>新建模版>申请秘钥>用代码测试 1.注册阿里云账号 2、登录成功后, ① 在首页搜索短信服务 ② 打开第一个搜索结果 ③ 免费开通 ④ 可以根据…...