当前位置: 首页 > news >正文

Ubuntu介绍、与centos的区别、基于VMware安装Ubuntu Server 22.04、配置远程连接、安装jdk+Tomcat

目录

?编辑

一、Ubuntu22.04介绍

二、Ubuntu与Centos的区别

三、基于VMware安装Ubuntu Server 22.04

下载

VMware安装

1.创建新的虚拟机

2.选择类型配置

3.虚拟机硬件兼容性

4.安装客户机操作系统

5.选择客户机操作系统

6.命名虚拟机

7.处理器配置

8.虚拟机内存

9.网络类型

10. 选择I/O控制器类型

11.选择磁盘类型

12.选择磁盘

13.指定磁盘容量

14. 自定义硬件

15.指定映像文件

配置Ubuntu22.04?

1.运行Ubuntu

2.安装操作系统

3.选择操作系统语言

4.选择键盘布局

5.选择安装类型?

6.网络配置

7.代理地址配置

8.设置系统默认镜像源

9.引导式存储布局配置

10.存储配置

11.弹出框

12.配置用户名,密码

13.升级到Ubnutu pro

14.下载OpenSSH服务?

15.第三方软件服务包

16.配置完成

17.重新启动

四、配置远程连接?

配置root用户

1.设置root用户及密码

2.切换root用户

3.设置root用户远程连接

五、安装jdk+Tomcat

1.Jdk

2.Tomcat?


一、Ubuntu22.04介绍

Ubuntu官网地址:

https://ubuntu.com/

Ubuntu 22.04(也称为Ubuntu Jammy Jellyfish)是 Ubuntu 操作系统的一个版本,于 2022 年 4 月发布。Ubuntu 是一种基于 Debian 的开源操作系统,它使用 Linux 内核,并且拥有庞大的社区支持。Ubuntu 22.04 带来了许多新功能和改进,包括更好的性能、更新的软件包和增强的安全性。

以下是一些 Ubuntu 22.04 的新特性和改进:

  1. 新的默认应用程序:Ubuntu 22.04 带来了新的默认应用程序,包括新的文件管理器、文本编辑器和图像查看器。
  2. 更好的性能:Ubuntu 22.04 在性能方面进行了优化,使得系统更加流畅,响应速度更快。
  3. 更新的软件包:Ubuntu 22.04 包含了大量的更新软件包,包括最新的内核版本、更安全的浏览器和其他应用程序。
  4. 增强的安全性:Ubuntu 22.04 加强了系统的安全性,提供了更好的防火墙保护、更强的密码策略和其他安全功能。
  5. 更好的硬件支持:Ubuntu 22.04 提供了更好的硬件支持,包括对新硬件的兼容性改进和更好的驱动程序支持。
  6. 新的桌面环境:Ubuntu 22.04继续采用GNOME桌面环境,但带来了许多改进和新功能,包括更好的集成、更多的自定义选项和增强的性能。
  7. Snap支持:Ubuntu 22.04进一步增强了对Snap包的支持。Snap是一种应用包管理系统,允许用户从Snap Store安装和运行各种应用程序,无需担心依赖关系和其他配置问题。
  8. 改进的软件中心:Ubuntu的软件中心在Ubuntu 22.04中得到了改进,提供了更直观的用户界面和更多的应用程序选择。
  9. Yaru主题更新:Yaru是Ubuntu的默认主题,它在Ubuntu 22.04中得到了更新,提供了更加现代化和吸引人的外观。
  10. 更好的多任务处理:Ubuntu 22.04通过改进的任务管理器和窗口管理功能,使得多任务处理变得更加高效。
  11. 增强的网络功能:Ubuntu 22.04提供了增强的网络功能,包括对新网络协议的支持和更稳定的网络连接。
  12. 更好的云服务集成:Ubuntu 22.04进一步增强了与云服务提供商的集成,使得在云环境中部署和管理Ubuntu变得更加简单。

二、Ubuntu与Centos的区别

