分布式数据库原理及技术题目汇总(上)

   题目汇总

  • 选择

1.(单选题,3.0分)以下说法中不正确的是(B )。

A.HIVE中create table命令使用时,表类型可以存储为ORC。

B.HIVE中create table命令使用时,必须包含row format delimited。

C.HIVE中create table命令使用时若含row format delimited,则这句应放在限制语句的第一条

D.HIVE中create table命令使用时,行与行的间隔符只能是\n。

正确答案是B。在HIVE中,create table命令使用时,并不一定必须包含row format delimited。这个子句是用来指定表的行格式,如果不指定,默认使用文本格式。因此,可以创建不包含row format delimited的表,但在处理某些特殊格式的数据时,这个子句可能会很有用。

2.(单选题,3.0分)将本地/data/tmp.txt导入到表tv,采用load指令后,/data/tmp.txt是否还存在?( A

A.存在

B.不能确定

C.不存在

A.正确。当使用load data local inpath命令时,Hive会将本地文件复制到HDFS的目标表中,而不会删除本地文件。所以,/data/tmp.txt仍然存在于本地文件系统中。

3.(单选题,5.0分)当发现hive脚本执行时报错信息中包含如下内容:

FAlLEDSClassCastExceptionorg.apache.hadoop.hive.serde2.typeinfo.PrimitiveTIypelnfocannotbecasttoorg.apache.hadoop.hive.serde2.typeinfo.DecimalTypelnfo 则此脚本最可能存在的问题是什么?(B )

A.网络问题

B.字符串和数值类型转换错误

C.GROUP BY中包含详单的字段(字段重复)

D.hive-site配置出错

B正确。这个错误是由于字符串和数值类型转换错误导致的。可能是在创建表或者查询表的时候,指定了错误的数据类型,或者使用了错误的分隔符。

4.(单选题,5.0分)关于HIVE SQL基本操作描述正确的是( C

A.一旦表创建好,不可再修改列名

B.一旦表创建好,不可再修改表名

C.创建外部表时需要指定external关键字

D.一旦表创建好,不可再增加新列。

A.错误。Hive中可以使用alter table命令来修改表的列名。例如,如果想把表stu的列name改为student_name,可以这样写:

alter table stu change name student_name string;

B.错误。Hive中可以使用alter table命令来修改表的名字。例如,如果想把表stu改为student,可以这样写:

alter table stu rename to student;

C.正确。Hive中创建外部表时需要指定external关键字。外部表的特点是,当删除表时,只会删除表的元数据,而不会删除表的数据。例如,如果想创建一个外部表student,并指定其数据的位置,可以这样写:

create external table student (id int, name string)

location '/user/student';

D.错误。Hive中可以使用alter table命令来增加新列。例如,如果想给表student增加一个score列,可以这样写:

alter table student add columns (score int);

所以,正确答案是C。

5.(单选题,3.0分)

Hive是由哪家公司开发的开源大数据处理组件(D )。

A.Apache

B.Amazon

C.Google

D.Facebook

Hive是基于Hadoop的数据仓库工具

D.正确。Hive是由Facebook开源的,用于解决海量结构化日志的数据统计工具。

所以,正确答案是D。

6.(单选题,3.0分)关于Hive与传统关系型数据库的对比,错误的是( A

A.由于Hive基于大数据平台,所以查询效率比传统数据库快

B.传统关系型数据库的索引机制发展的非常成熟,而Hive的索引机制还很低效

C.由于Hive的数据存储在HDFS中,所以可以保证数据的高容错、高可靠

D. Hive基于HDFS存储,理论上存储量可无限扩展,而传统数据库存储量有上限

A.错误。Hive并不比传统数据库查询效率快,因为Hive是基于MapReduce引擎的,而MapReduce引擎是适合批量处理大规模数据的,而不是适合实时查询的。Hive的查询延迟比传统数据库高很多。

B.正确。传统关系型数据库的索引机制确实发展的非常成熟,而Hive的索引机制还很低效。Hive的索引只能加速部分查询,而且需要用户手动创建和维护。传统数据库的索引可以自动创建和优化,而且可以支持多种查询类型。

C.正确。Hive的数据存储在HDFS中,所以可以保证数据的高容错、高可靠。HDFS是一个分布式文件系统,它可以将数据分块存储在多个节点上,并且提供数据的备份和恢复机制 。传统数据库的数据存储在本地文件系统中,如果文件系统损坏或者节点故障,数据可能会丢失或者不可用。

D.正确。Hive基于HDFS存储,理论上存储量可无限扩展,而传统数据库存储量有上限。HDFS是一个可扩展的文件系统,它可以通过增加节点来增加存储空间 。传统数据库的存储空间受到单个节点的硬件限制,如果要扩展存储空间,需要更换更大的硬盘或者使用更复杂的分布式数据库架构。

所以,正确答案是A。

7.(单选题,2.0分)下列哪种结构不属于HIVE的存储结构(A )。

A.分区

B.桶表

C.外部表

D.分区表

hive的存储结构

1.数据仓库:在 HDFS 中表现为${hive.metastore.warehouse.dir}目录下一个文件夹

2.表:hive的表分为内部表、外部表、分区表、分桶表,表在hdfs中的表现形式也是目录,

但是不同的表之间的表现形式不同

3.视图:物化,hive是不会进行物化,相当于给一个sql语句建立了一个快捷方式,保存的是一个视图中的sql语句。只读,基于基表创建。

4.数据文件 :表中的真实数据

所以选A

8.(单选题,3.0分)Hive中要想支持事务功能,则表类型应存储成类型(B )。

A.可以是ORC

B.必须是ORC

C.必须是textfile

D.可以是tar.gz

B.正确。Hive中支持事务功能的表类型必须是ORC,因为ORC格式具有优化的行列存储、压缩、索引等特性,能够提高事务表的查询和更新性能。Hive中创建事务表时,需要指定stored as orc。

D.错误。Hive中支持事务功能的表类型不能是tar.gz,因为tar.gz格式不支持ACID语义。tar.gz格式是一种压缩文件格式,它不是Hive的内置存储格式,需要使用自定义的SerDe和InputFormat/OutputFormat来读写。

9.(单选题,3.0分)将hdfs中/data/tmp.txt通过load指令加载到表tc中,源文件/data/tmp.txt是否在存在?(A

A.不存在

B.不能确定

C.存在

A.正确。当使用load data inpath命令时,Hive会将HDFS文件移动到目标表中,而不会复制。所以,/data/tmp.txt在加载到表tc后就不存在了。

C.错误。当使用load data local inpath命令时,Hive会将本地文件复制到HDFS的目标表中,而不会删除本地文件。所以,如果/data/tmp.txt是本地文件,那么它就仍然存在。但是,如果/data/tmp.txt是HDFS文件,那么它就不存在了。

所以,正确答案是A

10.(单选题,2.0分)

Hive定义一个自定义函数类时,需要继承以下哪个类( A

A.UDF

B.HQL

C.FunctionRegistry

D. MapReduce

A.正确。Hive中自定义函数有三种类型:UDF(一对一的输入输出),UDAF(多对一的输入输出),UDTF(一对多的输入输出)。如果想定义UDF类型的自定义函数,需要继承UDF类,并实现evaluate方法。

B.错误。HQL是Hive查询语言,不是一个类,也不是用来定义自定义函数的。

C.错误。FunctionRegistry是Hive的函数注册类,用来管理Hive的内置函数和自定义函数,不是用来定义自定义函数的。

D.错误。MapReduce是Hadoop的分布式计算框架,不是一个类,也不是用来定义自定义函数的。

所以,正确答案是A。

11.(单选题,3.0分)

不属于Hive的优点是(B

A.提供与SQL相近的语法,容易上手,可以非常容易地完成数据的ETL。

B.适用于海量结构化数据分析汇总,查询速度非常快。

C.适合处理结构化的数据。

D.存储格式灵活多样,有较强的扩展性。

A.错误。Hive提供了类似SQL的查询语言,叫做HQL或者HiveQL,这使得它易于使用和学习。Hive也可以用来完成数据的ETL(提取、转换、加载),将数据从不同的源导入到Hive中,进行转换和分析,然后导出到其他的目的地。

B.正确。Hive适用于海量结构化数据的离线分析,但是查询速度并不非常快。Hive的查询是基于MapReduce引擎的,而MapReduce引擎是适合批量处理大规模数据的,而不是适合实时查询的 。Hive的查询延迟比传统数据库高很多 。

C.错误。Hive适合处理结构化的数据,这是Hive的一个基本要求。Hive可以将结构化的数据文件映射为一张数据库表,然后使用HQL来查询和分析 。Hive不支持非结构化或半结构化的数据,如图片、视频、音频、JSON、XML等 。

D.错误。Hive的存储格式灵活多样,有较强的扩展性。Hive支持多种存储格式,如TEXTFILE, SEQUENCEFILE, ORC, PARQUET等 ,并且可以自定义SerDe(序列化和反序列化)和InputFormat/OutputFormat来读写其他格式的数据 。

所以,正确答案是B。

12.(单选题,5.0分)下列哪种方法可以实现IN/EXISTS子查询(B )。

A. left join

B.left semi join

C.right join

D.join

A.错误。left join是一种连接操作,它可以将左表的所有记录和右表的匹配记录合并在一起,不匹配的记录用NULL填充。left join不能直接实现IN/EXISTS子查询,但可以通过添加过滤条件来模拟。

B.正确。left semi join是一种特殊的连接操作,它只返回左表中和右表匹配的记录,不返回右表的任何列。left semi join可以直接实现IN/EXISTS子查询,而且比left join更高效。

C.错误。right join是一种连接操作,它可以将右表的所有记录和左表的匹配记录合并在一起,不匹配的记录用NULL填充。right join不能直接实现IN/EXISTS子查询,但可以通过添加过滤条件来模拟。

D.错误。join是一种连接操作,它可以将两个表的匹配记录合并在一起,不匹配的记录被丢弃。join不能直接实现IN/EXISTS子查询,但可以通过添加过滤条件来模拟。

所以,正确答案是B。

13.(单选题,2.0分)关于HIVE SQL运行原理,描述正确的是(B

A.对于select count(*) from table操作,不会启动mapreduce任务

B.DDL语句不提交任务到mapreduce,而是直接操作元数据

C.对于select * from table语句,不会启动mapreduce.

D.所有的HQL都会转化为mapreduce任务执行

A.错误。对于select count(*) from table操作,会启动mapreduce任务。因为Hive需要扫描整个表的数据,然后在map阶段输出每个分区的记录数,再在reduce阶段对所有分区的记录数求和,得到最终的结果。

B.正确。DDL语句不提交任务到mapreduce,而是直接操作元数据。因为DDL语句只涉及到表的结构信息,不涉及到表的数据内容,所以不需要使用mapreduce进行计算,只需要更新元数据即可。

C.错误。对于select * from table语句,会启动mapreduce任务。因为Hive需要扫描整个表的数据,然后在map阶段输出每条记录,再在reduce阶段将所有记录合并,得到最终的结果。

D.错误。并不是所有的HQL都会转化为mapreduce任务执行。有些HQL可以直接从元数据或者HDFS中获取结果,不需要使用mapreduce进行计算,例如show tables, describe table, load data等。

所以,正确答案是B

14.(单选题,3.0分)关于HIVE与HADOOP其他组件的关系,描述错误的是(D )。

A.HIVE是HADOOP平台的数据仓库工具。

B.HIVE最终将数据存储在HDFS中。

C.HIVE SQL其本质是执行MAPREDUCE任务。

D.HIVE对HBASE有强依赖。

A.错误。HIVE是HADOOP平台的数据仓库工具,这是正确的。HIVE可以将结构化的数据文件映射为一张数据库表,并提供类似于SQL的查询语言,能将SQL语句转换为MapReduce任务来执行。

B.错误。HIVE最终将数据存储在HDFS中,这也是正确的。HIVE的数据都是存储在Hadoop的分布式文件系统HDFS中,HDFS为海量的数据提供了存储,而MapReduce为海量的数据提供了计算。

C.错误。HIVE SQL其本质是执行MAPREDUCE任务,这同样是正确的。HIVE的查询是基于MapReduce引擎的,而MapReduce引擎是适合批量处理大规模数据的,而不是适合实时查询的。HIVE将用户提交的SQL解析成MapReduce任务供Hadoop直接运行。

D.正确。HIVE对HBASE有强依赖,这是错误的。HIVE和HBASE是两个不同的组件,HIVE是一个数据仓库工具,HBASE是一个分布式的列式数据库 。HIVE和HBASE可以相互配合,但不是必须的 。HIVE可以通过HBaseStorageHandler来访问HBASE中的数据,但也可以访问其他类型的数据源 。

所以,正确答案是D

15.(单选题,5.0分)使用load data inpath '/data/s1.txt into table student指令装载数据后,文件s1.txt是否还在之前的存储位置(A

A.不存在

B.不确定

C.还存在

A.正确。当使用load data inpath命令时,Hive会将HDFS文件移动到目标表中,而不会复制。所以,/data/s1.txt在加载到表student后就不存在了。

所以,正确答案是A。

16.(单选题,5.0分) select distinct(sid) from student是否启动MR?( A

A.必须启动

B.可以不启动

C.不启动

A.正确。select distinct(sid) from student是一个聚合查询,它需要对student表中的sid列进行去重和统计。这个操作需要启动MapReduce任务,因为Hive需要在map阶段对每个分区的sid列进行去重,然后在reduce阶段对所有分区的结果进行合并,得到最终的结果。

所以,正确答案是A。

17.(单选题,5.0分)

create table bigdata22.student100(sno int, sname string, sage int, saddr string)

row format delimited

fields terminated by ','

lines terminated by '\n';

create table bigdata22.course100(cno int, cname string, ccredit int)

row format delimited

fields terminated by ';'

lines terminated by '\n';

create table bigdata22.SC100(sno int, cno int, grade int)

row format delimited

fields terminated by ','

lines terminated by '\n';

则执行select student100.sno,sname,sage,saddrfrom SC100 left semi join student100on (SC100.sno=student100.sno);的结果是( B

A. student100和SC100的自然连接

B.出错

C. student100和SC100的笛卡尔积

D. student100和SC100的嵌套查询

A.错误。student100和SC100的自然连接是指将两个表中相同列名的列进行等值连接,然后去除重复的列。而left semi join是一种特殊的连接操作,它只返回左表中和右表匹配的记录,不返回右表的任何列。所以,这两种操作的结果是不同的。
B.正确。这个查询语句会出错,因为select子句中的sname, sage, saddr列都是来自右表student100的,而left semi join的限制是右表只能在on子句中设置过滤条件,不能在select子句中出现。所以,这个查询语句是非法的,会报错说Invalid table alias or column reference 'sname'。
C.错误。student100和SC100的笛卡尔积是指将两个表中的每一条记录都和另一个表中的每一条记录进行连接,得到的结果集的大小是两个表的大小的乘积。而left semi join是一种特殊的连接操作,它只返回左表中和右表匹配的记录,不返回右表的任何列。所以,这两种操作的结果是不同的。
D.错误。student100和SC100的嵌套查询是指将一个查询的结果作为另一个查询的输入,通常使用in, exists, not in, not exists等操作符1。而left semi join是一种特殊的连接操作,它只返回左表中和右表匹配的记录,不返回右表的任何列23。所以,这两种操作的结果是不同的。
所以,正确答案是B。

18.(单选题,5.0分)select count(*) from ah16_part是否会启动MAPREDUCE?( C

A.不一定启动MR

B.不确定

C.必须启动MR

D.调优后,可以不启动MR

A.错误。select count(*) from ah16_part是一个聚合查询,它需要对ah16_part表中的所有记录进行计数。这个操作需要启动MapReduce任务,因为Hive需要在map阶段对每个分区的记录数进行输出,然后在reduce阶段对所有分区的记录数求和,得到最终的结果。

B.错误。select count(*) from ah16_part是否会启动MapReduce任务是可以确定的,不会出现不确定的情况。所以,这个选项是错误的。

C.正确。select count(*) from ah16_part必须启动MapReduce任务,因为它是一个聚合查询,而不是一个简单的选择查询。Hive不能直接从HDFS中获取结果,而需要使用MapReduce进行计算。

D.错误。select count(*) from ah16_part即使调优后,也不能不启动MapReduce任务,因为它是一个聚合查询,而不是一个简单的选择查询。Hive不能直接从HDFS中获取结果,而需要使用MapReduce进行计算。调优只能提高MapReduce任务的性能,但不能避免MapReduce任务的启动

所以,正确答案是C。

19.(单选题,5.0分)使用load data inpath指令装载数据时,文件所在的存储位置在(D

A.不确定

B.根据具体的参数来定

C.本地虚拟机

D.HDFS

如果不包含LOCAL关键字,则从HDFS文件系统加载数据,文件路径必须是绝对路径。

20.(单选题,5.0分)以下哪个指令用于将本地文件上传到hdfs?( B

A. mv

B.put

C.cp

D. get

A.错误。mv命令是用于移动或重命名文件或目录的,不是用于将本地文件上传到hdfs的。例如,mv file1 file2可以将file1重命名为file2,mv file1 /dir1可以将file1移动到dir1目录下。

B.正确。put命令是用于将本地文件上传到hdfs的,可以指定本地文件路径和hdfs文件路径。例如,hdfs dfs -put test.txt /user/hadoop可以将本地的test.txt文件上传到hdfs的/user/hadoop目录下。

C.错误。cp命令是用于复制文件或目录的,不是用于将本地文件上传到hdfs的。例如,cp file1 file2可以将file1复制为file2,cp file1 /dir1可以将file1复制到dir1目录下。

D.错误。get命令是用于将hdfs文件下载到本地的,不是用于将本地文件上传到hdfs的。例如,hdfs dfs -get /user/hadoop/test.txt test.txt可以将hdfs的/user/hadoop/test.txt文件下载到本地的test.txt文件。

所以,正确答案是B。

21.(单选题,5.0分)下面哪个操作可以使得表student1有一个对应的可见存储文件夹?( C

A. create table student1(sid int) location '/data/mydb.db';

B.create table student1(sid int) location '/data';

C. create external table student1(sid int) location 'mydb.db/student1';

D.create external table student1(sid int) location '/data';

A.错误。create table student1(sid int) location ‘/data/mydb.db’是创建一个内部表,并指定其存储位置为’/data/mydb.db’。这个操作不会在HDFS中创建一个对应的可见存储文件夹,而是在元数据中记录表的位置信息。如果删除这个表,HDFS中的数据也会被删除。

B.错误。create table student1(sid int) location ‘/data’是创建一个内部表,并指定其存储位置为’/data’。这个操作不会在HDFS中创建一个对应的可见存储文件夹,而是在元数据中记录表的位置信息。如果删除这个表,HDFS中的数据也会被删除。

D. create external table student1(sid int) location '/data';

选项D不是不正确,但它给出的信息不够明确。这个命令创建了一个名为`student1`的外部表,并指定了其位置为`/data`。当创建外部表时,Hive确实会使用指定的路径作为该表数据的存储位置,这意味着`student1`表的数据会存储在`/data`目录下。

然而,问题是在问哪个操作可以使得表`student1`有一个对应的可见存储文件夹。从字面上理解,我们通常期望每个表都有自己独立的存储文件夹,避免与其他表共享。选项D中的`/data`可能看起来像是一个共用的数据目录,而不是专门为`student1`表定制的目录。如果多个表指定相同的`location`路径,它们将会共享相同的存储空间,这可能会导致数据管理上的混乱。

因此,在考虑到最佳实践和表的独立存储需求时,选项C提供了一个更明确的、专门为`student1`表创建的存储路径,因此更符合问题的要求。选项D在实际使用中可能会导致数据管理上的问题,除非在其他上下文中明确指出`/data`目录专门用于`student1`表的数据存储。在没有这样的上下文的情况下,选项C是更合适的选择。

22.(单选题,5.0分) select greatest(tt,jb,jx) from sal?是否会启动MR?(B

A.必须启动

B.不启动

可以理解为 greatest函数 是 比较大小,其实还是简单查找

23.(单选题,5.0分)

create view viewdb1 as

select dname,

count(*) count_numbe,

sum(if(gender=='男',1,0))M,sum(if(gender=='女',1,0))F

from tb_case

group by dname ;

此时执行select * from viewdb1是否会启动MR?(A

A.会

B.不会

A.正确。select * from viewdb1是一个视图查询,它会根据视图的定义语句来执行相应的操作。因为视图viewdb1的定义语句中包含了聚合函数和分组操作,所以它需要启动MapReduce任务,因为Hive需要在map阶段对每个分区的gender列进行统计,然后在reduce阶段对所有分区的结果进行合并,得到最终的结果。所以,正确答案是A。

24.(单选题,5.0分)

create table A(id string, pos int)

row format delimited

fields terminated by ',';

create table B(id string, name string)

row format delimited

fields terminated by ',';

vi A.txt

a,1

b,2

c,3

d,4

e,5

f,6

g,7

vi B.txt

a,name1

b,name2

c,name3

d,name4

load data local inpath '/data/A.txt' overwrite into table A;

load data local inpath '/data/B.txt' overwrite into table B;

则执行

select * from B

left join A on (A.id=B.id);执行结果是(A

A.

a  name1   a  1

b  name2   b  2

c  name3   c  3

d  name4   d  4

B.

a name1

b name2

c name3

d name4

C.

a 1 a name1

b 2 b name2

c 3 c name3

d 4 d name4

e 5 NULL NULL

f 6 NULL NULL

g 7 NULL NULL

A.正确。select * from B left join A on (A.id=B.id)是一个左外连接查询,它会返回左表B的所有记录,以及右表A中与on条件匹配的记录,不匹配的记录用NULL填充。因为B表和A表中的id列都有相同的值a,b,c,d,所以这四行都能匹配,并显示出来。B表中没有其他的记录,所以不会显示NULL。所以,这个选项是正确的。

C.错误。select * from B left join A on (A.id=B.id)是一个左外连接查询,它会返回左表B的所有记录,以及右表A中与on条件匹配的记录,不匹配的记录用NULL填充。这个选项显示了A表的所有记录,以及B表中与on条件匹配的记录,不匹配的记录用NULL填充,这相当于一个右外连接查询,而不是一个左外连接查询,所以这个选项是错误的。

所以,正确答案是A

25.(单选题,5.0分)

select

dname ,

count(*) count_numbe,

sum(if(gender=='男',1,0))M,

sum(if(gender== '女',1,0))F

from

tb_case

group by dname ;

请问查询的字段是几个?(B

A.3

B.4

C.5

D.6

B.正确。查询的字段是4个。查询的字段是指select子句中列出的列或表达式,不包括group by子句中的列。在这个查询中,select子句中有四个字段:dname, count(*), sum(if(gender==‘男’,1,0))和sum(if(gender==‘女’,1,0))。

所以,正确答案是B

剩下题目在下期,敬请期待

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/310108.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

儿童护眼台灯什么品牌好?儿童护眼台灯品牌排行

台灯大家都不陌生,但使用它的人有多少呢,准确使用的人又有多少呢,我们就是为了照明才会去买台灯,而时间久了,你就会眼睛刺痛,那就是没有选对台灯和没有正确使用台灯,还是建议大家买具有护眼功能…

首次落地零担快运!商用车自动驾驶跑出交付加速度

即将迈入2024年,还活着的自动驾驶玩家,身上有两个显著标签:选对了细分赛道、会玩。 10月以来,Cruise宣布在美国德州奥斯汀、休斯顿、亚利桑那州凤凰城和加州旧金山全面停止所有自动驾驶出租车队运营服务,通用汽车计划…

OSS 上传的操作

OSS 上传的操作&#xff1a; 依赖包&#xff1a; <!-- 阿里云OSS --><dependency><groupId>com.aliyun.oss</groupId><artifactId>aliyun-sdk-oss</artifactId><version>3.15.1</version></dependency> 配置文…

基于Java SSM框架实现音乐推荐网站项目【项目源码+论文说明】

基于java的SSM框架实现音乐推荐网站演示 摘要 中国风音乐推介网站近年来已成为风靡全球的新兴艺术形式。国内涌现出了大批优秀、有才华的爱好者和许多经久不衰的经典作品。中国风音乐推介网站的兴起打破了音乐界格局,也突破了原有分类唱法发展中的瓶颈,为声乐艺术的发展开辟了…

为啥领导都爱说“我只看结果”?

点击下方“JavaEdge”&#xff0c;选择“设为星标” 第一时间关注技术干货&#xff01; 免责声明~ 任何文章不要过度深思&#xff01; 万事万物都经不起审视&#xff0c;因为世上没有同样的成长环境&#xff0c;也没有同样的认知水平&#xff0c;更「没有适用于所有人的解决方案…

SpringCloud 之HttpClient、HttpURLConnection、OkHttpClient切换源码

承接上文&#xff0c;之前已经分析过OpenFegin 的创建、发送请求源码了&#xff0c;接下来&#xff0c;分析下底层的HttpClient、HttpURLConnection、OkHttpClient切换从源码级别来看是如何做到的。 Spring Cloud OpenFegin&#xff08;创建、发送请求&#xff09;源码 Http…

创建mysql普通用户

一、创建mysql普通用户的原因&#xff1a; 权限控制&#xff1a;MySQL的权限系统允许您为每个用户分配特定的权限。通过创建普通用户&#xff0c;您可以根据需要为每个用户分配特定的数据库和表权限&#xff0c;而不是将所有权限授予一个全局管理员用户。这有助于提高数据库的…

浮动和定位

目录​​​​​​​ &#x1f333;浮动 &#x1f340;去浮动 &#x1f343;方法一 &#x1f343;方法二 &#x1f343;方法三 &#x1f333;定位 &#x1f340;相对定位 &#x1f340;绝对定位 &#x1f340;固定定位 &#x1f333;转义字符 浮动 浮动会脱离文档流.导…

部署vue项目的常见问题汇总--许锅锅

文章目录 vue项目的常见问题版本问题/控制台指令识别问题【node和npm的版本要对应】加载慢的问题【设置镜像即可】设置淘宝镜像cmd窗口内容 npm/cnpm install的问题 npm WARN deprecated core-js3.6.5: core-js&#xff1c;3.23.3 is no longer maintained and not recommended…

计算机毕业设计------SSH宿舍管理系统

项目介绍 本项目分为三种角色&#xff1a;系统管理员、楼宇管理员、学生&#xff1b; 系统管理员主要功能如下&#xff1a; 楼宇管理员管理、学生管理、楼宇管理、宿舍管理、学生入住登记、学生寝室调换、学生迁出登记、学生缺勤记录、修改密码、退出登录 楼宇管理员主要功能…

新接入荣耀 SDK,混淆出包,登录提示框显示不全

荣耀联运客户端 SDK 刚出来不就&#xff0c;看文档第一个对外版本也就是 2023 年 8 月&#xff0c;所以最近开始接入&#xff0c;中间也遇到了一些麻烦折腾了不少时间。 什么意思呢 正常的登录提示 UI 是这样的&#xff0c;能够完整的显示 UI 部分&#xff08;此前是通过定制…

计算机毕业设计-----SSH校园精品课程网前后台

项目介绍 本项目是很不错的一个校园精品课程网源码&#xff0c;前台和后台源码都有&#xff0c;分为管理员与学生两种角色&#xff1b; 前台功能&#xff1a;网站首页&#xff0c;校园新闻&#xff0c;课程中心&#xff0c;资源下载&#xff0c;互动交流&#xff0c;个人中心…

借助GPT理解 “ Android中 点击弹框外部 取消弹框”

在平常的开发工作中 或 阅读技术博客/书籍 时&#xff0c;难免会遇到我们不懂的知识点&#xff0c;网络上搜索的资料 需要有准确性&#xff0c;系统性&#xff0c;可实操性。 这样的资料查询很费时间且还不一定能找到&#xff0c;但是如果借助训练过的的gpt&#xff0c;就会省下…

视频转gif的在线转换怎么操作?告别繁琐,轻松搞定

视频转gif的在线转换怎么操作&#xff1f;在当今社交媒体盛行的时代&#xff0c;GIF动图已经成为了我们表达自我、分享生活的重要方式。但是&#xff0c;很多小伙伴可能还在为如何将心爱的视频片段转为GIF而烦恼。今天&#xff0c;我们就来一起学习如何将视频轻松转换为GIF的在…

09-责任链模式-C语言实现

责任链模式&#xff1a;Avoid coupling the sender of a request to its receiver by giving more than one object a chance to handle the request.Chain the receiving objects and pass the request along the chain until an object handles it.&#xff08;使多个对象都有…

基于ssm文化遗产的保护与旅游开发论文

摘 要 信息数据从传统到当代&#xff0c;是一直在变革当中&#xff0c;突如其来的互联网让传统的信息管理看到了革命性的曙光&#xff0c;因为传统信息管理从时效性&#xff0c;还是安全性&#xff0c;还是可操作性等各个方面来讲&#xff0c;遇到了互联网时代才发现能补上自古…

适合游泳的骨传导耳机,推荐四款高质量游泳耳机!

游泳是一项全身性的运动&#xff0c;对于锻炼身体和塑形都很有帮助&#xff0c;但是游泳的时候往往会因为水的阻力而感到动作笨拙&#xff0c;同时也会感到枯燥无味。而一款好的游泳耳机则能够让你在游泳的过程中享受音乐或者其他的音频内容&#xff0c;增加游泳的趣味性&#…

chrony 时间同步

一.chrony简介 chrony 的优势&#xff1a; ① 更快的同步&#xff0c;从而最大程度减少了时间和频率误差&#xff0c;对于并非全天 24 小时运行的虚拟计算机而言非常有用。 相对于NTP来说&#xff0c;chrony性能更好 NTP是网络时间协议(Network Time Protocol)&#xff0c;它…

十大开放式耳机品牌哪个好?开放式耳机详细评测攻略分享,精华篇

相信很多朋友在选购开放式耳机的时候&#xff0c;发现市场上的开放式耳机品牌琳琅满目&#xff0c;完全不清楚哪家的产品更胜一筹&#xff0c;有些人甚至跟风购入&#xff0c;因此很容易买到不合适自己的而踩雷。 其实这种耳机我很早之前就有在使用&#xff0c;我对于耳机数码类…

Idea中web项目一些配置问题

1. 产生原因 我从github上clone项目下来后发现idea的一些配置没有带下来需要自己配, 这花了我很多时间, 所以这里总结一下。 2. 具体配置 首先是利用idea进行clone操作 将对应仓库的ssh链接拷贝到此处即可 完成后项目就被clone到了本地, 下面进入正式配置 首先选择所要使用…