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

搞定Apache Superset

踩雷了无数次终于解决了Superset的一系列问题

现在是北京时间2023年12月27日,亲测有效。

Superset概述

Apache Superset是一个现代的数据探索和可视化平台。它功能强大且十分易用,可对接各种数据源,包括很多现代的大数据分析引擎,拥有丰富的图表展示形式,并且支持自定义仪表盘。

特别注意:

下面的教程所使用的服务器操作系统为CentOS 7,Superset对接的数据源为MySQL数据库。

Superset官网地址:Welcome | Superset

安装Python环境

Superset是由Python语言编写的Web应用,要求Python3.7以上的环境。

安装Miniconda

conda是一个开源的包、环境管理器,可以用于在同一个机器上安装不同Python版本的软件包及其依赖,并能够在不同的Python环境之间切换,Anaconda包括Conda、Python以及一大堆安装好的工具包,比如:numpy、pandas等,Miniconda包括Conda、Python。

此处,我们不需要如此多的工具包,故选择MiniConda。

下载Miniconda(Python3版本)

下载地址:https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh

安装Miniconda

(1)执行以下命令进行安装,并按照提示操作,直到安装完成。

[zhangxi@hadoop102 lib]$ bash Miniconda3-latest-Linux-x86_64.sh

(2)在安装过程中,出现以下提示时,可以指定安装路径 /opt/module/miniconda3

(3)出现以下字样,即为安装完成

3)加载环境变量配置文件,使之生效

[zhangxi@hadoop102 lib]$ source ~/.bashrc

4)取消激活base环境

Miniconda安装完成后,每次打开终端都会激活其默认的base环境,我们可通过以下命令,禁止激活默认base环境。

[zhangxi@hadoop102 lib]$ conda config --set auto_activate_base false

创建Python3.8环境

1)配置conda国内镜像(此处可不配置,国外镜像比清华镜像更快)

(base) [zhangxi@hadoop102 ~]$ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
(base) [zhangxi@hadoop102 ~]$ conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
(base) [zhangxi@hadoop102 ~]$ conda config --set show_channel_urls yes

查看conda的镜像channel配置

[zhangxi@hadoop102 ~]$ conda config --show channels- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free- defaults

删除清华镜像,继续用默认的

[zhangxi@hadoop102 ~]$ conda config --remove-key channels
[zhangxi@hadoop102 ~]$ conda config --show channels- defaults

2)创建Python3.8环境

(base) [zhangxi@hadoop102 ~]$ conda create --name superset python=3.8.16

说明:conda环境管理常用命令

创建环境:conda create -n env_name

查看所有环境:conda info --envs

删除一个环境:conda remove -n env_name --all

3)激活superset环境

(base) [zhangxi@hadoop102 ~]$ conda activate superset

激活后效果如下图所示

说明:退出当前环境

(superset) [zhangxi@hadoop102 ~]$ conda deactivate

4)执行python -V命令查看python版本

(superset) [zhangxi@hadoop102 ~]$ python -V
Python 3.8.16

Superset部署

安装依赖

安装Superset之前,需安装以下所需依赖。

(superset) [zhangxi@hadoop102 ~]$ sudo yum install -y gcc gcc-c++ libffi-devel python-devel python-pip python-wheel python-setuptools openssl-devel cyrus-sasl-devel openldap-devel

安装Superset

1)更新pip

(superset) [zhangxi@hadoop102 ~]$ pip install --upgrade pip -i https://pypi.douban.com/simple/

说明:pip是python的包管理工具,可以和centos中的yum类比

2)安装Supetset

vim base.txt文件至任意路径,添加以下内容

