苍穹外卖面试总结

项目介绍

我完成了一个外卖项目,名叫苍穹外卖,是跟着黑马程序员的课程来自己动手写的。

项目基本实现了外卖客户端、商家端的后端完整业务。

商家端分为员工管理、文件上传、菜品管理、分类管理、套餐管理、店铺营业状态、订单下单派送等的管理、数据统计等,用时7天半;用户端用微信小程序实现的,分为用户登陆退出、套餐菜品浏览、购物车、订单管理、地址薄管理等,用时4天半。

项目使用了Nginx、Swagger、Redis、MySQL、SpringBoot、AOP、HTTPClient、SpringCache、SpringTask、WebSocket、POI等技术。

项目使用了流行的微信小程序实现用户端,保证了技术赶上应用的潮流。

项目难点在于各种第三方调用的实现,比如调用微信进行登录、付款,调用百度地图进行位置查询等,需要自信了解第三方接口的细节,需要有基本的编程语言理解与代码学习能力。解决方案就是自己学习、搜索学习和向其他人、高手学习。

经过了这个项目,我的代码能力提升了,对Spring三层架构的理解又深了一步,离当上一个合格的程序员又近了一步。

业务逻辑分析,请问面试官有感兴趣的地方吗。

假设的业务进行分析,我尽力而为。

JavaSE基础部分

一、Java数据类型

基本数据类型——四类八种

整数型 byte short int long

浮点型 float double

字符型 char

布尔型 boolean

引用数据类型

String字符串

类(对象)

接口类型

数组类型

枚举类型

二、面向对象的三大特性


1.封装

把同一类事物的共性归到同一类中,方便使用。

重要的private:把类的某些信息隐藏在类的内部,不允许外部程序直接访问。

2.继承

子类继承父类,使子类有和父类相同的特征和行为。

3.多态

在继承的基础上才有多态。

优缺点见下面题目。

三、说五个关键字和作用


public 修饰公有成员、方法

static 修饰静态成员、方法

void 表示无返回值

final 修饰最终变量,成为常量

protected 修饰成员、方法,表示同包下或者不同包中继承的子类可以调用

四、接口和抽象类的区别


1.接口是接口,与其他接口是继承关系,可以多继承其他接口;

   抽象类是类,与其他类是继承关系,与接口是实现关系,只可以继承一个类,可以多实现接口。

2.接口用于规范,只能声明方法、属性,方法在1.9之前只能是公共的、默认的或静态的,1.9之后才支持私有方法;

   抽象类用于共性,除了方法、属性还可以声明构造函数、具体实现的方法、私有方法、静态方法等。

五、访问权限有哪几种


4种。

private 私有的 只有本类内部可以使用。

(default) 缺省/默认的 不加默认为缺省的。只有本包下的类能访问。

protected 被保护的 只有本包,或者不同包下的子类能访问。

public 共有的 本包、不同包、非子类都可以访问。

六、继承的好处


1.易维护性

增加了代码的一致性,增加易维护性。

2.复用性

减小代码和数据的冗余度,增加重用性。

3.条理性

清晰体现类间的层次结构关系,条理更清晰。

七、多态的优缺点


优点

方法参数定义了父类对象,该形参可以用任意子类填充。

1.简化了代码;

2.提升了维护性和扩展性。

缺点

通过父类引用操作子类对象时,只能使用父类中已有的方法,不能操作子类特有的方法。

解决方法:向下转型

八、Override和Overload有什么区别


1.重载方法名称相同,参数的类型或个数不同;重写方法名称、参数类型还有返回值类型必须全部相同。

2.重载对权限没有要求;重写中,被重写的方法不能拥有比父类更加严格的权限

3.重载发生在一个类中;重写发生在继承中。

九、单例模式的作用,有哪些实现方式


作用

控制线程数量;

控制实例数量;

线程之间数据共享。

实现方式

饿汉式

优点:速度快、线程安全

缺点:资源占用多

饱汉式

优点:资源占用少

缺点:速度慢、可能线程不安全