Ubuntu和CentOS都是流行的Linux发行版,但它们在多个方面存在一些区别。以下是它们之间的一些主要差异:

  • 软件包管理:
    Ubuntu使用APT(Advanced Package Tool)作为其软件包管理系统,而CentOS使用YUM(Yellowdog Updater Modified)。这两个工具都允许用户安装、更新、升级和删除软件包,但它们的语法和工作方式略有不同。

  • 默认桌面环境:
    Ubuntu的默认桌面环境是GNOME,而CentOS的默认桌面环境是GNOME或KDE。这意味着它们的默认外观和感觉可能会有所不同。

  • 社区支持:
    Ubuntu拥有庞大的社区支持,包括大量的教程、文档和第三方软件。这使得新用户在遇到问题时更容易找到解决方案。而CentOS的社区相对较小,但它仍然得到了很好的支持,特别是在企业环境中。

  • 更新和发布周期:
    Ubuntu的发布周期较短,通常每6个月发布一个新版本。这使得用户能够更快地获得新功能和安全更新。而CentOS的发布周期较长,通常每两到三年发布一个新版本。这使得它在稳定性和兼容性方面可能更具优势。

  • 目标用户群:
    Ubuntu主要面向桌面用户和个人用户,提供易于使用的界面和丰富的软件库。而CentOS主要面向企业用户和服务器管理员,提供稳定性和安全性更高的系统。

  • 安全性:
    CentOS通常被认为比Ubuntu更安全,因为它专注于稳定性和安全性。CentOS还提供了SELinux(Security-Enhanced Linux)等安全功能,以帮助保护系统免受攻击。

  • 软件仓库:
    Ubuntu 使用的是Ubuntu软件仓库,其中包含大量的开源软件包,而且更新较为频繁。
    CentOS 则使用的是EPEL(Extra Packages for Enterprise Linux)和RPM Fusion等仓库,这些仓库提供了更多的企业级软件包。

  • 默认shell:
    Ubuntu 默认使用的是Bash shell。
    CentOS 也默认使用Bash shell,但在一些新版本中可能会采用Zsh或其他shell。

  • 版本命名:
    Ubuntu 的版本命名基于年份和月份,如“20.04 LTS”。
    CentOS 的版本命名基于RHEL(Red Hat Enterprise Linux)的版本号,如“CentOS 8”对应的是“RHEL 8”。

  • 与上游的关系:
    Ubuntu 是基于Debian的,但它并不完全遵循Debian的发布计划,而是有自己的发布周期和特性。
    CentOS 是Red Hat Enterprise Linux (RHEL)的社区版本,它尽可能与RHEL保持同步,但免费提供。

  • 桌面环境的多样性:
    Ubuntu 除了默认的GNOME外,还提供了KDE、XFCE等其他桌面环境的官方支持。
    CentOS 主要关注服务器市场,因此其桌面环境的支持可能不如Ubuntu丰富。

  • 社区文化和氛围:
    Ubuntu 社区以其友好和乐于助人的氛围而闻名,其官方论坛和文档都非常活跃。
    CentOS 社区则更侧重于稳定性和企业级需求,社区氛围可能更加专业和严肃。

Ubuntu和CentOS各有优势,选择哪个发行版取决于你的具体需求。如果你需要一个易于使用且拥有丰富软件库的桌面系统,那么Ubuntu可能是一个更好的选择。如果你需要一个稳定、安全且专注于服务器环境的系统,那么CentOS可能更适合你。

三、基于VMware安装Ubuntu Server 22.04

下载

下载地址:

https://cn.ubuntu.com/download/server/step1

VMware安装

不会使用VMware虚拟机的朋友可以查看:VMware虚拟机保姆级安装及使用教程-CSDN博客

1.创建新的虚拟机

打开VMware Workstation ,创建新的虚拟机

2.选择类型配置

这里选择自定义(高级)方式、下一步

3.虚拟机硬件兼容性

默认即可、下一步

4.安装客户机操作系统

选择稍后安装操作系统,下一步

5.选择客户机操作系统

客户机操作系统选择:LInux 版本为:Ubuntu 64 位 下一步

6.命名虚拟机

根据自身需求命名及存放虚拟机位置,下一步

7.处理器配置

默认即可,也可根据自身需求更改。下一步

8.虚拟机内存

自定义虚拟机内存,可以手动输入也可以快键选定虚拟机内存,默认即可。下一步

9.网络类型

选择使用网络地址转换(NAT),下一步

10. 选择I/O控制器类型

选择LSI Logic(L)下一步

11.选择磁盘类型

选择 SCSI(S)下一步

12.选择磁盘

选择创建新虚拟磁盘 下一步

13.指定磁盘容量

设置最大磁盘大小,根据建议大小修改即可,选择将虚拟磁盘拆分成多个文件。下一步

14.指定磁盘文件

默认即可,下一步

14. 自定义硬件

