LIUNX WINDOWS 部署启动JAVA前后端项目 LINUX安装mysql LINUX安装文件存储服务minio Ubuntu安装redis ubuntu安装rabbitMq

一、windows服务器部署nginx+启动  后端打包启动

Windows服务器:
在本地win+r 打开运行  输入mstsc进入

输入服务器账号密码.

前端部署

1、需要安装nginx  可以使用我的空压缩包 下面只是写出怎么直接用

需要在前端终端输入 npm run build 打包命令。

打好之后产生文件。

将其放到C:\**xm(项目文件名称 主要是存后端的jar包)\nginx-1.22.0(存放前端的文件)里面。

添加一个server 里面有好多server 新增一个第一个是前端的访问端口 后面两个是后端jar包里面的端口   hj是打包的dist的文件

​​​​​​​

在C:\**xm(项目文件名称)\nginx-1.22.0路径里面输入cmd,回车

关闭命令:nginx -s stop  查看log文件夹中是否还存在nginx.pid  存在未关闭,不存在关闭成功

运行:双击nginx.exe启动,查看log中是否存在nginx.pid 存在就是启动成功。

后端发版::::

打包后端jar包:

 将打包好的jar包传到服务器上。

1、把打好的jar包放到文件夹下

在cmd中输入java -jar XXXX-web.jar  启动jar包 

Linux部署nginx

登陆软件:FinalShell

上传命令:rz
删除命令:rm -rf 文件名1  
解压命令:unzip 文件名

sbin目录下: ./nginx -s reload //重启nginx命令

linux 卸载openjdk

 apt-get purge icedtea-* openjdk-*
 查询 + 卸载命令。

 java -version
查询安装版本

配置环境变量:
编辑etc目录下的profile文件

[root@wzxm72ns java]~ cd /etc
[root@wzxm72ns etc]~ vi profile

按a进入编辑模式,一直按下键到底部,在末尾新增

export JAVA_HOME=/usr/java/jdk1.8.0_144
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH
export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin
export PATH=$PATH:${JAVA_PATH}

使文件立即生效

source /etc/profile

测试

[root@wzxm72ns etc]~ javac

看版本
[root@wzxm72ns etc]~ java -version

linux安装mysql

Mysql安装位置:

安装来源:https://dev.mysql.com/downloads/(MySql官网)

安装版本:5.7.44(Oracle Linux RPM)

地址:ip:3306

1、输入命令:查看系统版本

cat /etc/redhat-release

查看系统是否已经安装过 MySQL
查看是否安装了 MySQL

rpm -qa | grep mysql

查看是否有安装 mariadb 没有则省略操作……

若有该软件,它与 MySQL 数据库有冲突,需要手动卸载

rpm -qa | grep mariadb

2、移除 MySQL 相关的软件

如果系统中没有安装过与 MySQL 相关的软件,直接跳到下一步

rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64

二、安装 MySQL

官网传送门

1. 找到压缩包的下载链接
点击 MySQL Community Server

选择 MySQL 的版本

低版本选择下载:

注意 MySQL 的版本需要与 Linux 的版本对应上
centos7 系统对应的 MySQL 是 el7
centos8 系统对应的 MySQL 是 el8


一般情况下,直接选择第一个安装包即可,第一个安装包的版本会不定时的更新,与本文所用的安装包有略微的差别,但是并不影响具体的使用
截止 2023-5-11 最新版为 mysql-8.0.33-1.el8.x86_64.rpm-bundle.tar

两种下载方法::::::::::::

  • 第一种,直接点击 No thanks, just start my download 进行下载,然后通过上传工具上传到服务器
  • 第二种,右键 No thanks, just start my download,选择复制链接,然后在服务器中通过 wget 命令下载到服务器

「使用第一种后 该方法可省略

通过 wget 命令下载到服务器,安装到 usr/local 目录,总共 838.4M,下载速度比较慢,需要耐心等待

cd /usr/local
1
wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.31-1.el8.x86_64.rpm-bundle.tar

 2、解压
解压之后会有很多包产生,为了方便查看,将其解压到 /usr/local/mysql_package 里面