十、异常体系结构


Throwable

   └ Error

   └ Exception 编译时异常/受检异常

            └ RuntimeException 运行时异常/非受检异常

十一、集合体系结构和特点


Collection

   └ List 有索引,存取一致,有序,元素允许重复

  ┃     └ ArrayLIst

  ┃     └ LinkedList

  ┃     └ Vector

  └ Set 无索引,无序,元素不允许重复

          └ HashSet

          └ TreeSet

          └ LinkedHashSet

十二、ArrayList特点,扩容


特点

1.增删慢

每次删除元素,都需要更改数组长度、拷贝以及移动元素位置。当然,增删最后一个元素快。

2.查询快

连续空间存储数组,根据地址+索引能快速访问到数据。

3.可扩容/动态性

ArrayList使用动态数组作为底层的数据结构,能够自动扩容、缩容

4.非线程安全

多个线程同时访问和修改同一个ArrayList实例,可能会导致不可预测的结果

扩容

无参、传参为0、传列表为0时,创建ArrayList容量为0,添加第一个元素后容量为10,下次正常扩容。

正常扩容,列表满时,扩容1.5倍。

十三、HashMap的原理


对于底层数据结构,采用的是哈希表。

哈希表在jdk1.8之前,哈希表是数组+链表;jdk1.8及之后,哈希表是数组+链表+红黑树。

存取原理:

首先根据键,计算哈希值。

根据哈希值,计算下标,存入数组。

数组中,如果该下标下链表为空,则直接存入;

如果链表不为空,则产生了哈希冲突,进一步判断哈希值是否相等。相等,则重复了,替代掉;

如果不相等,则存入链表后面。

取时,首先计算被取元素的哈希值,然后计算其在数组中的下标,在下标中的链表中找到相同哈希值的元素,即可取出。

在jdk1.8之前,解决哈希冲突时采用的是拉链法,即直接使用链表。

1.8之后,解决哈希冲突,用红黑树。如果链表长度大于8,则扩容为红黑树;如果长度小于了6,则又退化为链表。

十四、什么是递归,有什么优缺点


递归:方法自己调用自己

优点:代码简介。

缺点:1.性能开销大;2.栈溢出;3.调试困难。

十五、IO流的分类


字符流、字节流

输入流、输出流

节点流、处理流

其中,文本用字符流,非文本数据、文件拷贝用字节流。

十六、多线程的实现方式


4种方式:

1.继承Thread

2.实现Runnable

3.实现Callable

4.线程池

十七、线程安全问题产生的原因、解决方案


产生原因

1.有多线程要并发

2.要操作同一组数据

解决方案

加同步锁synchronized

加锁Lock(jdk5之后)

十八、线程池的7个参数


1.corePoolSize 核心线程数

2.maxinumPoolSize 最大线程数

3.keepAliveTime 空闲线程的存活时间。

4.unit 存活时间的单位

5.workQueue 任务队列,存放被提交但是尚未被执行的任务。

6.threadFactory 生成线程池中工作线程的线程工厂。

7.handler:拒绝策略,队列、线程都满了时如何处理线程。

十九、UDP和TCP协议的区别


1.UDP无连接,速度快,安全性低,适合高速传输、实时广播通信等。

2.TCP面向连接,速度慢,安全性高,适合传输质量要求高、大文件等的传输,比如邮件发送等。

(还有:TCP只能是一对一的,UDP支持一对一、一对多、多对一)

(还有:TCP首部开销有20个字节;UDP分组首部开销小,只有8个字节)

二十、什么是反射


Java中动态获取类及类的成员、方法的技术。

框架的底层都用了大量的反射。

Web

一、什么是AJAX


异步的JavaScript和XML。用来做前端和后端的异步请求的技术。

异步请求:只更新部分前端界面的请求,做到局部更新。

比如注册,提示用户名已存在而整个页面没有动

比如百度图片搜索美女,进度条越变越短,可以一直往下拉

二、maven主要有什么作用


1.依赖管理(管理jar包)

2.构建管理(清理、编译、打包等)