选择自定义硬件

15.指定映像文件

选择 新CD/DVD(SATA),设置 启动时连接,使用ISO映像文件,点击浏览选择下载好的映像文件,最后关闭,回到步骤14.自定义硬件,完成即可

配置Ubuntu22.04

1.运行Ubuntu

开启此虚拟机

2.安装操作系统

操作均由上下键完成

默认选择 Try or Install Ubuntu Server ,选中后回车等待下载即可

3.选择操作系统语言

选择默认的English,回车下一步

4.选择键盘布局

默认English键盘布局即可,选择Done完成,下一步

5.选择安装类型

选择 Ubuntu Server (minimized)最小化安装,选择Done完成,下一步

6.网络配置

默认 DHCP 自动获取 IP 地址。选择Done完成,下一步

7.代理地址配置

默认,选择Done完成,下一步

8.设置系统默认镜像源

默认源:

http://cn.archive.ubuntu.com/ubuntu

阿里云源:

https://mirrors.aliyun.com/ubuntu

华为云源:

https://repo.huaweicloud.com/ubuntu

腾讯云源:

https://mirrors.cloud.tencent.com/ubuntu

清华大学源:

https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/

在Mirror address: 中修改系统默认源,此处使用为阿里云源,选择Done完成,下一步

9.引导式存储布局配置

默认即可,选择Done完成,下一步

10.存储配置

默认,选择Done完成,下一步

11.弹出框

选择Continue,回车

12.配置用户名,密码

配置完成后选择Done完成,下一步

13.升级到Ubnutu pro

选择 Skip for now 暂时跳过,选择continue继续下一步

14.下载OpenSSH服务

勾选 Install OpenSSH server ,选择Done完成,下一步

15.第三方软件服务包

根据个人需求添加,选择Done完成,下一步

16.配置完成

等待安装

17.重新启动

选择 reboot now 立即重新启动,重启页面按回车

18.登录页面

账号密码为步骤12配置的用户名及密码

四、配置远程连接

配置root用户

1.设置root用户及密码
sudo passwd
[sudo] password for wsl: //输入wsl用户密码
New password: //输入root密码
Retype new password: //确认root密码
passwd: password updated successfully //密码更新成功
2.切换root用户
su        //切换root用户
Password  //root用户密码
3.设置root用户远程连接

配置sshd_config文件

vim /etc/ssh/sshd_config

注:出现错误

bash: vim: command not found

安装vim软件包

apt-get install vim -y

在sshd_config配置文件中添加如下配置,

PermitRootLogin yes

输入"i"开始编辑,在 # Authentication后添加内容,添加完成后按Esc退出编辑模式,输入":wq"保存文件并退出

重启ssh服务,使用shell工具连接Ubuntu

service ssh restart

输入命令 “ip a” 查看Ubuntu IP地址,使用FinalShell连接工具连接Ubuntu

输入主机地址后,用root用户登录

五、安装jdk+Tomcat

1.Jdk

在 usr/local 目录中创建Java目录,上传jdk压缩包并解压

root@wsl:~# cd /usr/local/
root@wsl:/usr/local# mkdir java
root@wsl:/usr/local# cd java/
root@wsl:/usr/local/java# tar -zxvf jdk-8u151-linux-x64.tar.gz 

配置Jdk环境变量,编辑profile文件

sudo vim /etc/profile

// 注意!请修改export JAVA_HOME=请修改JDK解压路径
export JAVA_HOME=/usr/local/java/jdk1.8.0_301
export JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

设置环境变量生效,并查看环境变量是否配置成功

source /etc/profile
// 查看java版本
java -version

2.Tomcat

在 usr/local 目录中创建Tomcat目录,上传Tomcat压缩包并解压

root@wsl:/usr/local# mkdir Tomcat
root@wsl:/usr/local# cd Tomcat/
root@wsl:/usr/local/Tomcat# tar -zxvf apache-tomcat-8.5.20.tar.gz 

进入Tomcat中的conf目录修改tomcat-users.xml文件

root@wsl:/usr/local/Tomcat/apache-tomcat-8.5.20# cd /usr/local/Tomcat/apache-tomcat-8.5.20/conf/
root@wsl:/usr/local/Tomcat/apache-tomcat-8.5.20/conf# vim tomcat-users.xml

在文件最后根目录上方插入以下内容

<role rolename="manager-gui"/> 
<user username="admin" password="1234" roles="manager-gui"/>