aiohttp==3.8.1# via slackclient
aiosignal==1.2.0# via aiohttp
alembic==1.6.5# via flask-migrate
amqp==5.1.0# via kombu
apispec[yaml]==3.3.2# via flask-appbuilder
async-timeout==4.0.2# via aiohttp
attrs==21.2.0# via#   aiohttp#   jsonschema
babel==2.9.1# via flask-babel
backoff==1.11.1# via apache-superset
billiard==3.6.4.0# via celery
bleach==3.3.1# via apache-superset
brotli==1.0.9# via flask-compress
cachelib==0.4.1# via apache-superset
celery==5.2.2# via apache-superset
cffi==1.14.6# via cryptography
charset-normalizer==2.0.4# via aiohttp
click==8.0.4# via#   apache-superset#   celery#   click-didyoumean#   click-plugins#   click-repl#   flask#   flask-appbuilder
click-didyoumean==0.3.0# via celery
click-plugins==1.1.1# via celery
click-repl==0.2.0# via celery
colorama==0.4.4# via#   apache-superset#   flask-appbuilder
convertdate==2.3.2# via holidays
cron-descriptor==1.2.24# via apache-superset
croniter==1.0.15# via apache-superset
cryptography==3.4.7# via apache-superset
deprecation==2.1.0# via apache-superset
dnspython==2.1.0# via email-validator
email-validator==1.1.3# via flask-appbuilder
flask==2.0.3# via#   apache-superset#   flask-appbuilder#   flask-babel#   flask-caching#   flask-compress#   flask-jwt-extended#   flask-login#   flask-migrate#   flask-sqlalchemy#   flask-wtf
flask-appbuilder==4.1.3# via apache-superset
flask-babel==1.0.0# via flask-appbuilder
flask-caching==1.10.1# via apache-superset
flask-compress==1.10.1# via apache-superset
flask-jwt-extended==4.3.1# via flask-appbuilder
flask-login==0.4.1# via flask-appbuilder
flask-migrate==3.1.0# via apache-superset
flask-sqlalchemy==2.5.1# via#   flask-appbuilder#   flask-migrate
flask-talisman==0.8.1# via apache-superset
flask-wtf==0.14.3# via#   apache-superset#   flask-appbuilder
frozenlist==1.3.0# via#   aiohttp#   aiosignal
func-timeout==4.3.5# via apache-superset
geographiclib==1.52# via geopy
geopy==2.2.0# via apache-superset
graphlib-backport==1.0.3# via apache-superset
gunicorn==20.1.0# via apache-superset
hashids==1.3.1# via apache-superset
holidays==0.10.3# via apache-superset
humanize==3.11.0# via apache-superset
idna==3.2# via#   email-validator#   yarl
isodate==0.6.0# via apache-superset
itsdangerous==2.1.1# via#   flask#   flask-wtf
jinja2==3.0.3# via#   flask#   flask-babel
jsonschema==3.2.0# via flask-appbuilder
kombu==5.2.4# via celery
korean-lunar-calendar==0.2.1# via holidays
mako==1.1.4# via alembic
markdown==3.3.4# via apache-superset
markupsafe==2.0.1# via#   jinja2#   mako#   wtforms
marshmallow==3.13.0# via#   flask-appbuilder#   marshmallow-enum#   marshmallow-sqlalchemy
marshmallow-enum==1.5.1# via flask-appbuilder
marshmallow-sqlalchemy==0.23.1# via flask-appbuilder
msgpack==1.0.2# via apache-superset
multidict==5.1.0# via#   aiohttp#   yarl
numpy==1.22.1# via#   apache-superset#   pandas#   pyarrow
packaging==21.3# via#   bleach#   deprecation
pandas==1.3.4# via apache-superset
parsedatetime==2.6# via apache-superset
pgsanity==0.2.9# via apache-superset
polyline==1.4.0# via apache-superset
prison==0.2.1# via flask-appbuilder
prompt-toolkit==3.0.28# via click-repl
pyarrow==5.0.0# via apache-superset
pycparser==2.20# via cffi
pyjwt==2.4.0# via#   apache-superset#   flask-appbuilder#   flask-jwt-extended
pymeeus==0.5.11# via convertdate
pyparsing==3.0.6# via#   apache-superset#   packaging
pyrsistent==0.16.1# via jsonschema
python-dateutil==2.8.2# via#   alembic#   apache-superset#   croniter#   flask-appbuilder#   holidays#   pandas
python-dotenv==0.19.0# via apache-superset
python-editor==1.0.4# via alembic
python-geohash==0.8.5# via apache-superset
pytz==2021.3# via#   babel#   celery#   convertdate#   flask-babel#   pandas
pyyaml==5.4.1# via#   apache-superset#   apispec
redis==3.5.3# via apache-superset
selenium==3.141.0# via apache-superset
simplejson==3.17.3# via apache-superset
six==1.16.0# via#   bleach#   click-repl#   flask-talisman#   holidays#   isodate#   jsonschema#   polyline#   prison#   pyrsistent#   python-dateutil#   sqlalchemy-utils#   wtforms-json
slackclient==2.5.0# via apache-superset
sqlalchemy==1.3.24# via#   alembic#   apache-superset#   flask-appbuilder#   flask-sqlalchemy#   marshmallow-sqlalchemy#   sqlalchemy-utils
sqlalchemy-utils==0.37.8# via#   apache-superset#   flask-appbuilder
sqlparse==0.3.0# via apache-superset
tabulate==0.8.9# via apache-superset
typing-extensions==3.10.0.0# via apache-superset
urllib3==1.26.6# via selenium
vine==5.0.0# via#   amqp#   celery#   kombu
wcwidth==0.2.5# via prompt-toolkit
webencodings==0.5.1# via bleach
werkzeug==2.0.3# via#   flask#   flask-jwt-extended
wtforms==2.3.3# via#   flask-appbuilder#   flask-wtf#   wtforms-json
wtforms-json==0.3.3# via apache-superset
yarl==1.6.3# via aiohttp# The following packages are considered to be unsafe in a requirements file:
# setuptools