三、 HTTP协议


超文本传输协议,基于TCP协议,用于在Web浏览器和Web服务器之间传输HTML页面、图像、视频、音频和其他类型的文件。

HTTP请求由请求行、请求头和请求体组成。

请求行包含请求方法、URL和HTTP协议版本。

请求头包含一些附加的信息,例如请求的主机名、用户代理、cookie等。

请求体包含客户端发送的数据,例如表单数据等。

只有POST有请求体。

HTTP响应由状态行、响应头和响应体组成。

状态行

包括协议版本号、状态码、结果描述;

响应头

Date: Sun, 17 Mar 2013 08:12:54 GMT 
Server: Apache/2.2.8 (Win32) PHP/5.2.5
X-Powered-By: PHP/5.2.5
Set-Cookie: PHPSESSID=c0huq7pdkmm5gg6osoe3mgjmm3; path=/
Expires: Thu, 19 Nov 1981 08:52:00 GMT
Cache-Control: no-store, no-cache, must-revalidate, post-check=0, pre-check=0
Pragma: no-cache
Content-Length: 4393
Keep-Alive: timeout=5, max=100
Connection: Keep-Alive
Content-Type: text/html; charset=utf-8

date:当前GMT时间

server:告诉浏览器,服务器的型号

cinrynt-length告诉浏览器返回数据的长度

content-type:告诉浏览器返回数据的类型

expire:告诉浏览器将返回的资源缓存多长时间

refresh:告诉浏览器多久刷新一次

set-cookie:设置和页面关联的cookie

content-encoding:文档编码方式

allow:服务器支持哪些编码方式

响应体

返回的消息体,可以是html页面、js代码、纯数据。

转自http响应由几部分构成? - 简书

四、接收请求参数有哪些方式


1.原始方法,用HttpServletRequest对象接收,再调用getParameter方法。

2.Spring的简单的参数的方法

五、三层架构


控制层Controller

业务层Service

持久层Dao/Mapper

六、什么是IOC和DI


把创造对象的权利交给容器,就是IOC

有需要使用就注入,就是DI依赖注入

七、MySQL表间关系


一对一、一对多、多对多

一对一

在一个表中用外键关联另一个表

一对多

在多方建立外键,和一个的表中建立联系

多对多

在中间表中建立外键,分别关联主键

八、内连接和外连接查询有什么区别


内连接

获取两表的交集部分

外连接

获取某表的所有数据,以及两表的交集数据

九、事务管理的作用,四大特性


作用

保证多个增删改的操作,要么同时成功,要么同时失败

四大特性

1.原子性

事务是最小单位原子,同成同败

2.一致性

理解1:数据变化、保存一致 eg 银行里存500得500

理解2:预期值和实际值一致

3.隔离性

多个事务之间不要产生影响

4.持久性

操作最终会持久化到数据库中

十、JWT令牌的作用和组成


用来作为登录验证的标记,防篡改

3部分

头部Header,负载Payload,签名Signature

Header

算法和模型

Payload

存储有关用户的数据

Signature

结合前两部分以及一个密钥生成

十一、Spring事务管理如何实现


加@Transactional注解

可以加的范围:方法、类、接口

可自动处理运行时异常

遇到编译时异常,需要回滚,加rollbackFor=异常类.class

事务相互调用,要用到事务传播行为,加propagation=Propagation枚举,会俩SUPPORTS和NOT_SUPPORT就行。

十二、事务传播行为是什么


事务之间相互调用,互相传播行为的行为。

会俩,SUPPORTS和NOT_SUPPORT。

举例小峰老师请吃饭。

十三、AOP是什么,有什么用?有哪些核心概念


是什么

面向切面编程,一个针对代码小的切面、方面,即方法,做加强的编程方式。

作用

可以加强方法,比如监视方法的运行时间以作出改进。

核心概念

连接点JoinPoint

可以被AOP控制的方法,就是所有方法

通知Advice

对其进行加强的具体操作

切入点Pointcut