进入到/usr/local/Tomcat/apache-tomcat-8.5.20/webapps/manager/META-INF目录中修改context.xml

// 修改context.xml文件
vim /usr/local/Tomcat/apache-tomcat-8.5.20/webapps/manager/META-INF/context.xml
// 注释内容
<Valve className="org.apache.catalina.valves.RemoteAddrValve"allow="127.d+.d+.d+|::1|0:0:0:0:0:0:0:1" />

进入Tomcat中的bin目录,启动Tomcat

root@wsl:cd /usr/local/Tomcat/apache-tomcat-8.5.20/bin/
root@wsl:/usr/local/Tomcat/apache-tomcat-8.5.20/bin# ./startup.sh 

在浏览器中输入Tomcat访问地址,点击Manager App

在弹出框中输入在tomcat-users.xml文件中设置的账号密码

进入页面后在WAR file to deploy 中选择需要的war包上传,需要war包的可以查看博主资源,

上传文件后,在Applications中点击文件运行

页面效果如下:

相关文章:

Ubuntu介绍、与centos的区别、基于VMware安装Ubuntu Server 22.04、配置远程连接、安装jdk+Tomcat

目录 ?编辑 一、Ubuntu22.04介绍 二、Ubuntu与Centos的区别 三、基于VMware安装Ubuntu Server 22.04 下载 VMware安装 1.创建新的虚拟机 2.选择类型配置 3.虚拟机硬件兼容性 4.安装客户机操作系统 5.选择客户机操作系统 6.命名虚拟机 7.处理器配置 8.虚拟机内存…...

springfox-swagger-ui 3.0.0 配置

在3.0中&#xff0c;访问地址URL变了。 http://地址:端口/项目名/swagger-ui/ SpringBoot maven项目引入 <dependency><groupId>io.springfox</groupId><artifactId>springfox-swagger2</artifactId><version>3.0.0</version> </…...

【PyTorch][chapter 29][李宏毅深度学习]Fine-tuning LLM

参考&#xff1a; https://www.youtube.com/watch?veC6Hd1hFvos 目录&#xff1a; 什么是 Fine-tune 为什么需要Fine-tuning 如何进行Fine-tune Fine-tuning- Supervised Fine-tuning 流程 Fine-tuning参数训练的常用方案 LORA 简介 示例代码 一 什么是 Fine-tune …...

Spring无法解决的循环依赖

在Spring框架中&#xff0c;循环依赖是指两个或多个Bean相互依赖&#xff0c;形成一个闭环。例如&#xff0c;Bean A依赖于Bean B&#xff0c;而Bean B又依赖于Bean A。虽然Spring通过三级缓存&#xff08;一级缓存、二级缓存、三级缓存&#xff09;机制解决了大多数情况下的循…...

C++的类Class

文章目录 一、C的struct和C的类的区别二、关于OOP三、举例&#xff1a;一个商品类CGoods四、构造函数和析构函数1、定义一个顺序栈2、用构造和析构代替s.init(5);和s.release();3、在不同内存区域构造对象4、深拷贝和浅拷贝5、构造函数和深拷贝的简单应用6、构造函数的初始化列…...

如何应对离别之:短暂离别

《若道离别》&#xff08;一&#xff09;&#xff1a;如何应对离别之短暂离别 大多数人还是不能很全心愉快地面对离别&#xff0c;哪怕只是短暂&#xff0c;还是从有到无的失落感&#xff0c;有人一天就适应&#xff0c;有人需要很久 不求离别无动于衷&#xff0c;但求使用部分…...

Harmony Next 跨平台开发入门

ArkUI-X 官方介绍 官方文档&#xff1a;https://gitee.com/arkui-x/docs/tree/master/zh-cn ArkUI跨平台框架(ArkUI-X)进一步将ArkUI开发框架扩展到了多个OS平台&#xff1a;目前支持OpenHarmony、Android、 iOS&#xff0c;后续会逐步增加更多平台支持。开发者基于一套主代码…...

笔试-二维数组2

应用 现有M(1<M<10)个端口组&#xff0c;每个端口组是长度为N(1<N<100)&#xff0c;元素均为整数。如果这些端口组间存在2个及以上的元素相同&#xff0c;则认为端口组可以关联合并&#xff1b;若可以关联合并&#xff0c;请用二位数组表示输出结果。其中&#xf…...

/opt安装软件,就可以使用man xx命令是为什么