查看文件

(superset) [zhangxi@hadoop102 ~]$ ll ~
总用量 12
-rw-r--r--. 1 zhangxi zhangxi 5795 2月   3 15:27 base.txt
drwxrwxr-x. 2 zhangxi zhangxi 4096 2月   6 11:42 bin

该文件可用于指定superset依赖组件及版本,下载地址及内容如下。

https://raw.githubusercontent.com/apache/superset/2.0.0/requirements/base.txt

在base.txt所在目录下执行如下命令,安装SuperSet

(superset) [zhangxi@hadoop102 ~]$ pip install apache-superset==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple -r base.txt

说明:

  • -i的作用是指定镜像,这里选择国内镜像

  • -r的作用是指定superset依赖组件及相应版本,指向base.txt文件即可

配置Superset元数据库

Superset的元数据支持MySQL、PostgreSQL,此处采用MySQL。

1)在MySQL中创建superset元数据库

mysql> CREATE DATABASE superset DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

2)创建superset用户

mysql> create user superset@'%' identified WITH mysql_native_password BY 'superset';
mysql> grant all privileges on *.* to superset@'%' with grant option;
mysql> flush privileges;

3)修改superset配置文件

(superset) [zhangxi@hadoop102 ~]$ vim /opt/module/miniconda3/envs/superset/lib/python3.8/site-packages/superset/config.py

修改内容如下:(184、185行)

# SQLALCHEMY_DATABASE_URI = "sqlite:///" + os.path.join(DATA_DIR, "superset.db")
SQLALCHEMY_DATABASE_URI = 'mysql://superset:superset@hadoop102:3306/superset?charset=utf8'

4)安装python msyql驱动

(superset) [zhangxi@hadoop102 ~]$ conda install mysqlclient

5)初始化superset元数据

(superset) [zhangxi@hadoop102 ~]$ export FLASK_APP=superset
(superset) [zhangxi@hadoop102 ~]$ superset db upgrade

SupersetSet初始化

1)创建管理员用户

(superset) [zhangxi@hadoop102 ~]$ superset fab create-admin

2)初始化superset

(superset) [zhangxi@hadoop102 ~]$ superset init

启动Supterset