被加强,具体操作到的方法,匹配连接点的句子

切面Aspect

通知和切入点的对应关系

目标对象Target

写下通知的类

十四、SpringBoot自动配置原理

苍穹外卖具体技术细节

一、Nginx的作用


1.反向代理

前端把请求发送给nginx,再由nginx将请求发送给后端服务器。

2.负载均衡

提高访问速度;进行负载均衡;保证后端服务安全

二、Swagger有什么作用


直接调试后端请求响应

三、Redis常见数据类型


String、Hash、List、Set、Zset

四、Redis和mysql有什么区别


1.数据库类型不同

(1)MySQL是关系型数据库;

(2)Redis是缓存数据库/非关系型数据库

2.数据存放位置不同

(1)MySQL的数据存在磁盘中

(2)Redis的数据存在内存中

3.应用场景不同

(1)MySQL存放在硬盘中,数据读取要I/O操作,速度慢,适合持久化的数据存取;

(2)Redis存放在内存中,用CPU读取,非常快,适合热点数据的存取。

4.存放数据类型不同

(1)MySQL:数值、日期/时间、字符串

(2)Redis:String、Hash、List、Set、Zset

五、HTTPClient的作用


发送HTTP请求

接收响应数据

六、SpringCache有哪些注解


@EnableCaching    加在启动类上开启
@Cacheable    放要缓存的查询上,快速查询redis,没有则查询后加入redis
@CachePut    放新增上,将结果放入redis
@CacheEvict    放删上,去掉一条;放改上,去掉全部重新记
七、SpringTask的作用,cron表达式有那些域
作用

任务调度,在特定时间执行指定的Java代码,定时做任务。

哪些域

秒 分 时 日 月 周 年

SpringTask只支持前6个域,不支持年的域。然后用*表示每个单位都执行,比如每日、每秒等;?表示冲突时的缺省,比如日月和周的冲突;/10表示每10个单位,比如每10分钟、每10个月等。
 

八、Websocket是什么


实现双向通信的一个网络协议。

九、POI的作用?


操作Java读写Office,项目中主要是Excel文件。

苍穹外卖业务逻辑

一、员工登录流程


1.前端在登录页面登录,发送请求

2.进入拦截器,拦截器放行所有登录页面的请求

3.进入三层架构,查询用户是否存在,若存在,则加盐加密,返回JWT的token,存放在请求头部。用户不存在,则不能登录。

二、登录验证如何实现的


1.试图访问任意非登录界面,前端发送请求

2.进入拦截器,开始拦截验证JWT。

3.校验成功,则进入访问界面。否则跳到登录界面。

三、项目开发有哪些角色


项目经理

对整个项目分工,负责进度把控。

可能会用到项目管理软件,比如禅道、ones。

除了项目经理,第二牛气的:

产品经理

进行需求调研分析,输出需求调研文档、产品原型。

跟上面领导打交道比较多,但不是领导胜似领导,只是一个岗位名称。意思就是,我出需求,你来实现,是提要求的,所以一般就牛气一点。

(出需求的产品经理,是程序员的天敌)

UI设计师

根据产品原型输出界面效果图。

不一定是小姐姐的哦。

架构师

项目整体架构设计,即项目整体结构的搭建,还有技术选型等。

比如架构是选微服务还是单体,用什么技术,设计什么模块,

以及一些棘手的问题,都是架构师去做。

架构师不一定很牛,有牛逼的也有菜的。有些大公司,有小组,其中就有架构师组。里面的,不一定都是你能佩服到高山仰止的哦~

开发工程师

代码实现。

喏,苦逼打代码的来了。

测试工程师

编写测试用例,输出测试报告。

运维工程师

软件环境搭建,运行项目。

其他

在公司内可能还有其他细化方向,比如还有DBA,即数据库管理员。

他们就只写SQL语句。

四、编辑员工的流程


1.完善之前登录时存储员工id到线程中。

2.完成回显功能,即根据id查询出员工。

3.完成修改功能,即update员工数据。

五、公共字段自动填充实现流程