mkdir /usr/local/mysql_package

cd /usr/local/mysql_package

tar -xvf /usr/local/mysql-8.0.31-1.el8.x86_64.rpm-bundle.tar -C /usr/local/mysql_package

安装顺序错误的话。它会指出谁依赖谁。就相当于先安装谁谁 

安装完成 ……

3、查看已安装的 MySQL 的版本

mysql -V
mysql --version

启动:

sudo systemctl start mysqld

4、配置 MySQL 服务
简单配置
查看 MySQL 服务状态 systemctl status mysqld
开启 MySQL 服务 systemctl start mysqld
设置 MySQL 服务开机自启 systemctl enable mysqld
重启 MySQL 服务 systemctl restart mysqld

5、简单配置
设置root的密码

第一次安装mysql后,我们可以需要为root设置一个密码

将password替换成相应的密码即可

#进入mysql终端
sudo mysql

#设置root密码 root是用户 password是你设置的密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

登录mysql

mysql -u root -p

输入刚刚设置的密码即可登录。

启3306端口访问: 默认情况下,MySQL的端口号为3306。要确保该端口已经在防火墙中开放,可以使用如下命令开启:

sudo ufw allow 3306

开启root用户远程登录: 为了安全起见,默认情况下,MySQL禁用了root用户的远程登录。要允许root用户通过远程连接登录,请按照以下步骤操作: a. 以root用户身份登录到MySQL:

sudo mysql -u root -p

b. 进入MySQL命令行后,执行以下命令开启root用户的远程访问权限:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

FLUSH PRIVILEGES;

注意将 '你的密码' 替换为你想设置的密码。

修改默认字符集为utf-8: 在MySQL中,默认字符集是latin1,如果你希望使用utf-8字符集,可以按照以下步骤进行修改: a. 以root用户身份登录到MySQL:

sudo mysql -u root -p

b. 执行以下命令修改默认字符集:

ALTER DATABASE 数据库名字 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

将 '数据库名字' 替换为你想修改的数据库名称。

新建izhuplatform用户: 如果你希望创建一个名为izhuplatform的新用户,并允许其连接到MySQL,请按照以下步骤操作: a. 以root用户身份登录到MySQL:

sudo mysql -u root -p

b. 执行以下命令创建新用户并授权:分别输入

CREATE USER 'izhuplatform'@'%' IDENTIFIED BY '密码';

GRANT ALL PRIVILEGES ON *.* TO 'izhuplatform'@'%' WITH GRANT OPTION;

​​​​​​​

FLUSH PRIVILEGES;

注意将 '密码' 替换为你想设置的密码。

6、配置环境变量

打开终端并切换到要编辑的用户的主目录。例如,如果要为用户名为“user”的用户设置MySQL环境变量,则应使用以下命令切换到该用户的主目录:

cd ~root

打开.bashrc文件。可以使用任何文本编辑器打开文件。例如,要使用nano编辑器打开文件,请使用以下命令:

nano .bashrc

在文件的末尾添加以下行,其中/path/to/mysql/bin是你的MySQL安装路径:

export PATH=$PATH:/path/to/mysql/bin

保存并退出文件。在nano中,可以按Ctrl+X键,然后按Y键确认保存。

mac本也必须是windows的ctrl。

应用更改。可以使用以下命令使更改生效:

source .bashrc

现在,你已经成功将MySQL环境变量添加到用户的.bashrc文件中。当你在终端中运行MySQL命令时,系统将自动搜索该路径以查找MySQL二进制文件。

UBUNTU安装mysql

首先更新apt源

sudo apt update

下载mysql-server

sudo apt install mysql-server

查看mysql的状态

systemctl status mysql

若没有启动 输入

systemctl start mysql

设置root的密码

第一次安装mysql后,我们可以需要为root设置一个密码

#进入mysql终端

sudo mysql

#设置root密码

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';

再次登陆就无法通过sudo mysql的方式登录了

使用登录mysql

mysql -u root -p

 进入提示输入密码 则设置密码成功。

输入exit退出登陆。

配置环境变量:

找到MySQL的安装路径:

which mysql

打开终端并切换到要编辑的用户的主目录。例如,如果要为用户名为“user”的用户设置MySQL环境变量,则应使用以下命令切换到该用户的主目录:

cd ~root

打开.bashrc文件。可以使用任何文本编辑器打开文件。例如,要使用nano编辑器打开文件,请使用以下命令:

nano .bashrc

在文件的末尾添加以下行,其中/path/to/mysql/bin是你的MySQL安装路径:

export PATH=$PATH:/path/to/mysql/bin

保存并退出文件。在nano中,可以按Ctrl+X键,然后按Y键确认保存。

mac本也必须是windows的ctrl。

应用更改。可以使用以下命令使更改生效:

source .bashrc

现在,你已经成功将MySQL环境变量添加到用户的.bashrc文件中。当你在终端中运行MySQL命令时,系统将自动搜索该路径以查找MySQL二进制文件。

简单配置:

开启3306端口访问: 默认情况下,MySQL的端口号为3306。要确保该端口已经在防火墙中开放,可以使用如下命令开启:

sudo ufw allow 3306

开启root用户远程登录: 为了安全起见,默认情况下,MySQL禁用了root用户的远程登录。要允许root用户通过远程连接登录,请按照以下步骤操作: a. 以root用户身份登录到MySQL:

sudo mysql -u root -p

b. 进入MySQL命令行后,执行以下命令开启root用户的远程访问权限:

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '你的密码' WITH GRANT OPTION;

FLUSH PRIVILEGES;

注意将 '你的密码' 替换为你想设置的密码。

修改默认字符集为utf-8: 在MySQL中,默认字符集是latin1,如果你希望使用utf-8字符集,可以按照以下步骤进行修改: a. 以root用户身份登录到MySQL:

sudo mysql -u root -p

b. 执行以下命令修改默认字符集:

ALTER DATABASE 数据库名字 CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

将 '数据库名字' 替换为你想修改的数据库名称。

新建izhuplatform用户: 如果你希望创建一个名为izhuplatform的新用户,并允许其连接到MySQL,请按照以下步骤操作: a. 以root用户身份登录到MySQL:

sudo mysql -u root -p

b. 执行以下命令创建新用户并授权:

CREATE USER 'izhuplatform'@'%' IDENTIFIED BY '密码';

GRANT ALL PRIVILEGES ON *.* TO 'izhuplatform'@'%' WITH GRANT OPTION;

​​​​​​​

FLUSH PRIVILEGES;

注意将 '密码' 替换为你想设置的密码。

查看软件安装位置::

which mysql

linux安装minio

安装来源:https://min.io/download#/linux(minio官网 RPM)

web管理页面端口:9001

web管理页面地址

api端口:9000

accessKey:              secretKey:

即时通讯bucketName桶名称:            

工作台bucketName桶名称:

启动:systemctl start minio

停止:systemctl stop minio

重启:systemctl restart minio

操作步骤:

在官网下载服务端和客户端对应的RPM包。

# 创建minio应用程序目录

mkdir -p /opt/minio/bin

# 创建minio数据目录

mkdir -p /NFS-data/minio/data

# 创建minio日志目录

mkdir -p /opt/minio/logs

cd /opt/minio/bin  //上传文件

rz  //选中文件 将两个文件上传

使用rpm -ivh ……  执行两个文件

rpm -ivh minio-20231120224007.0.0.x86_64.rpm

rpm -ivh mcli-20231120163059.0.0.x86_64.rpm

进入minio配置文件,输入下面配置后保存

vi /etc/default/minio

配置内容:

MINIO_ROOT_USER=admin
MINIO_ROOT_PASSWORD=8pqHyb2G46qp
MINIO_OPTS="--address :9000 --console-address :9001"
MINIO_VOLUMES="/NFS-data/minio/data"

:wq      //编辑后保存退出。

设置之后 在该目录下执行

./minio server $MINIO_VOLUMES

修改/usr/lib/systemd/system/minio.service 目录文件下的配置内容:

User=root
Group=root
ProtectProc=invisible