引言 以neovim的安装过程为例 下载 curl -LO https://github.com/neovim/neovim/releases/latest/download/nvim-linux64.tar.gz sudo rm -rf /opt/nvim sudo tar -C /opt -xzf nvim-linux64.tar.gz添加环境变量前&#xff0c;是无法使用man nvim的 Then add this to your sh…...

vue3和vue2的区别有哪些差异点

Vue3 vs Vue2 主要差异对比指南 官网 1. 核心架构差异 1.1 响应式系统 Vue2&#xff1a;使用 Object.defineProperty 实现响应式 // Vue2 响应式实现 Object.defineProperty(obj, key, {get() {// 依赖收集return value},set(newValue) {// 触发更新value newValue} })Vue3…...

记录备战第十六届蓝桥杯的过程

1.学会了原来字符串也有比较方法&#xff0c;也就是字符串987 > 98 等等&#xff0c;可以解决拼最大数问题 题目链接&#xff1a;5.拼数 - 蓝桥云课 (lanqiao.cn) 2.今天又复习了一下bfs&#xff0c;感觉还是很不熟练&#xff0c;可能是那个过程我些许有点不熟悉&#xff…...

【PVE】Proxmox VE8.0+创建LXC容器安装docker

为了不影响PVE宿主机&#xff0c;通常使用套娃的形式安装Docker容器&#xff0c;再安装相关docker应用。首先在CT模板中创建 Linux 容器&#xff0c;推荐使用Debian。开启ssh登录&#xff0c;修改debian配置&#xff0c;安装docker 一、创建 LXC 容器 1、CT模板下载 点击“模…...

Semantic Kernel - Kernel理解

目录 一、关于Kernel 二、案例实战 三、运行截图 一、关于Kernel 微软的 Semantic Kernel 项目中,Semantic Kernel 是一个工具框架,旨在使得开发人员能够更容易地将大语言模型(如GPT)集成到不同的应用中。它通过提供一组接口、任务模板和集成模块,使开发者能够轻松地设计…...

【JavaWeb06】Tomcat基础入门:架构理解与基本配置指南

文章目录 &#x1f30d;一. WEB 开发❄️1. 介绍 ❄️2. BS 与 CS 开发介绍 ❄️3. JavaWeb 服务软件 &#x1f30d;二. Tomcat❄️1. Tomcat 下载和安装 ❄️2. Tomcat 启动 ❄️3. Tomcat 启动故障排除 ❄️4. Tomcat 服务中部署 WEB 应用 ❄️5. 浏览器访问 Web 服务过程详…...

「 机器人 」利用冲程对称性调节实现仿生飞行器姿态与方向控制

前言 在仿生扑翼飞行器中,通过改变冲程对称性这一技术手段,可以在上冲与下冲两个阶段引入不对称性,进而产生额外的力或力矩,用于实现俯仰或其他姿态方向的控制。以下从原理、在仿生飞行器中的应用和典型实验示例等方面进行梳理与阐述。 1. 冲程对称性原理 1.1 概念:上冲与…...

力扣算法题——11.盛最多水的容器

目录 &#x1f495;1.题目 &#x1f495;2.解析思路 本题思路总览 借助双指针探索规律 从规律到代码实现的转化 双指针的具体实现 代码整体流程 &#x1f495;3.代码实现 &#x1f495;4.完结 二十七步也能走完逆流河吗 &#x1f495;1.题目 &#x1f495;2.解析思路…...

企业微信SCRM开创客户管理新纪元推动私域流量高效转化

内容概要 在当今瞬息万变的数字化时代&#xff0c;企业面临着前所未有的客户管理挑战。消费者的需求日益多样化&#xff0c;他们希望能够随时随地与品牌沟通。因此&#xff0c;越来越多的企业意识到&#xff0c;传统的客户管理方式已无法满足市场的需求。在这样的背景下&#…...

C++和Python实现SQL Server数据库导出数据到S3并导入Redshift数据仓库

用C实现高性能数据处理&#xff0c;Python实现操作Redshift导入数据文件。 在Visual Studio 2022中用C和ODBC API导出SQL Server数据库中张表中的所有表的数据为CSV文件格式的数据流&#xff0c;用逗号作为分隔符&#xff0c;用双引号包裹每个数据&#xff0c;字符串类型的数据…...

ESP8266 NodeMCU与WS2812灯带:实现多种花样变换