1.确定使用AOP技术。

2.在com.sky.annotation包下创建自定义注解,比如叫AutoFill

3.用一个枚举类代表更新和新增两种状态,并放入自定义注解中。

4.在com.sky.aspect包下自定义切面类

5.完善切面类的自动填充逻辑,判断更新、新增两种状态,进行不同处理。

6.在mapper中对应的方法上加自定义注解

六、新增菜品的流程


1.实现文件上传。

(1)在配置文件中引入自己的阿里云。

(2)写一个类,比如AliOssProperties,用来读取配置文件。

(3)写一个工具类,用来上传文件。

(4)用一个配置类,比如OssConfiguration,来生成OSS工具类对象。

(5)在三层架构中注入、调用实现文件上传。其中要用UUID随机生成文件名。

2.实现新增菜品的文本细节新增。注意要增入两个表,一个dish,一个dish_flavor。

七、删除菜品的流程


注意业务层分四步:

1.判断是否起售

2.判断是否被套餐关联

3.删除菜品表中数据

4.删除菜品关联的口味数据

八、修改菜品的流程


首先实现根据id查找

然后实现修改

注意修改口味时要先删除原有口味,再单个for循环插入,或多个一起插入。

九、微信登录流程


1.controller层接收前端传过来的授权码code,调用service层,查找授权码是否通过校验。

2.service层校验授权码是否有效,无效则抛出异常;有效,则调用mapper层查询用户。

3.mapper层查找已存在用户并返回service值。

4.service中,若用户存在,直接返回;若不存在,完成用户的自动注册,并返回用户给controller层。

5.controller拿到返回用户,即用户存在或注册好后,封装响应对象,最后返回给前端。

总结3层架构:

controller层:

        1.用DTO接收授权码

        2.交给service层校验授权码是否有效,拿到返回值用户

        3.将返回用户封装给VO,return给前端

service层:

        1.准备参数,利用微信第三方,校验授权码是否有效

        2.解析响应参数,获取openid。如果为空,说明校验无效,抛异常

        3.根据openid,交给mapper查询user列表,如果没有对应的用户,完成自动注册;

        4.返回用户

mapper层:

        根据openid,查询是否存在用户

十、缓存菜品流程


1.在service层添加代码。添加代码如下:

        1.1查询redis。

        1.2如果redis中没有数据,则用mapper查询出数据。有则直接跳到1.4步

        1.3将mapper查出的数据存入redis。

        1.4返回数据

十一、添加购物车流程


1.前端传给controller层菜品/套餐与口味等。

2.controller层交给service层进行添加到购物车。

        2.1判断购物车中是否已经存在。调用mapper层,select一下。

        2.2如果存在,则只修改数量,交给mapper update一下数量。

        2.3如果不存在,则分类添加菜品or套餐给shopcart对象。

                2.3.1如果是菜品,查出菜品以及id、图片等

                2.3.2如果是套餐,查出套餐以及id、图片等。

        2.4添加shopcart对象到数据库,mapper insert进去。

3.mapper层照上操作

十二、用户下单流程


1.查询地址

2.查询购物车

3.封装订单,并添加一条

4.封装订单详情,有可能添加多条

5.清空购物车

6.封装VO并返回

十三、微信支付流程


1.调用微信下单接口;

2.返回预支付交易标识;

3.将组合数据再次签名;

4.推送支付结果;

5.更新订单状态。

十四、来单提醒和用户催单实现流程


来单提醒:

在提交订单的业务层代码里加入WebSocket的注入,然后传输带订单信息的map。

用户催单:

在三层架构里面写催单功能,也用WebSocket来注入、实现双向通信。

十五、导出运营数据实现流程


读取Excel模版到内存中。

准备运营数据

将数据写到Excel模板中。

将Excel文档响应回浏览器(文件下载)

注意的点

ClassLoader能加载的文件位置

ClassLoader能加载的文件位置在resources下。

放入resources后需要的操作

需要用maven构建管理的complie编译一下,才能保证类加载器ClassLoader加载到。