1)安装gunicorn

(superset) [zhangxi@hadoop102 ~]$ pip install gunicorn -i https://pypi.douban.com/simple/

说明:gunicorn是一个Python Web Server,可以和java中的Tomcat类比

2)启动Superset

确保当前conda环境为superset,及下图所示

启动

(superset) [zhangxi@hadoop102 ~]$ gunicorn --workers 5 --timeout 120 --bind hadoop102:8787  "superset.app:create_app()" --daemon

说明:

  • --workers:指定进程个数
  • --timeout:worker进程超时时间,超时会自动重启
  • --bind:绑定本机地址,即为Superset访问地址
  • --daemon:后台运行

登录Superset

访问http://hadoop102:8787

3)停止superset

(1)停掉gunicorn进程

(superset) [zhangxi@hadoop102 ~]$ ps -ef | awk '/superset/ && !/awk/{print $2}' | xargs kill -9

(2)退出superset环境

(superset) [zhangxi@hadoop102 ~]$ conda deactivate

superset启停脚本

1)创建superset.sh文件

[zhangxi@hadoop102 bin]$ vim superset.sh

内容如下

#!/bin/bashsuperset_status(){result=`ps -ef | awk '/gunicorn/ && !/awk/{print $2}' | wc -l`if [[ $result -eq 0 ]]; thenreturn 0elsereturn 1fi
}
superset_start(){source ~/.bashrcsuperset_status >/dev/null 2>&1if [[ $? -eq 0 ]]; thenconda activate superset ; gunicorn --workers 5 --timeout 120 --bind hadoop102:8787 --daemon 'superset.app:create_app()'elseecho "superset正在运行"fi}superset_stop(){superset_status >/dev/null 2>&1if [[ $? -eq 0 ]]; thenecho "superset未在运行"elseps -ef | awk '/gunicorn/ && !/awk/{print $2}' | xargs kill -9fi
}case $1 instart )echo "启动Superset"superset_start;;stop )echo "停止Superset"superset_stop;;restart )echo "重启Superset"superset_stopsuperset_start;;status )superset_status >/dev/null 2>&1if [[ $? -eq 0 ]]; thenecho "superset未在运行"elseecho "superset正在运行"fi
esac

2)加执行权限

[zhangxi@hadoop102 bin]$ chmod +x superset.sh

3)测试

启动superset

[zhangxi@hadoop102 bin]$ superset.sh start

停止superset

[zhangxi@hadoop102 bin]$ superset.sh stop

关于Apache Superset的使用后续讲解

相关文章:

搞定Apache Superset

踩雷了无数次终于解决了Superset的一系列问题 现在是北京时间2023年12月27日,亲测有效。 Superset概述 Apache Superset是一个现代的数据探索和可视化平台。它功能强大且十分易用,可对接各种数据源,包括很多现代的大数据分析引擎&#xff…...

【每日试题】java面试之ssm框架

以下是20道常见的SSM(SpringSpring MVCMyBatis)面试题目和答案: 什么是SSM框架? SSM是指SpringSpring MVCMyBatis的组合,它是Java Web开发中常用的轻量级框架集合。 介绍一下SSM框架各个组件的作用? Sprin…...

Flutter 疑难杂症集合

一. Flutter集成uni小程序sdk 1. 手机连接电脑测试打开uni小程序没问题,打包成apk后debug编译下的apk也没问题,但就是release编译的apk包打不开小程序。 报错情景:点击后页面会闪现一下黑色的背景,然后又跳转回了点击之前的页面。…...

PHP序列化总结1--序列化和反序列化的基础知识

序列化和反序列化的作用 1.序列化:将对象转化成数组或者字符串的形式 2.反序列化:将数组或字符串的形式转化为对象 为什么要进行序列化 这种数据形式中间会有很多空格,不同人有不同的书写情况,可能还会出现换行的情况 为此为了…...

【Linux】 last 命令使用