在现代电子创意项目中&#xff0c;LED灯带的应用已经变得极为广泛。通过结合ESP8266 NodeMCU的强大处理能力和FastLED库的高效功能&#xff0c;我们可以轻松实现多达100种灯带变换效果。本文将详细介绍如何使用Arduino IDE编程&#xff0c;实现从基础到高级的灯光效果&#xff…...

OpenAI 发布首个 AI 智能体

OpenAI 发布首个 AI 智能体 当地时间 1 月 23 日&#xff0c;OpenAI 发布了首个 AI 智能体 Operator124。以下是关于它的详细介绍2&#xff1a; 功能用途 操作网页&#xff1a;可模拟人类操作网页浏览器&#xff0c;能进行点击、滚动、输入等操作&#xff0c;例如在 OpenTable…...

【Linux】gcc/g++的使用

目录 一、gcc/g简介 二、编译和链接 预处理 编译 汇编 连接&#xff08;生成可执行文件或库文件&#xff09; 三、动态链接和静态链接 静态库和动态库 gcc其他常用选项 合集传送门&#xff1a;Linux_uyeonashi的博客-CSDN博客 一、gcc/g简介 GCC&#xff08;GNU Com…...

Kmesh v1.0 正式发布!7 大特性提升网络流量管理效率和安全性

Kmesh v1.0 正式发布&#xff01;7 大特性提升网络流量管理效率和安全性 2025 年新年伊始&#xff0c;Kmesh 团队正式发布了 Kmesh v1.0234。以下是 Kmesh v1.0 提升网络流量管理效率和安全性的 7 大特性35&#xff1a; 加密通信&#xff1a;引入 IPsec 协议对节点间流量加密&a…...

Day45:元组的创建

在 Python 中&#xff0c;元组&#xff08;tuple&#xff09;是一种不可变的序列类型。与列表&#xff08;list&#xff09;不同&#xff0c;元组一旦创建就无法修改它们的内容。元组是有序的&#xff0c;可以包含不同类型的元素&#xff0c;支持索引和切片操作&#xff0c;但不…...

Rust:如何动态调用字符串定义的 Rhai 函数?

在 Rust 中使用 Rhai 脚本引擎时&#xff0c;你可以动态地调用传入的字符串表示的 Rhai 函数。Rhai 是一个嵌入式脚本语言&#xff0c;专为嵌入到 Rust 应用中而设计。以下是一个基本示例&#xff0c;展示了如何在 Rust 中调用用字符串传入的 Rhai 函数。 首先&#xff0c;确保…...

在 Ubuntu22.04 上安装 Splunk

ELK感觉太麻烦了&#xff0c;换个日志收集工具 Splunk 是一种 IT 工具&#xff0c;可帮助在任何设备上收集日志、分析、可视化、审计和创建报告。简单来说&#xff0c;它将“机器生成的数据转换为人类可读的数据”。它支持从虚拟机、网络设备、防火墙、基于 Unix 和基于 Windo…...

单片机基础模块学习——数码管(二)

一、数码管模块代码 这部分包括将数码管想要显示的字符转换成对应段码的函数&#xff0c;另外还包括数码管显示函数 值得注意的是对于小数点和不显示部分的处理方式 由于小数点没有单独占一位&#xff0c;所以这里用到了两个变量i,j用于跳过小数点导致的占据其他字符显示在数…...

DAY01 面向对象回顾、继承、抽象类

学习目标 能够写出类的继承格式public class 子类 extends 父类{}public class Cat extends Animal{} 能够说出继承的特点子类继承父类,就会自动拥有父类非私有的成员 能够说出子类调用父类的成员特点1.子类有使用子类自己的2.子类没有使用,继承自父类的3.子类父类都没有编译报…...

LeetCode:40. 组合总和 II(回溯 + 剪枝 Java)

目录 40. 组合总和 II 题目描述&#xff1a; 实现代码与解析&#xff1a; 回溯 剪枝 原理思路&#xff1a; 40. 组合总和 II 题目描述&#xff1a; 给定一个候选人编号的集合 candidates 和一个目标数 target &#xff0c;找出 candidates 中所有可以使数字和为 target …...

周末总结(2024/01/25)

工作 人际关系核心实践&#xff1a; 要学会随时回应别人的善意&#xff0c;执行时间控制在5分钟以内 坚持每天早会打招呼 遇到接不住的话题时拉低自己&#xff0c;抬高别人(无阴阳气息) 朋友圈点赞控制在5min以内&#xff0c;职场社交不要放在5min以外 职场的人际关系在面对利…...