创建的POI与Office对应的下标

下标中getRow(0)与getCell(1)对应的分别是第一列第2行的数据

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

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

相关文章

思维导图怎么画?一文掌握绘制技巧

思维导图怎么画?你是不是还在为不知道怎么绘制思维导图而困惑?别担心,看完这篇文章就可以掌握绘制思维导图的基础步骤了。一起来看看吧! 一、思维导图的基本结构 思维导图通常由中心节点、分支节点和子节点组成。中心节点是思维导…

【基于 PyTorch 的 Python深度学习】5 机器学习基础(1)

前言 文章性质:学习笔记 📖 学习资料:吴茂贵《 Python 深度学习基于 PyTorch ( 第 2 版 ) 》【ISBN】978-7-111-71880-2 主要内容:根据学习资料撰写的学习笔记,该篇主要介绍了机器学习的基本任务、机器学习的一般流程&…

活动预约小程序源码系统 自定义预约表单+收费项目 带完整的安装代码包以及系统部署教程

数字化时代的快速发展,活动预约管理已经成为许多企业和个人不可或缺的一部分。为满足这一需求,我们特别开发了一款活动预约小程序源码系统,该系统不仅具备自定义预约表单的功能,还支持收费项目,旨在为用户提供更加便捷…

Garden Planner for Mac/win:打造您专属的绿意空间

随着城市化进程的加速,绿色空间对于现代人来说愈发珍贵。为满足人们对美好生活的追求,我们特推出了一款功能强大的园林绿化设计软件——Garden Planner for Mac/win。这款软件将帮助您轻松规划和设计您的花园、菜园或庭院,让绿意成为您生活的…

刷代码随想录有感(59):二叉搜索树的最近公共祖先