last 命令 用于检索和展示系统中用户的登录信息。它从/var/log/wtmp文件中读取记录,并将登录信息按时间顺序列出。 著者 Miquel van Smoorenburg 语法 last [-R] [-num] [ -n num ] [-adiox] [ -f file ] [name...] [tty...]last 命令 -Linux手册页 选项及作用…...

Git 分布式版本控制系统(序章1)

第一章 Git 分布式版本控制系统 为什么学Git? 某些企业面试需要掌握Git,同时,也方便管理自己的Qt项目。 一、Git 客户端下载(Windows) 下载地址 https://gitee.com/all-about-git#git-%E5%A4%A7%E5%85%A8 二、Git 的特点 分支…...

给WordPress网站添加返回顶部按钮

给WordPress网站底部添加一个按钮,点它就可以现实快速返回到顶部。有两种方法可以现实,一种是通过安装相关插件来实现。另外一种方式就是以纯属代码的方式来实现。 给WordPress网站底部添加一个按钮,点它就可以现实快速返回到顶部。有两种方…...

App Inventor 2 接入短信服务,实现短信验证码功能

发送短信验证码功能一般都是基于短信平台提供的sdk进行调用,这里是基于阿里云短信平台进行的开发,阿里云短信平台接入步骤请点此参考。 App Inventor 2拓展提供的函数如下: 主要提供2个函数,生成随机位数的数字随机码 和 发送短信…...

Linux环境grep搜索方法记录

1 grep grep 命令,用来搜索字符串所在位置,可以具体到不同文件,不同行; 在Linux 下,查看命令释义如下 zhaocubuntu2004:~$ grep --help Usage: grep [OPTION]... PATTERNS [FILE]... Search for PATTERNS in each FI…...

C语言-破解密码

题目描述 密码是我们生活中非常重要的东东,我们的那么一点不能说的秘密就全靠它了。哇哈哈. 接下来渊子要在密码之上再加一套密码,虽然简单但也安全。 假设老王原来一个BBS上的密码为zvbo941987,为了方便记忆,他通过一种算法把这个密码变换…...

ffmpeg 解码文件时的时间戳问题

实时流和普通文件 1 实时流 实时流编码时,我们一般不进行b帧编码,但是文件存储时为了减小大小,会增加b帧,实时流只带了I,P帧,那就会好很多 2 普通文件 很多文件带了b帧,所以要使用解码时间去同…...

Java企业电子招投标系统源代码,支持二次开发,采用Spring cloud框架

在数字化采购领域,企业需要一个高效、透明和规范的管理系统。通过采用Spring Cloud、Spring Boot2、Mybatis等先进技术,我们打造了全过程数字化采购管理平台。该平台具备内外协同的能力,通过待办消息、招标公告、中标公告和信息发布等功能模块…...

[python]基于faster whisper实时语音识别语音转文本

语音识别转文本相信很多人都用过,不管是手机自带,还是腾讯视频都附带有此功能,今天简单说下: faster whisper地址: https://github.com/SYSTRAN/faster-whisperhttps://link.zhihu.com/?targethttps%3A//github.com…...

2023纠结中前行? 2024继续还是放下?

喝下2023年的第一口雪碧,没有想像中的那么期待,甜水,放弃吧;还是吃些水果吧,不行吃块肉、喝两口酒~ 关于生活 挣扎了10几年的一颗牙“终于“掉了,几个月时间都在为新牙努力着;”进了医院就不在…...

原型链补充

1.什么是原型对象 函数的独有属性,他用prototype来表示,可以在函数的prototype上挂载一些公用的属性和方法,供实例化对象来访问。 2.__proto__属性 这个属性每一个对象都有,实例化对象就是通过这个属性,来访问原型对象上的属性和方法的。 3.三者之间的关系 1.在构造函数的原型…...

《Linux Nano命令详解:小而强大的文本编辑器》

《Linux Nano命令详解:小而强大的文本编辑器》 引言: 在Linux系统中,文本编辑是开发和系统管理中不可或缺的一部分。虽然有许多强大的文本编辑器可供选择,但Nano以其简单易用、小巧灵活而备受喜爱。本文将深入探讨Nano命令&…...