解决日志中 `NOT NULL constraint failed` 异常的完整指南

在开发和运维过程中,日志是我们排查问题的重要工具。然而,当日志中出现类似 NOT NULL constraint failed 的异常时,往往意味着数据库约束与代码逻辑不匹配。本文将详细分析此类问题的原因,并提供完整的解决方案。 © ivwdcwso (ID: u012172506) 问题描述 在同步 AWS …...

线性规划:机器学习中的优化利器

一、线性规划的基本概念 线性规划&#xff08;Linear Programming, LP&#xff09;是运筹学中数学规划的一个重要分支&#xff0c;用于在一组线性不等式的约束条件下&#xff0c;找到线性目标函数的最大值或最小值。其问题可以表述为&#xff1a; 在一组线性约束条件 s.t.&am…...

Flutter子页面向父组件传递数据方法

在 Flutter 中&#xff0c;如果父组件需要调用子组件的方法&#xff0c;可以通过以下几种方式实现。以下是常见的几种方法&#xff1a; 方法 1&#xff1a;使用 GlobalKey 和 State 调用子组件方法 这是最直接的方式&#xff0c;通过 GlobalKey 获取子组件的 State&#xff0c…...

乐鑫 ESP32-C6 通过 Thread 1.4 互操作性认证

乐鑫信息科技 (688018.SH) 很高兴地宣布&#xff0c;ESP32-C6 已经成功通过 Thread 1.4 互操作性认证。这一成就标志着乐鑫在提供先进物联网解决方案之路上又迈进了重要一步。ESP32-C6 在 Thread Group 授权实验室的严格测试中&#xff0c;展现了与最新 Thread 1.4 协议的无缝兼…...

机器学习2 (笔记)(朴素贝叶斯,集成学习,KNN和matlab运用)

朴素贝叶斯模型 贝叶斯定理&#xff1a; 常见类型 算法流程 优缺点 集成学习算法 基本原理 常见方法 KNN&#xff08;聚类模型&#xff09; 算法性质&#xff1a; 核心原理&#xff1a; 算法流程 优缺点 matlab中的运用 朴素贝叶斯模型 朴素贝叶斯模型是基于贝叶斯…...

docker安装elk6.7.1-搜集java日志

docker安装elk6.7.1-搜集java日志 如果对运维课程感兴趣&#xff0c;可以在b站上、A站或csdn上搜索我的账号&#xff1a; 运维实战课程&#xff0c;可以关注我&#xff0c;学习更多免费的运维实战技术视频 0.规划 192.168.171.130 tomcat日志filebeat 192.168.171.131 …...

苍穹外卖-day06

[!IMPORTANT] HttpClient 是什么&#xff1f;它的作用是什么&#xff1f;在微信登录流程中&#xff0c;code 是什么&#xff1f;它的作用是什么&#xff1f;微信登录的具体步骤有哪些&#xff1f;在微信登录流程中&#xff0c;token 的作用是什么&#xff1f;在微信登录中&…...

iic、spi以及uart

何为总线&#xff1f; 连接多个部件的信息传输线&#xff0c;是部件共享的传输介质 总线的作用&#xff1f; 实现数据传输&#xff0c;即模块之间的通信 总线如何分类&#xff1f; 根据总线连接的外设属于内部外设还是外部外设将总线可以分为片内总线和片外总线 可分为数…...

如何高效启动并优化你的Google广告?

在现代数字营销中&#xff0c;Google广告&#xff08;Google Ads&#xff09;已经成为提升品牌曝光、吸引潜在客户和推动销售增长的重要工具。无论你是刚接触广告投放的新手&#xff0c;还是希望优化广告效果的资深营销人员&#xff0c;理解如何有效启动并管理Google广告至关重…...

【Android】布局文件layout.xml文件使用控件属性android:layout_weight使布局较为美观,以RadioButton为例

目录 说明举例 说明 简单来说&#xff0c;android:layout_weight为当前控件按比例分配剩余空间。且单个控件该属性的具体数值不重要&#xff0c;而是多个控件的属性值之比发挥作用&#xff0c;例如有2个控件&#xff0c;各自的android:layout_weight的值设为0.5和0.5&#xff0…...

低代码系统-产品架构案例介绍、简道云(七)