题干: 代码: class Solution {递归实现 public:TreeNode* traversal(TreeNode* root, TreeNode* p, TreeNode* q){if(root NULL)return NULL;if(root->val > p->val && root->val > q->val){TreeNode* left traversal(root…

高速开箱机价格与性能解析:如何挑选适合您的开箱解决方案?

随着电商和物流行业的迅猛发展,高效、自动化的包装设备成为了提升工作效率、减少人工成本的必备利器。高速开箱机作为其中的重要一环,其性能与价格成为了许多企业和个人关注的焦点。星派将深入探讨高速开箱机的价格与性能之间的关系,帮助您在…

视频封面一键提取:从指定时长中轻松获取您想要的帧图片

在数字媒体时代,视频已成为人们获取信息、娱乐和沟通的主要形式之一。而一个好的视频封面,往往能够吸引观众的眼球,增加视频的点击率和观看量。然而,对于很多视频创作者和编辑者来说,如何从视频中快速、准确地提取出合…

代码随想录算法训练营第二十天:二叉树成长

代码随想录算法训练营第二十天:二叉树成长 110.平衡二叉树 力扣题目链接(opens new window) 给定一个二叉树,判断它是否是高度平衡的二叉树。 本题中,一棵高度平衡二叉树定义为:一个二叉树每个节点 的左右两个子树的高度差的绝…

俄罗斯副总理暗示欧佩克+或增加原油产量,亚洲早盘油价小幅下跌

在俄罗斯副总理亚历山大诺瓦克暗示欧佩克可能采取行动增加原油产量后,亚洲早盘的油价出现小幅下跌。这一消息引起了市场对原油供给增加的担忧,导致油价走低。 City Index和FOREX.com的市场分析师Fawad Razaqzada表示,虽然原油价格在技术上尚…

C语言例题37、输入三组数字,按照从小到大的顺序排列输出

#include<stdio.h>int main() {int num[3];printf("请输入3组数字&#xff1a;");for (int i 0; i < 3; i)scanf("%d", &num[i]);for (int i 0; i < 2; i) { //每次选出最小值放在数组前面for (int j i 1; j < 3; j) {if (num[j] …

day_21

很简单&#xff0c;两个指针&#xff0c;指向1和n依次输出&#xff0c;然后自加自减即可。这样可以保证任意非两边的数同时大于或小于左邻和右邻的数。 看代码 #include <iostream> using namespace std;int main() {int n;cin >> n;int i 1, j n;while(i <…

带你快速掌握Spring Task

Spring Task ⭐Spring Task 是Spirng框架提供的任务调度工具&#xff0c;可以按照约定的时间自动执行某个代码逻辑 &#x1f4cc;一款定时任务框架 应用场景 信用卡信息银行贷款信息火车票信息 只要是需要定时处理的场景都可以使用Spring Task 只要有定时&#xff0c;就会有…

QT7_视频知识点笔记_2_对话框,布局,按钮,控件(查看帮助文档找功能函数)

第二天&#xff1a; 对话框&#xff0c;布局&#xff0c;按钮 QMainWindow&#xff1a;菜单下拉框添加之后可通过ui->actionXXX&#xff08;自定义的选项名&#xff09;访问&#xff0c;用信号triggered发出信号&#xff0c;槽函数可以使用lambda表达式进行 //菜单栏&am…

一文搞懂MySQL索引的数据结构

一、引言 在数据库管理系统中&#xff0c;索引是提高查询性能的关键所在。对于MySQL这类关系型数据库来说&#xff0c;索引更是其优化查询不可或缺的一部分。索引能够大大加快数据的检索速度&#xff0c;减少数据库的I/O操作&#xff0c;提高数据库的整体性能。本文将从索引的…

U盘管控软件,禁止员工用U盘拷贝机密数据,防止信息通过U盘泄露

随着信息技术的不断发展&#xff0c;U盘等便携式存储设备已成为我们日常工作中不可或缺的工具。然而&#xff0c;随着U盘的普及&#xff0c;企业面临的信息泄露风险也在不断增加。为了确保企业的信息安全&#xff0c;许多企业开始采用U盘管控软件&#xff0c;禁止员工使用U盘拷…

Gen-2颠覆AI生成视频!一句话秒出4K高清大片,网友:彻底改变游戏规则

这&#xff0c;绝对称得上是生成式AI进程中的里程碑。 就在深夜&#xff0c;Runway家标志性的AI视频生成工具Gen-2&#xff0c;迎来了“iPhone时刻”般的史诗级更新—— 依旧是简单一句话输入&#xff0c;不过这一次&#xff0c;视频效果一口气拉到了4K超逼真的高度&#xff…

Linux各目录及每个目录的详细介绍

目录 /bin 存放二进制可执行文件(ls,cat,mkdir等)&#xff0c;常用命令一般都在这里。 /etc 存放系统管理和配置文件 /home 存放所有用户文件的根目录&#xff0c;是用户主目录的基点&#xff0c;比如用户user的主目录就是/home/user&#xff0c;可以用~user表示 /us…

DInet

&#xff08;1&#xff09;数据&#xff1a; 1&#xff09;&#xff1a;随机获取5帧参考帧 2&#xff09;&#xff1a;处理这5帧连续帧&#xff0c;:source_frames:连续5帧的crop_moth b)audio_list:连续5帧的每一帧对应的5帧音频mel特征 c):refs:fintune 固定参考帧&#xff0…

「PolarDB-X入门到精通」第六讲:MySQL生态兼容

在上一阶段的课程中&#xff0c;已经和大家一起了解了PolarDB分布式数据库的产品架构&#xff0c;并且带领大家一起分别通过PXD、源码编译完成了PolarDB-X 的安装部署。在接下来的课程中&#xff0c;我们将继续带领大家一起学习PolarDB-X的产品特性。 在本期的课程中&#xff0…

激光雷达扫描:高效精准的车辆长宽高检测系统

因泰立科技激光式车辆长宽高检测系统广泛应用于固定式治超站、高速公路入口治超站、非现场执法站、物料场、停车场的车辆的长宽高检测&#xff0c;实现不停车实时获取车辆长宽高信息。 总体方案 本系统采用高精度的激光扫描检测技术&#xff0c;可以对车辆进行立体的扫描&…
最新文章