系列四、Eureka自我保护

一、Eureka自我保护 1.1、故障现象 保护模式主要用于一组客户端和Eureka Server之间存在网络分区场景下的保护。一旦进入保护模式,Eureka Server将会尝试保护其服务注册表中的信息,不再删除服务注册表中的数据,也就是不会注销任何微服务。如…...

C++回调函数-实操(二)

回调通常通过函数指针、函数对象&#xff08;仿函数&#xff09;、Lambda 表达式或者 std::function 来实现。 1、函数指针实现回调 这一方法实现回调比较好记&#xff0c;就记住把函数当作参数传给方法&#xff0c;在方法中调用方法。 #include <iostream>// 回调函数…...

MySQL中常用的用户授权操作

mysql 用户授权 1 &#xff09;概述 让每个应用程序&#xff0c;单独开一个mysql的用户权限所有mysql用户存储在 mysql库的user表中 2 ) 多种用户授权方式示例 show databases; use mysql;select user, authentication_string, host from mysql.user;-- 创建和删除用户 -- c…...

LabVIEW开发智能火灾自动报警系统

LabVIEW开发智能火灾自动报警系统 系统基于LabVIEW虚拟仪器开发&#xff0c;由火灾报警控制器、感温感烟探测器、手动报警器、声光报警器、ZigBee无线通讯节点以及上位机电脑等组成&#xff0c;展示了LabVIEW在智能化火灾预警与控制方面的应用。该系统通过结合二总线协议和Zig…...

Vagrant使用教程

vmware下载地址&#xff1a;https://www.vmware.com/products/workstation-pro/workstation-pro-evaluation.html VirtualBox下载地址&#xff1a;https://www.virtualbox.org/wiki/Downloads Vagrant下载地址&#xff1a;https://developer.hashicorp.com/vagrant/install#…...

【Java】ThreadLocal原理与使用场景

ThreadLocal原理&#xff1a; 字段&#xff1a; //ThreadLocal对象的哈希码 private final int threadLocalHashCode nextHashCode();//生成ThreadLocal对象的哈希码时&#xff0c;需要用到该对象&#xff0c;从0开始 private static AtomicInteger nextHashCode new Atomic…...

软件测试/测试开发丨Linux进阶命令(curl、jq)

1、 curl 接口请求 curl是一个发起请求数据给服务器的工具curl支持的协议FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP3、SMTP和RTSPcurl是一个非交互的工具 2、 curl 发起 get 请求 -G&#xff1a;使用get请求-d&#xf…...

模式识别与机器学习-SVM(带软间隔的支持向量机)

SVM&#xff08;带软间隔的支持向量机&#xff09; 软间隔思想的由来软间隔的引入 谨以此博客作为复习期间的记录。 软间隔思想的由来 在上一篇博客中&#xff0c;回顾了线性可分的支持向量机,但在实际情况中&#xff0c;很少有完全线性可分的情况&#xff0c;大部分线性可分…...

CentOS 7 firewalld+ipset+定时任务防御ssh暴力破解——筑梦之路

对于暴露在公网上的linux服务器&#xff0c;很容易被暴力破解登陆&#xff0c;为了增强服务器的安全性&#xff0c;因此对于ssh安全加固是很有必要的&#xff0c;这里主要介绍centos7 系统如何使用ipsetfirewalld定时任务来对ssh服务进行安全加固。 定义firewalld ipset fire…...

ElasticSearch的RestClient结合Sniffer提高可用性

一、背景 由于要安装分词器插件&#xff0c;所以需要重启ElasticSearch集群以使得新安装的插件生效 但是在重启集群的过程中&#xff0c;服务端代码却出现了大量错误&#xff0c;如下所示 java.net.ConnectException: Connection refused    at org.elasticsearch.client.R…...

【网络面试(2)】DNS原理-域名和IP地址的查询转换