:wq      //编辑后保存退出。

重新加载systemd守护进程配置文件

systemctl daemon-reload

启动系统

systemctl start minio.service

如果出现错误:#查看服务状态

systemctl status minio.service

查看系统日志

journalctl -xe

如果启动不起来,大部分原因就是配置文件问题
要再次编辑一下配置文件“/etc/default/minio”,在该文件下执行

确保你对MinIO的可执行文件具有执行权限。你可以使用chmod命令来添加执行权限,例如:

chmod +x minio

确保你正确设置了MINIO_VOLUMES环境变量,并且指向了存在且可访问的路径。你可以使用echo命令来确认环境变量的值,例如:

echo $MINIO_VOLUMES

使用MinIO的可执行文件来启动服务,例如:

./minio server $MINIO_VOLUMES

如果你希望在后台运行服务,可以使用nohup命令:

nohup ./minio server $MINIO_VOLUMES &

开放端口 9000 9001

firewall-cmd --add-port=9000/tcp --permanent

firewall-cmd --add-port=9001/tcp --permanent

#重启服务

systemctl restart minio.service

在浏览器输入http://服务器ip:9001 进入web管理页面。

如果还是访问不到:

防火墙问题:如果您的Linux机器上启用了防火墙,可能会导致无法访问MinIO。请确保在防火墙规则中允许从外部访问MinIO所使用的端口(默认为9000)。您可以使用以下命令打开9000端口:

使用以下命令分别添加端口规则和重新加载防火墙:

sudo firewall-cmd --zone=public --add-port=9000/tcp --permanent​​​​​​​

sudo firewall-cmd --reload

输入用户名密码进行操作。

查看安装位置

which minio

ubuntu安装redis

安装来源:https://download.redis.io/releases/redis-7.0.5.tar.gz(官网)

安装版本:redis-7.0.5​​​​​​​

redis启动:systemctl start redis-server

redis关闭:service stop redis-server 

redis重启:service restart redis-server 

操作步骤:

1、将下载下来的redis放到/home/zj81/opt/redis路径下解压。

tar -xvf redis-7.0.5.zip

进入该文件下:

cd /home/zj81/opt/redis-7.0.5/src

安装命令:

sudo apt install redis-server

安装完成后,Redis 服务器将会自动启动。您可以使用以下命令来检查 Redis 服务器是否正在运行:

sudo systemctl status redis-server

如果 Redis 服务器没有自动启动,您可以使用以下命令手动启动它:

sudo systemctl start redis-server

测试是否安装通过:提示:\o/ All tests passed without errors!表示测试安装通过

 sudo make test

要测试 Redis 服务器是否正常工作,可以使用 Redis 命令行客户端:

redis-cli

//进入后exit退出

2、配置操作

通过sudo打开配置文件

sudo vim /home/zj81/opt/redis/redis.conf

将 bind 127.0.0.1 ::1 注释掉(允许Redis服务器接受来自任意IP地址的连接,而不仅限于本地回环地址)

# bind 127.0.0.1 ::1

将 protected-mode 改成 no(当 protected-mode 设置为 yes 时,Redis 只允许本地连接(通过 127.0.0.1 或 ::1 访问)和具有密码验证的远程连接。这有助于保护 Redis 免受未授权的访问和攻击。将 protected-mode 设置为 no 将禁用此安全特性,允许从任何地方连接 Redis,包括未经授权的访问者。)

protected-mode no

设置密码:在配置文件中找到并进行修改

requirepass yourpassword //yourpassword 是你要修改的密码

并添加以下行

aclfile "/etc/redis/redis.acl"

修改完成后,保存配置文件并退出编辑器

重启Redis服务器 使其生效

sudo systemctl restart redis-server// 重启 Redis 服务

我们已经配置好了 Redis,接下来创建一个新用户并设置密码,首先,打开 Redis 客户端:

redis-cli // 打开 Redis 客户端

验证设置是否生效

 // 打开 Redis 客户端尝试连接 Redis 服务:

AUTH yourpassword //auth 你设置的密码

//如果返回ok则验证成功。