今天分析另外一个零代码、低代码产品-简道云&#xff0c;跟所有低代码产品的架构图一样&#xff0c;高、大、炫、美。 依然是从下至上&#xff0c;从左到右的顺序。 开发层 搭建中心 表单、流程、报表、用户中心&#xff0c;还是这些内容&#xff0c;自定义打印很多平台都有&am…...

RabbitMQ 分布式高可用

文章目录 前言一、持久化与内存管理1、持久化机制2、内存控制1、命令行2、配置文件 3、内存换页4、磁盘控制 二、集群1、Erlang的分布式特性2、RabbitMQ的节点类型2.1、磁盘节点 (Disk Node)2.2、内存节点 (RAM Node) 3、构建集群3.1 普通集群3.2 镜像队列3.3、高可用实现方案3…...

使用Pytest Fixtures来提升TestCase的可读性、高效性

关注开源优测不迷路 大数据测试过程、策略及挑战 测试框架原理&#xff0c;构建成功的基石 在自动化测试工作之前&#xff0c;你应该知道的10条建议 在自动化测试中&#xff0c;重要的不是工具 在编写单元测试时&#xff0c;你是否发现自己有很多重复代码&#xff1f; 数据库设…...

qt QUrl详解

1、概述 QUrl是Qt框架中用于处理URL&#xff08;统一资源定位符&#xff09;的类&#xff0c;它提供了构建、解析、编码、解码和处理URL的功能。QUrl支持多种协议&#xff0c;如HTTP、HTTPS、FTP以及文件URL等&#xff0c;并能处理URL的各个组成部分&#xff0c;如协议、主机、…...

从0到1:C++ 开启游戏开发奇幻之旅(一)

目录 为什么选择 C 进行游戏开发 性能卓越 内存管理精细 跨平台兼容性强 搭建 C 游戏开发环境 集成开发环境&#xff08;IDE&#xff09; Visual Studio CLion 图形库 SDL&#xff08;Simple DirectMedia Layer&#xff09; SFML&#xff08;Simple and Fast Multim…...

IGBT的损耗计算的学习【2025/1/24】

可以通过示波器实测IGBT电压电流波形&#xff0c;然后通过示波器的math功能将电压电流波形乘积后积分求损耗。 软开管&#xff1a;给了导通信号&#xff0c;但是电流并没有从此IGBT流过 IGBT&#xff08;绝缘栅双极晶体管&#xff09;的损耗主要分为 导通损耗 和 开关损耗 两部…...

Python从0到100(八十五):神经网络-使用迁移学习完成猫狗分类

前言: 零基础学Python:Python从0到100最新最全教程。 想做这件事情很久了,这次我更新了自己所写过的所有博客,汇集成了Python从0到100,共一百节课,帮助大家一个月时间里从零基础到学习Python基础语法、Python爬虫、Web开发、 计算机视觉、机器学习、神经网络以及人工智能…...

Oracle迁移DM数据库

Oracle迁移DM数据库 本文记录使用达梦官方数据迁移工具DTS&#xff0c;将Oracle数据库的数据迁移至达梦数据库。 1 数据准备 2 DTS工具操作步骤 2.1 创建工程 打开DTS迁移工具&#xff0c;点击新建工程&#xff0c;填写好工程信息&#xff0c;如图&#xff1a; 2.2 新建迁…...

通过 NAudio 控制电脑操作系统音量

根据您的需求&#xff0c;以下是通过 NAudio 获取和控制电脑操作系统音量的方法&#xff1a; 一、获取和控制系统音量 &#xff08;一&#xff09;获取系统音量和静音状态 您可以使用 NAudio.CoreAudioApi.MMDeviceEnumerator 来获取系统默认音频设备的音量和静音状态&#…...

AI刷题-最小化团建熟悉程度和

目录 问题描述 输入格式 输出格式 解题思路&#xff1a; 状态表示 状态转移 动态规划数组 预处理 实现&#xff1a; 1.初始化&#xff1a; 2.动态规划部分&#xff1a; &#xff08;1&#xff09;对于已分组状态的&#xff0c;跳过&#xff1a; &#xff08;2&…...

Day36:统计字符串个数

在 Python 中&#xff0c;字符串的统计功能是处理文本数据时非常重要的一部分。我们可以使用多种方法来统计字符串中的字符、子字符串、单词以及出现次数等。Python 提供了内建的方法和函数&#xff0c;如 count()、len() 和正则表达式&#xff0c;可以帮助我们高效地进行这些统…...