从上一篇博客我们得知浏览器是如何生成了HTTP消息了&#xff0c;但是浏览器作为应用程序&#xff0c;是不具备向网络中发送请求的能力&#xff0c;而是需要委托给操作系统的内核协议栈来发送请求。在委托协议栈之前&#xff0c;浏览器还要做的一件事情就是将域名转换为IP地址。…...

【PHP】函数array_intersect、array_diff:从数组中取出、去除指定的几个键值

1.从数组中取出 &#xff1a;array_intersect 要从数组中取出指定的几个键值&#xff0c;可以使用 array_intersect_key 函数。以下是一个示例&#xff1a; $array [name > John,age > 30,email > johnexample.com,city > New York ];$keys [name, email];$resu…...

【华为机试】2023年真题B卷(python)-冠亚军排名-奖牌榜排名

一、题目 题目描述&#xff1a; 2012伦敦奥运会即将到来&#xff0c;大家都非常关注奖牌榜的情况&#xff0c;现在我们假设奖牌榜的排名规则如下. 1.首先gold medal数量多的排在前面 2.其次silver medal数量多的排在前面 3.然后bronze medal数量多的排在前面 4.若以上三个条…...

MyBatisPlus之逻辑删除

系列文章目录 提示&#xff1a;这里可以添加系列文章的所有文章的目录&#xff0c;目录需要自己手动添加 MyBatisPlus之逻辑删除 提示&#xff1a;写完文章后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 系列文章目录前言一、什么是逻辑删…...

网站建设要什么知识/网店运营工资一般多少

快速了解K4B2G1646F-BYK0K4B2G1646F-BYK0组织为16Mbit x16 I / O x8 bank设备。对于一般应用&#xff0c;该同步器件可实现高达1866Mb / sec / pin&#xff08;DDR3-1866&#xff09;的高速双倍数据速率传输速率。该芯片的设计符合以下关键DDR3 SDRAM特性&#xff0c;例如发布的…...

网站怎么做按钮/济南网站制作公司

豆瓣日记的编辑器一直以来都只支持纯文本的&#xff0c;因此无法将原先在LibreOffice中写的带有简单格式的文章导出。由于我在豆瓣主要写一些随笔性的内容&#xff0c;所以它们在LibreOffice中排版时也并未用到什么复杂的格式&#xff0c;充其量就是粗体、斜体、加亮等字符样式…...

郑州做的比较好网站公司吗/搜索引擎免费登录入口

【100个】计算机理论英文参考文献供您参考,希望能解决毕业生们的计算机理论论文参考文献哪里找相关问题,整理好参考文献那就开始写计算机理论论文吧&#xff01;一、计算机理论论文参考文献范文[1]抑制OFDM信号峰均比的PTS算法分析与优化.胡茂凯.陈西宏.刘强&#xff0c;2011陕…...

wordpress修改文章字体大小/搜狗链接提交入口

为什么80%的码农都做不了架构师&#xff1f;>>> 风波一天 上午支付出了问题&#xff0c;在问题之前把付款码项目测试环境跟踪任务接了过来&#xff0c;中午没出门&#xff0c;点了外卖&#xff0c;给弄好了下午本想来公司拿个东西回家&#xff0c;发现商品上架出了…...

做游戏网站用什么系统做/百度模拟点击软件判刑了

thinkphp3.2.3(5以下)的addAll返回值问题thinkphp3.2.3(5以下)的addAll返回值问题[var1]我们都知道mysql支持一次插入多条数据&#xff0c;如下&#xff1a;以用户表user为例&#xff0c;表结构自增主键id、账号username、密码password。insert into user(username,password) v…...

用wordpress制作网站模板下载/培训课程

1、Android系统默认支持三种字体&#xff0c;分别为&#xff1a;“sans”, “serif”, “monospace 2、在Android中可以引入其他字体 。 <?xml version"1.0" encoding"utf-8"?> <TableLayout xmlns:Android"http://schemas.android.com/…...