如果设置未生效 则可以在客户端输入 修改你的密码

CONFIG SET requirepass "password"

 再次验证返回

验证redis服务器正在监听6379端口

ss -an | grep 6379

下一步,你将需要配置你的防火墙,允许网络流量通过 TCP 端口6379。

(这个操作是开放redis端口)

sudo ufw allow 6379

确保安全可以设置一下操作::通常你想要允许从一个指定 IP 地址或者一个指定 IP 范围来访问 Redis 服务器。例如,想要允许从192.168.121.0/24的连接,运行下面的命令:

sudo ufw allow proto tcp from IP地址/24 to any port 6379

确保你的防火墙被配置仅仅接受来自受信任 IP 的连接。

进行远程连接测试

redis-cli -h 10.211.55.7 ping

成功会得到:PONG 连接

redis-cli -h 地址

例如:redis-cli -h 192.168.1.1

查看防火墙状态

sudo ufw status

默认允许外部访问本机

sudo ufw default allow

拒接所有外来访问,本机能正常访问外部。

sudo ufw default deny

查看6379端口的监听状态

sudo netstat -tunlp | grep 6379 //查看6379端口信息

ubuntu安装rabbitmq

安装位置:

配置文件所在目录:

安装来源:通过系统的软件包管理器进行安装

安装版本:3.10.21-1

地址:服务器ip:15672

RabbitMQ启动:rabbitmqctl start_app

RabbitMQ关闭:rabbitmqctl stop

RabbitMQ状态:rabbitmqctl status

安装步骤:

  1. 安装rabbitmq,由于rabbitmq需要erlang语言支持,所以需要安装erlang。

查看erlang 软件包及其可用版本

apt search erlang

安装最新版

 apt-get install erlang

查看erlang 安装版本

erl

查看erlang与rabbitmq版本对应关系https://www.rabbitmq.com/which-erlang.html(rabbitmq官网)

更新安装包:

sudo apt-get update

安装最新版本或者安装指定版本,这里因为系统对应的erl版本低,所以使用指定版本。*必须要安装erl对应的版本才可以使用*

如果想要添加新的erl安装包提供了两个方法:

第一种好用(一):在 Ubuntu 上安装 Erlang/OTP,您可以使用以下命令来添加官方的 Erlang/OTP 存储库,并进行安装:

添加 Erlang 的官方存储库 GPG 密钥:

wget -O- https://packages.erlang-solutions.com/ubuntu/erlang_solutions.asc | sudo apt-key add -

添加 Erlang 的官方存储库到您的系统:

echo "deb https://packages.erlang-solutions.com/ubuntu focal contrib" | sudo tee /etc/apt/sources.list.d/erlang-solutions.list

注意:如果您使用的是其他版本的 Ubuntu,请将 "focal" 替换为您正在使用的 Ubuntu 版本代号。

更新包列表:

sudo apt update

安装 Erlang:

sudo apt install erlang

这将安装存储库中的最新版本的 Erlang。

(二)第二种方法 添加存储库:

wget https://packages.erlang-solutions.com/erlang-solutions_2.0_all.deb

sudo dpkg -i erlang-solutions_2.0_all.deb

​​​​​​​

sudo apt update

安装 Erlang/OTP:

sudo apt install erlang

这样,您就可以通过以上步骤在 Ubuntu 上安装最新版本的 Erlang/OTP。

第三种(3):

使用docker安装最新版本

 snap install docker

docker run -it erlang:26

如需卸载erl 卸载命令:sudo apt-get remove erlang

接下来安装rabbuitmq:

第一种方式(1)安装最新版本执行命令:

sudo apt-get install rabbitmq-server

第二种方式(2)安装指定版本执行命令:

准备环境:

curl -s https://packagecloud.io/install/repositories/rabbitmq/rabbitmq-server/script.deb.sh | sudo bash

查询可以安装的版本:

apt-cache madison rabbitmq-server    

如果没有对应版本

下载并添加 RabbitMQ 的 APT 存储库密钥:

wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -

添加 RabbitMQ 的 APT 存储库到您的系统:

echo "deb http://www.rabbitmq.com/debian/ testing main" | sudo tee /etc/apt/sources.list.d/rabbitmq.list

更新包列表:

sudo apt update

更新软件包报错的话

​​​​​​​
你可以按照以下步骤来添加 RabbitMQ 的仓库:

打开终端窗口。

编辑 /etc/apt/sources.list.d/rabbitmq.list 文件,运行以下命令进行编辑

sudo nano /etc/apt/sources.list.d/rabbitmq.list

如果该文件不存在,可以创建一个新的文件。

在编辑器中,添加以下内容:

deb https://packagecloud.io/rabbitmq/rabbitmq-server/ubuntu/ focal main

deb-src https://packagecloud.io/rabbitmq/rabbitmq-server/ubuntu/ focal main

请确保将 focal 替换为你正在使用的 Ubuntu 版本(例如,如果你使用的是 Ubuntu 20.04,则将 focal 替换为 bionic)。

保存更改并退出编辑器。在 Nano 编辑器中,按下 Ctrl + X,然后输入 Y 来保存更改。

导入 RabbitMQ 的签名密钥。运行以下命令:

curl -1sLf 'https://packagecloud.io/rabbitmq/rabbitmq-server/gpgkey' | sudo apt-key add -

更新软件包列表:

sudo apt update

安装命令:

sudo apt-get install rabbitmq-server=3.10.21-1

执行命令查看安装结果:

systemctl status rabbitmq-server

rabbitmq允许web访问:

rabbitmq-plugins enable rabbitmq_management

ubuntu开放端口供外网访问:

sudo ufw allow 15672

sudo ufw allow 5672

添加账号:·  #添加远程账号

rabbitmqctl add_user admin ZJ81d4yCMUM

#为账号设置权限

rabbitmqctl set_user_tags admin role

#修改密码 username是用户名 passeord是新密码

rabbitmqctl change_password username password

此时浏览器输入地址即可访问

(1)MQ消息队列简介:

MQ(Message Queue)消息队列,是基础数据结构中“先进先出”的一种数据结构。消息队列中间件是分布式系统中的

重要的组件,一般用来解决应用解耦,异步消息,流量削峰等问题,实现高性能,高可用,可伸缩和最终一致性架构。

中间件是一种独立的系统软件服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务

器的操作系统之上,管理计算资源和网络通信。中间件:中间件=平台+通信,这也就限定了只有用于分布式系统中才能叫中

间件,同时也把它与支撑软件和实用软件区分开来

消息中间件的组成

Broker : 消息服务器,作为server提供消息核心服务

Producer: 消息生产者,业务的发起方,负责生产消息传输给broker,

Consumer:消息消费者,业务的处理方,负责从broker获取消息并进行业务逻辑处理

Topic: 主题,发布订阅模式下的消息统一汇集地,不同生产者向topic发送消息,由MQ服务器分发到不同的订阅

者,实现消息的广播

Queue: 队列,PTP模式下,特定生产者向特定queue发送消息,消费者订阅特定的queue完成指定消息的接收

Message: 消息体,根据不同通信协议定义的固定格式进行编码的数据包,来封装业务数据,实现消息的传输。

(2)消息模型:PTP点对点(比较常用的模式)

redis

Redis 是使用ANSI C语言开发的一个高性能键-值存储(key-value store)数据库,是当今速度最快的内存型非关系型

(NoSQL)数据库。它常被称作是一款数据结构服务器(data structure server)。Redis的键值可以包括字符串(

strings)类型,同时它还包括哈希(hashes)、列表(lists)、集合(sets)和 有序集合(sorted sets)等数据类型

。对于这些数据类型,你可以执行原子操作。例如:对字符串进行附加操作(append);递增哈希中的值;向列表中增

加元素;计算集合的交集、并集与差集等。

为了获得优异的性能,Redis采用了内存中(in-memory)数据集(dataset)的方式。同时,Redis支持数据的持久化,

你可以每隔一段时间将数据集转存到磁盘上(snapshot),或者在日志尾部追加每一条操作命令(append onlyfile,aof

)。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值