最佳实践:路径路由匹配规则的设计与实现-全球速递

最佳实践:路径路由匹配规则的设计与实现

作者:哲思时间:2023.5.9邮箱:zhe__si@163.comGitHub:zhe-si (哲思) (github.com)

前言

时间一晃研究生都过去大半年了,学了些东西,也做了些项目,借着博客总结一下。这次先聊一个简单的话题开个头。

开发中,常用形似 “a/b/c” 的描述方式来描述路径、定位资源,有着层次化和可读性高的特点,最经典的例子就是 URL(统一资源定位符),第二节会进行简要介绍。


(资料图片仅供参考)

将资源都路径化后,可以通过每一段路径精确的匹配来唯一的确定一个资源。但有时候,需要对具有相关特征的一组资源进行统一的描述或操作。比如,将所有获得用户信息的请求都路由到一个指定的处理程序上,请求的 URL 中包含不同用户 id 路径分段指向不同用户信息资源。再比如,界面中导航栏包含图片组(包含图1、2、3)和文本组(包含文本1、2、3),在访问图片组下不同图片时打开图片展示器而在访问文本组的文本时打开文本展示器。

基于上述场景的需求,需要一种简单而通用的路径路由匹配规则。最强大的方式是直接使用正则表达式来描述一组路径,但在描述一些复杂的路径场景时,正则表达式使用起来非常繁琐和困难。比如,匹配这样一组路径 "x1/a/x2/a",x1 表示任意长的最短匹配路径,x2表示任意长的最长匹配路径,大家可以尝试用正则表达式实现,并和本文设计的匹配规则的描述进行对比。

本文设计并实现了一种专用于路径路由匹配的规则,以一种简单而通用的方式描述一组路径的特征,来简化这种场景路由描述难度,让小白可以快速学习并上手。

什么是URL?什么是路径?

首先,需要明确一下什么是资源?什么是路径?

上面提到的 URL(统一资源定位符)是 URI(统一资源标识符)的一种分类。

URI 的本质语义是标识一个资源,资源可以是一张图片、一个文档、一个服务、一个用户等具体或抽象的实体,官方(RFC2396)将其格式标准化为如下格式(就是 URL 的格式)

该格式的大致含义是某人(user:pass)用某种方式(protocol)访问某个主机端口(hostname:port)某个路径(pathName)的资源,同时可用 search 对该资源做筛选、排序等操作、用 hash 访问资源的片段(子资源)。

而标识一个资源,可以通过描述位置或名字的方式,所以 URI 包括 URL 和 URN(统一资源名称)。

描述位置:用资源所处的地址来描述该资源,该描述指定了在特定地址的资源而不特指某一个具体的资源,也就是说实际指向的资源可能会随时间发生变化,资源的位置描述也会随资源本身位置的变化而变化,如 URL。描述名字:用一个全局唯一的标识符持久的标记一个特定的资源,不会随着时间或位置变化而改变指向的资源,如 URN(例:urn:oasis:names:specification:docbook:dtd:xml:4.1.2),常用于 Map、Redis 中 KEY 的定义等场景。

但不管是位置描述还是名字描述、不管具体的格式是什么,都可以把它们抽象为一种“路径”,只是路径的描述的含义不同、分隔符不同。

比如,URL 中,最核心的部分就是hostname:port/path这一部分,如下图蓝色区域,

蓝色区域已经完整描述了资源的位置,protocol 是补充描述了访问资源的方式,username:password 是附带的认证信息,search 和 hash 则描述的对某一个资源的进一步处理。而hostname:port/path就是一个路径,每个路径分段描述的是某个层级的位置节点。

比如,URN 中,路径的每个路径分段则描述不同命名空间及命名空间下的名字。

路径路由匹配规则的设计

了解了什么是路径,接下来给出路径路由匹配规则的定义描述:

R 模式:正则模式,格式:R:正则表达式

该模式下,完全采用正则表达式格式进行匹配。

标准模式:标准路径路由描述表达式,格式形如:/**/xxx/*/xxx,由多个路径分段的分段列表组成,要求路径分段列表全匹配

具体语法:

分隔方法

默认使用 "/" 分隔符分隔多个路径分段

支持自定义路由分隔方法路径分隔方法

路径分段

每个具体的路径分段默认采用完全字符串匹配r 模式:路径分段正则模式,该路径分段采用正则表达式进行匹配,格式:r:正则表达式

通配符 "?"

匹配任意一段或 0 段路径分段,在满足后续部分匹配的情况下优先不匹配

通配符 "*"

匹配任意一端路径,不可匹配空或不匹配

通配符 "**"

匹配任意多段路径分段,不保证尽可能满足的最短匹配原则,即在满足紧接的后续非通配符部分匹配的情况下尽可能少的匹配

通配符 "***"

匹配任意多段路径分段,保证尽可能满足的最长匹配原则,即在满足后续匹配的情况下尽可能多的匹配

举一些例子:

路由匹配路径不匹配路径
a/?/ca/b/c、a//c、a/ca/c/d
a/*/ca/b/ca/c
a/b/*a/b/ca/b
**/b/ca/b/c、b/c、a/a/b/b/cb/c/b/c
a/***/c/*a/c/c、a/c/b/c/da/b/c
a/**/c/*a/c/ca/c/b/c/d

一组路径 "x1/a/x2/a",x1 表示任意长的最短匹配路径,x2表示任意长的最长匹配路径,使用标准路径路由描述表达式描述就是**/a/***/b

其中,最常用的通配符是 "**",通过不保证尽可能匹配的方式最短匹配,确保匹配的是我们直观预期的路径。比如如下目录结构,

- common- A.java- B.java- a.conf- impl- common- Utils.java- AImpl.java- BImpl.java

我们希望匹配接口 A 和 B 的 java 文件,而不匹配到 impl 里的实现类,可以采用如下匹配方式:**/common/r:.*\.java

路径路由匹配规则的实现

本文采用 kotlin 进行实现,重点位置已经进行注释说明,源代码可见仓库。

/** * **路由匹配** * - 若 "R:" 开头,则为正则模式,采用正则表达式直接匹配 * - 其他情况,采用标准路由模式[matchStdRoutePattern]进行匹配 * * @author lq * @version 1.0 */fun matchRoutePattern(routePattern: String, path: String): Boolean {    return if (routePattern.startsWith("R:")) {        Regex(routePattern.substring(2)).matches(path)    } else {        matchStdRoutePattern(routePattern, path)    }}/** * **路由模式**:路由的特定描述表达式,形如 / ** /xxx/ * /xxx/ * * 语法: * - 以 "/"([PATH_DELIMITER]) 分隔的路径表达式,要求全匹配路径,首尾的分隔符可以省略 * - 每一段路径描述默认采用字符串完全匹配方式,也可通过 "r:" 开头标记该段采用正则表达式匹配 * - 使用通配符 "?" 可以匹配任意一段或 0 段路径,优先不匹配 * - 使用通配符 "*" 可以匹配任意一段路径 * - 使用通配符 "**" 可以匹配任意多段路径,最短匹配原则 * - 使用通配符 "***" 可以匹配任意多段路径,最长匹配原则 */fun matchStdRoutePattern(routePattern: String, path: String): Boolean {    val routeSplit = splitRoute(routePattern)    val pathSplit = splitPath(path)    return matchRoutePatternSplit(routeSplit, 0, pathSplit, 0)}/** * 路由分隔方法 */val splitRoute: (String) -> List = ::splitPathSimple/** * 路径分隔方法 */val splitPath: (String) -> List = ::splitPathSimple/** * 简单解析路径为路径分段列表 */private fun splitPathSimple(routePattern: String): List {    val pathDelimiter = "/"    return routePattern.trim(pathDelimiter).split(pathDelimiter).filter { p -> p.isNotEmpty() }}private fun matchRoutePatternSplit(routeSplit: List, ri: Int, pathSplit: List, pi: Int): Boolean {    if (ri >= routeSplit.size) {        return pi >= pathSplit.size    }    if (pi >= pathSplit.size) {        for (i in ri until routeSplit.size) {            if (routeSplit[i] !in listOf("?", "**", "***")) return false        }        return true    }    when (routeSplit[ri].trim()) {        "?" -> {            if (matchRoutePatternSplit(routeSplit, ri + 1, pathSplit, pi)) return true            return matchRoutePatternSplit(routeSplit, ri + 1, pathSplit, pi + 1)        }        "*" -> {            return matchRoutePatternSplit(routeSplit, ri + 1, pathSplit, pi + 1)        }        "**" -> {            for (i in 0 until pathSplit.size - pi) {                val isShortMatch = matchRoutePatternShort(routeSplit, ri + 1, pathSplit, pi + i, false)                if (isShortMatch.first) return true                if (isShortMatch.second) return false            }            return matchRoutePatternSplit(routeSplit, ri + 1, pathSplit, pi + pathSplit.size - pi)        }        "***" -> {            for (i in pathSplit.size - pi downTo 1) {                if (matchRoutePatternSplit(routeSplit, pi + 1, pathSplit, pi + i)) return true            }            return matchRoutePatternSplit(routeSplit, ri + 1, pathSplit, pi)        }        else -> {            if (!checkRouteSegPattern(routeSplit[ri], pathSplit[pi])) return false            return matchRoutePatternSplit(routeSplit, ri + 1, pathSplit, pi + 1)        }    }}/** * 最短原则匹配,返回 (是否匹配, 是否已经最短匹配) */private fun matchRoutePatternShort(routeSplit: List, ri: Int, pathSplit: List, pi: Int, isShortMatch: Boolean): Pair {    if (ri >= routeSplit.size) {        return (pi >= pathSplit.size) to isShortMatch    }    if (pi >= pathSplit.size) {        for (i in ri until routeSplit.size) {            if (routeSplit[i] !in listOf("?", "**", "***")) return false to isShortMatch        }        return true to isShortMatch    }    when (routeSplit[ri].trim()) {        "?" -> {            val isMatch = matchRoutePatternShort(routeSplit, ri + 1, pathSplit, pi, isShortMatch)            if (isMatch.first) return isMatch            return matchRoutePatternShort(routeSplit, ri + 1, pathSplit, pi + 1, isShortMatch)        }        "*" -> {            return matchRoutePatternShort(routeSplit, ri + 1, pathSplit, pi + 1, isShortMatch)        }        "**" -> {            return matchRoutePatternSplit(routeSplit, ri, pathSplit, pi) to isShortMatch        }        "***" -> {            return matchRoutePatternSplit(routeSplit, ri, pathSplit, pi) to isShortMatch        }        else -> {            return if (checkRouteSegPattern(routeSplit[ri], pathSplit[pi])) {                matchRoutePatternShort(routeSplit, ri + 1, pathSplit, pi + 1, true)            } else {                false to isShortMatch            }        }    }}/** * 路径分段匹配检查 */private fun checkRouteSegPattern(routeSeg: String, pathSeg: String): Boolean {    if (routeSeg.startsWith("r:")) {        if (Regex(routeSeg.substring(2)).matches(pathSeg)) {            return true        }    } else if (routeSeg == pathSeg) return true    return false}
后记

本次分享了在项目中的一个细节设计,后续会继续分享在工作、学习和生活中的点点滴滴,也欢迎大家在评论区共同讨论或与我邮件沟通。

标签:

上一篇 :

环球今亮点!最便宜的雷克萨斯SUV来袭,造型年轻动感,搭载1.5L三缸发动机

下一篇 :

最后一页

分享到 :

推荐阅读

最佳实践:路径路由匹配规则的设计与实现-全球速递

最佳实践:路径路由匹配规则的设计与实现-全球速递

本文设计并实现了一种专用于路径路由匹配的规则,以一种简单而通用的方式描述一组路径的特征,来简化这种场

2023-05-10
环球今亮点!最便宜的雷克萨斯SUV来袭,造型年轻动感,搭载1.5L三缸发动机

环球今亮点!最便宜的雷克萨斯SUV来袭,造型年轻动感,搭载1.5L三缸发动机

雷克萨斯,作为丰田旗下的豪华汽车品牌,它在我们国内汽车市场可以说是家喻户晓的存在,尽管不少车迷朋友们

2023-05-10
男篮热身赛一胜一负!周琦未登场状态未知,世界杯小组赛或三连败

男篮热身赛一胜一负!周琦未登场状态未知,世界杯小组赛或三连败

男篮热身赛一胜一负!周琦未登场状态未知,世界杯小组赛或三连败,中国男篮,中国篮球,美国篮球,男篮世界杯,

2023-05-10
环球观速讯丨住房公积金月缴存额怎么计算?住房公积金缴费基数和工资有关系吗

环球观速讯丨住房公积金月缴存额怎么计算?住房公积金缴费基数和工资有关系吗

公积金缴存基数和工资有关系吗公积金月缴存额怎么算接下来跟社保网小编一起来看看相关详情住房公积金是职工

2023-05-10
张颂文新片“狂飙”五一档影院,小米再掀人文影像浪潮 焦点滚动

张颂文新片“狂飙”五一档影院,小米再掀人文影像浪潮 焦点滚动

插上人文的翅膀,小米变暖了4月小米新品发布会上,张颂文出任“小米影像探索家”,联手小米共同开启人文...

2023-05-10
「理论研讨征文」以担当奋进新姿态 擘旗奋进新征程

「理论研讨征文」以担当奋进新姿态 擘旗奋进新征程

学习宣传贯彻党的二十大精神是七里河区当前和今后一个时期的首要政治任务,全区党员干部将保持昂扬的精神状

2023-05-10
东方证券:保险业资负共振迎双击 把握现阶段板块的配置机遇

东方证券:保险业资负共振迎双击 把握现阶段板块的配置机遇

东方证券发布研究报告称,寿险负债转型仍在推进,规模下滑幅度边际减弱,产能提升成效显著,该行认为应持续

2023-05-10
快资讯:崩坏星穹铁道忘却之庭13层怎么打 打法攻略

快资讯:崩坏星穹铁道忘却之庭13层怎么打 打法攻略

崩坏星穹铁道忘却之庭13层怎么打打法攻略,

2023-05-10
天天最新:马龙:防布克这种出色球员时必须激怒他们 波普今天做得很好

天天最新:马龙:防布克这种出色球员时必须激怒他们 波普今天做得很好

马龙:防布克这种出色球员时必须激怒他们波普今天做得很好,防布克,美国篮球,丹佛掘金队,德文·布克,网球...

2023-05-10
一季度A股新能源汽车板块营收同比增加40%_焦点

一季度A股新能源汽车板块营收同比增加40%_焦点

中国新能源汽车上市公司陆续披露一季度财务数据。根据光大证券的统计,今年一季度,A股新能源汽车板块合计

2023-05-10
市场聚焦美国通胀数据 黄金逼近历史高点 全球最新

市场聚焦美国通胀数据 黄金逼近历史高点 全球最新

市场聚焦美国通胀数据黄金逼近历史高点,黄金,金价,加息,美国,美联储,白银价格,通胀数据,美元指数

2023-05-10
王志飞前妻李健简历_王志飞前妻_视讯

王志飞前妻李健简历_王志飞前妻_视讯

1、王志飞的前妻(原配)叫李健也是北京人,他们还有一个儿子。2、也应该让王志飞常常被人抛弃的滋味吧

2023-05-10
年轻人为啥越来越不爱走亲戚?|环球要闻

年轻人为啥越来越不爱走亲戚?|环球要闻

亲戚太八卦没多余时间走动要花钱父母:孩子成家立业后会明白“亲”的可贵专家:今日之“断亲”青年,总...

2023-05-10
环球通讯!山河智能:我国首台套新能源无人驾驶矿卡正式发布并投入使用

环球通讯!山河智能:我国首台套新能源无人驾驶矿卡正式发布并投入使用

山河智能:我国首台套新能源无人驾驶矿卡正式发布并投入使用,日前,由山河智能与中科慧拓等多家科研单位联

2023-05-10
全球通讯!生活护理+居家康复  太医管家“院后照护服务”正式启动

全球通讯!生活护理+居家康复 太医管家“院后照护服务”正式启动

2023年5月8日中国太保联合国内知名护理服务企业在上海召开发布会正式宣布护工服务联盟成立作为联盟成员中国

2023-05-10
中脉美体内衣真的有那么神奇的效果么?_中脉美体内衣骗局曝光

中脉美体内衣真的有那么神奇的效果么?_中脉美体内衣骗局曝光

1、骗局倒不是骗局,只是最近很多人说被骗了,中脉的内衣价格比较高。2、如果你要加盟的话,首先考虑的是,

2023-05-10
人民银行开展20亿元逆回购操作 公开市场实现净投放20亿元

人民银行开展20亿元逆回购操作 公开市场实现净投放20亿元

人民银行5月10日公告称,为维护银行体系流动性合理充裕,2023年5月10日人民银行以利率招标方式开展了20亿元

2023-05-10
扎克伯格野心未死:元宇宙可为美国贡献 5 万亿 GDP,占比 2.4% 世界今日讯

扎克伯格野心未死:元宇宙可为美国贡献 5 万亿 GDP,占比 2.4% 世界今日讯

扎克伯格野心未死:元宇宙可为美国贡献5万亿GDP,占比2 4%,北京时间5月10日消息,脸书母公司Meta委托德勤进

2023-05-10
“先验后收保维修”新模式让购房者告别“开盲盒”

“先验后收保维修”新模式让购房者告别“开盲盒”

新湖南,主流新媒体,移动新门户。-分享自@新湖南

2023-05-10
白俄罗斯纪念卫国战争胜利78周年 世界热资讯

白俄罗斯纪念卫国战争胜利78周年 世界热资讯

白俄罗斯9日举行游行、献花、音乐会等各类活动,纪念卫国战争胜利78周年。白俄罗斯总统卢卡申科当天来到位

2023-05-10
动态焦点:公募REITs频获原始持有人增持

动态焦点:公募REITs频获原始持有人增持

近日,中信建投国家电投新能源REIT原始权益人及一致行动人接连宣布计划增持该基金份额;华夏基金也披露...

2023-05-10
今日热文:X战警与复联战个痛并非幻想,漫威下个十年要靠新英雄

今日热文:X战警与复联战个痛并非幻想,漫威下个十年要靠新英雄

不过,美国队长的落幕是真正的不可避免,其实美队在漫画版第一次内战中就已经死去,算是钢铁侠的责任;而

2023-05-10
“服务对象”变“治理力量”——福泉“快递、外卖小哥”“随手拍”让新就业群体志愿服务小队参与城市基层治理

“服务对象”变“治理力量”——福泉“快递、外卖小哥”“随手拍”让新就业群体志愿服务小队参与城市基层治理

“通过‘随手拍’将问题反映到网格后,很快就有人联系我们来处理了。”在福泉市送了一年外卖的王刚说。...

2023-05-10
环球快看:免运费英文 免运费

环球快看:免运费英文 免运费

今天来聊聊关于免运费英文,免运费的文章,现在就为大家来简单介绍下免运费英文,免运费,希望对各位小伙伴

2023-05-10
成都换发社保卡了需要重新申请异地就医吗?_快报

成都换发社保卡了需要重新申请异地就医吗?_快报

以前办理过异地就医现在拿到社会保障卡了需要重新申请异地就医吗?换发社会保障卡后异地就医申请不需要重新

2023-05-10
邻居装修

邻居装修"掏"鞋柜损坏分户墙,法院:恢复原状!|当前头条

邻居装修在墙体中 "掏出 "一个鞋柜,导致墙体穿洞,修补后又出现了裂缝,双方为此对簿公堂。日前,南...

2023-05-09
福建非遗遇上雪域之光,超200万人观看!

福建非遗遇上雪域之光,超200万人观看!

雪域之光山海交响西藏唐卡、福建漆画两种历经千年传承的非遗项目跨界融合会碰撞出怎样的火花?5月8日福建发

2023-05-09
时讯:队报:梅西团队与沙特达成口头协议,2年合同+年薪总额6亿欧

时讯:队报:梅西团队与沙特达成口头协议,2年合同+年薪总额6亿欧

直播吧5月9日讯据队报报道,梅西团队与沙特方面达成加盟的口头协议,年薪5亿欧,加上各种福利总额达到6亿欧

2023-05-09
环球速讯:自制豆腐乳夏天可以做吗_自制豆腐乳

环球速讯:自制豆腐乳夏天可以做吗_自制豆腐乳

你们好,最近小活发现有诸多的小伙伴们对于自制豆腐乳夏天可以做吗,自制豆腐乳这个问题都颇为感兴趣的,今

2023-05-09

韦布望远镜发现一系外恒星有3道尘埃环

新华社北京5月9日电天文学家利用詹姆斯·韦布空间望远镜观察太阳系外恒星“北落师门”周围尘埃,结果发...

2023-05-09
世界最资讯丨2023中国 2023中国第一季度GDP

世界最资讯丨2023中国 2023中国第一季度GDP

用户在婚纱城使用现金抵用券付款完成后,活动参与商家在售货单加盖店铺章,顾客凭此至A区服务台扫描特邀二

2023-05-09
蓝兔品牌概念车VOYAH i-Land全球首发

蓝兔品牌概念车VOYAH i-Land全球首发

现在汽车越来越普及,几乎家家户户都有车。这么多车,我们在使用的过程中肯定会遇到各种各样的问题。这个时

2023-05-09
环球今头条!漯河开展2022年检验检测机构“双随机、一公开”监督抽查工作

环球今头条!漯河开展2022年检验检测机构“双随机、一公开”监督抽查工作

大河网讯近日,漯河市开展检验检测机构2022年度“双随机、一公开”监督抽查工作,努力营造规范、公平、...

2023-05-09
南昌六福今日黄金的价格是多少(2023年5月9日)_全球时讯

南昌六福今日黄金的价格是多少(2023年5月9日)_全球时讯

金投黄金网5月9日讯,南昌黄金价格 南昌六福今日黄金价格是多少 

2023-05-09
河南省第八期“三个一批”项目建设活动火热启动

河南省第八期“三个一批”项目建设活动火热启动

5月8日,河南省第八期“三个一批”项目建设活动启动,位于河南省鹤壁市城乡一体化示范区的主会场,机器...

2023-05-09
中国银行周日上班么_中国银行周日上班_焦点热讯

中国银行周日上班么_中国银行周日上班_焦点热讯

1、中国银行周六和周日是上班的。2、具体上班时间为:公司业务:周一到周五,9:00-11:30 13:30-16:30

2023-05-09
阿尔特:公司在研的智控平台PLUS产品,算力将大于10000DMIPS-焦点速看

阿尔特:公司在研的智控平台PLUS产品,算力将大于10000DMIPS-焦点速看

36氪获悉,阿尔特在业绩说明会上表示,中央计算平台+区域控制器的架构是汽车EEA发展的趋势,随着控制功能不

2023-05-09
外资坚定看好人民币资产 中国ESG股债领域前景广阔——专访瑞士百达资产管理亚洲(日本除外)首席执行官赵俊杰

外资坚定看好人民币资产 中国ESG股债领域前景广阔——专访瑞士百达资产管理亚洲(日本除外)首席执行官赵俊杰

新华财经北京5月9日电(王菁)近十余年以来,在监管政策的不断支持下,中国资管行业的发展突飞猛进,资产管

2023-05-09
瑞典央行会议纪要:委员们一致认为货币政策需要进一步收紧并保持紧缩,以便通胀回落并在合理的时间内稳定在目标水平

瑞典央行会议纪要:委员们一致认为货币政策需要进一步收紧并保持紧缩,以便通胀回落并在合理的时间内稳定在目标水平

瑞典央行会议纪要:委员们一致认为货币政策需要进一步收紧并保持紧缩,以便通胀回落并在合理的时间内稳定在

2023-05-09
校园“惠”生活,一码贵州同城&贵州电子商务职业技术学院开启服务新篇章

校园“惠”生活,一码贵州同城&贵州电子商务职业技术学院开启服务新篇章

5月8日,贵州电商云公司旗下的一码贵州同城和贵州电子商务职业技术学院共同打造的“贵州电商职院校园平...

2023-05-09
八格牙路日文_八格牙路什么意思

八格牙路日文_八格牙路什么意思

今天小编肥嘟来为大家解答以上的问题。八格牙路日文,八格牙路什么意思相信很多小伙伴还不知道,现在让我们

2023-05-09
馆长被区长推伤昏迷,致博物馆被迫闭馆?活久见的官场撕逼闹剧-当前头条

馆长被区长推伤昏迷,致博物馆被迫闭馆?活久见的官场撕逼闹剧-当前头条

每一个睿智的灵魂作者:毒哥&玉成来源:毒鸡汤(ID:Du-JiTang)01怪事年年有,但今天我们要讲的这件事情,

2023-05-09
每日观点:公安机关对哈尔滨私拆承重墙事件责任人采取刑事强制措施

每日观点:公安机关对哈尔滨私拆承重墙事件责任人采取刑事强制措施

记者从哈尔滨市松北区政府了解到,5月9日,哈尔滨市松北区利民学苑小区租户私拆承重墙事件发生后,哈尔滨市

2023-05-09
精彩看点:欧洲第一长河是什么河注入什么洋_欧洲第一长河

精彩看点:欧洲第一长河是什么河注入什么洋_欧洲第一长河

1、【答案】C【答案解析】试题分析:欧洲第一长河,被俄罗斯称为“母亲河”,这条河是伏尔加河,位于欧...

2023-05-09
大摩:予药明生物增持评级 目标价升至121港元

大摩:予药明生物增持评级 目标价升至121港元

大摩发布研究报告称,预计药明生物(02269)2022至2026年经调整净利润年均复合增长率为35%,而同期全球和内地生

2023-05-09
世界即时:安康拼多多代运营_提升店铺业绩的有效方法

世界即时:安康拼多多代运营_提升店铺业绩的有效方法

1 了解安康拼多多代运营的优势安康拼多多代运营是一种通过第三方公司帮助商家管理店铺的方式。其优势如下1

2023-05-09
探秘文昌航天发射场:他们为何在测试厂房里“徒手推火箭” 全球百事通

探秘文昌航天发射场:他们为何在测试厂房里“徒手推火箭” 全球百事通

探秘文昌航天发射场:他们为何在测试厂房里“徒手推火箭”

2023-05-09
请进来 走出去 下基层 七里河区开启档案“存史资政育人”新模式 环球滚动

请进来 走出去 下基层 七里河区开启档案“存史资政育人”新模式 环球滚动

点击上方蓝字 关注我们七里河区档案馆结合“三抓三促”行动,立足于档案服务人民群众本职,以学习理论...

2023-05-09
天天快报!大型湖岛实景演出《彭城风华》 打造徐州城市夜游超级IP

天天快报!大型湖岛实景演出《彭城风华》 打造徐州城市夜游超级IP

观众船中坐、船在湖中游、戏在身边演,云龙湖畔金山塔前,光影璀璨,云舟穿行。在大型湖岛实景演出《彭城风

2023-05-09
小鹏CIB电芯底盘一体化技术,是照抄特斯拉吗?_世界短讯

小鹏CIB电芯底盘一体化技术,是照抄特斯拉吗?_世界短讯

小鹏汽车的CTC(官方称之为CIB)技术发布最晚,充分吸取特斯拉、比亚迪、零跑经验教训的同时,一并改进了一

2023-05-09
哈姆:我们有足够的“锦囊妙计”来应对勇士摆出的任何首发阵容 要闻速递

哈姆:我们有足够的“锦囊妙计”来应对勇士摆出的任何首发阵容 要闻速递

哈姆:我们有足够的“锦囊妙计”来应对勇士摆出的任何首发阵容,勇士,库里,湖人,维金斯,美国足球,瑞典足...

2023-05-09
2023广东揭阳市揭西县拟录用公务员公示

2023广东揭阳市揭西县拟录用公务员公示

点击下载>>>关于拟录用9位同志为公务员的公示原标题:关于拟录用黄洁婷等9位同志为公务员的公示文章来源:http: w

2023-05-09
汉服京城降温|看点

汉服京城降温|看点

人流如织的古迹、景区内,衣袂飘飘的汉服爱好者结伴出游,卷起一波穿搭风潮的同时,也让汉服商家分得了流量

2023-05-09
声音造梦师:余音绕梁中织造快乐与梦

声音造梦师:余音绕梁中织造快乐与梦

▲正在配音的刘英杰。(受访者供图)互联网上,夸人长得好,常用这样一句话: "小说主角有了脸 "。刘...

2023-05-09
最新消息:枣庄 :“四个坚持”夯实自然灾害风险防范基础

最新消息:枣庄 :“四个坚持”夯实自然灾害风险防范基础

枣庄:“四个坚持”夯实自然灾害风险防范基础

2023-05-09
当前看点!群昵称搞笑霸气(群昵称搞笑)

当前看点!群昵称搞笑霸气(群昵称搞笑)

1、搞笑的群名如下:1 有福同享有难退群2 永瘦宫3 维密天使线下交流群4 丐帮5 当代恶臭少男的噩梦6 4A级风景

2023-05-09
当前消息!进口牛奶粉十大品牌排行榜_排行榜123

当前消息!进口牛奶粉十大品牌排行榜_排行榜123

1、美赞臣 MeadJohnson2、惠氏 WYETH3、雀巢 Nestle4、美素佳儿 Friso5、爱他美 Apta

2023-05-09
【CBA联赛】总决赛第一场|浙江稠州金租99-107不敌辽宁本钢

【CBA联赛】总决赛第一场|浙江稠州金租99-107不敌辽宁本钢

【CBA联赛】总决赛第一场|浙江稠州金租99-107不敌辽宁本钢,赖特,王奕博,刘泽一,程帅澎,浙江稠州,辽宁本钢,

2023-05-09
背诵者电影_背诵者 今日精选

背诵者电影_背诵者 今日精选

1、想你同时一程身向榆关那畔行这一路那一路默默的无闻。2、呃,省略号应该代表这一句还没有完成的失望,毕

2023-05-08
全球今日讯!王者:又一T0法师诞生,难度低于上官婉儿,成为职业赛场香饽饽

全球今日讯!王者:又一T0法师诞生,难度低于上官婉儿,成为职业赛场香饽饽

王者荣耀进入S31赛季已经有一段时间了,虽然有玩家吐槽上分难,其实只要使用一些版本强势英雄,拿到王者印

2023-05-08
秒杀张学友?力压陈奕迅?他揭开了香港顶流演变的真相-环球聚焦

秒杀张学友?力压陈奕迅?他揭开了香港顶流演变的真相-环球聚焦

前几天,香港新晋顶流姜涛过生日,活活把铜锣湾变成了姜涛湾。▲香港铜锣湾粉丝不仅包揽了街道大小公屏,放

2023-05-08
国乒长腿队花输球落泪!讲出被张本美和淘汰原因,亲承当晚失眠了

国乒长腿队花输球落泪!讲出被张本美和淘汰原因,亲承当晚失眠了

国乒长腿队花输球落泪!讲出被张本美和淘汰原因,亲承当晚失眠了,钱天一,世乒赛,大满贯,张本美和,伊藤美诚,

2023-05-08
关于汉字的资料50字_有关于汉字的资料有哪些50字

关于汉字的资料50字_有关于汉字的资料有哪些50字

欢迎观看本篇文章,小柴来为大家解答以上问题。关于汉字的资料50字,有关于汉字的资料有哪些50字很多人还不

2023-05-08
高三复读学校一年学费多少_为我复读一年的男友|每日速看

高三复读学校一年学费多少_为我复读一年的男友|每日速看

1、复读很辛苦压力也很大。2、你可以鼓励他。以上就是【高三复读学校一年学费多少,为我复读一年的男友】相

2023-05-08
视觉中国上线AI工具:实现版权图片再创作

视觉中国上线AI工具:实现版权图片再创作

视觉中国上线AI工具:实现版权图片再创作

2023-05-08
[快讯]德瑞锂电公布年度业绩预告

[快讯]德瑞锂电公布年度业绩预告

CFi CN讯:证券代码:833523证券简称:德瑞锂电公告编号:2023-033惠州市惠德瑞锂电科技股份有限公司2022

2023-05-08
博爱便民健康之旅,红十字“救”在身边 今日视点

博爱便民健康之旅,红十字“救”在身边 今日视点

伴随着由爱康红十字志愿服务队抗癌志愿者们带来的《爱我中华》非洲鼓表演,启动仪式拉开帷幕。便民服务贴心

2023-05-08
天天观察:多主力现身龙虎榜,金冠电气涨停(05-08)

天天观察:多主力现身龙虎榜,金冠电气涨停(05-08)

上交所2023年5月8日交易公开信息显示,金冠电气因属于日涨幅达到15%的前5只证券而登上龙虎榜。

2023-05-08
上学期因为疫情没去幼儿园,被幼儿园告知取消下学期的入园名额,幼儿园的规

上学期因为疫情没去幼儿园,被幼儿园告知取消下学期的入园名额,幼儿园的规

上学期因为疫情没去幼儿园,被幼儿园告知取消下学期的入园名额,幼儿园的规

2023-05-08
中欧基金钱亚风云:以周期思维布局 重点关注四大领域-全球微资讯

中欧基金钱亚风云:以周期思维布局 重点关注四大领域-全球微资讯

今年以来,A股市场走势较为分化,中欧基金行业精选组基金经理钱亚风云用复苏、创新、低估三个关键词来形容

2023-05-08
中国星辰|总设计师为你讲述中国空间站故事|当前速读

中国星辰|总设计师为你讲述中国空间站故事|当前速读

戳视频↑听中国工程院院士、航天科技集团五院、中国空间站系统总设计师杨宏讲述中国空间站建造过程中,中国

2023-05-08
七禾东吴杯英雄联盟5.5战报(“自在悠闲”抓准热点品种,10个月净值2.07) 焦点报道

七禾东吴杯英雄联盟5.5战报(“自在悠闲”抓准热点品种,10个月净值2.07) 焦点报道

参赛账户“自在悠闲”,自7月份参赛以来,资金曲线虽没有出现大幅回撤,但一直处于震荡状态,近期主要盈...

2023-05-08
养老服务业应如何创新发展?专家们这样说 独家

养老服务业应如何创新发展?专家们这样说 独家

中新网5月8日电(中新财经左雨晴)第七次全国人口普查数据显示,我国60岁及以上人口2 64亿,占18 7%;65岁及

2023-05-08
市行政审批服务局推行“八个一”新举措 助力营商环境新突破

市行政审批服务局推行“八个一”新举措 助力营商环境新突破

渭南日报记者张伯阳5月6日,记者从市行政审批服务局获悉,今年以来,市行政审批服务局以省市“三个年”...

2023-05-08
全球观察:入学须知:2023非京籍北京小学入学政策

全球观察:入学须知:2023非京籍北京小学入学政策

北京作为资源众多的一线城市,是无数人趋之若鹜的地方。在京务工的家长们更希望孩子能够在身边读书成长,但

2023-05-08
三年级下册第27课漏生字 环球今头条

三年级下册第27课漏生字 环球今头条

三年级下册第27课漏生字

2023-05-08
海南离岛免税提货新规满月:近3.5亿元免税品“即购即提” 每日快播

海南离岛免税提货新规满月:近3.5亿元免税品“即购即提” 每日快播

中新网海南新闻5月8日电印尼《千岛日报》、澳门《澳门日报》、菲律宾《世界日报》、泰国《星暹日报》、巴西

2023-05-08
福州海警连续查获5起涉嫌休渔期非法捕捞案 抓获涉案人员22名

福州海警连续查获5起涉嫌休渔期非法捕捞案 抓获涉案人员22名

福州海警局摄  5月4日22时许,福州海警局获悉在闽江港附近海域有船只趁着夜色开展捕捞作业,立即派遣执法

2023-05-08
密集上新、烧钱买量,游戏“诸神之战”再次打响

密集上新、烧钱买量,游戏“诸神之战”再次打响

4月26日,米哈游的新作《崩坏:星穹铁道》正式上线。这款新游有多火?在未上线之前,全球的预约量达到3000

2023-05-08
牛仔裤搭配这4种上衣,夏天穿太好看了!_全球即时

牛仔裤搭配这4种上衣,夏天穿太好看了!_全球即时

牛仔裤搭配这4种上衣,夏天穿太好看了!,衬衫,背心,上衣,t恤,高跟,牛仔裤,好身材

2023-05-08
劳模!拉莫斯职业生涯比赛达1000场 天天短讯

劳模!拉莫斯职业生涯比赛达1000场 天天短讯

西班牙后卫拉莫斯迎来了自己职业生涯的千场里程碑

2023-05-08
讯飞星火认知大模型正式发布,赋能汽车人机交互体验跃升 全球热点评

讯飞星火认知大模型正式发布,赋能汽车人机交互体验跃升 全球热点评

讯飞星火认知大模型正式发布,赋能汽车人机交互体验跃升5月6日,讯飞星火认知大模型成果发布会在安徽合肥举

2023-05-08
速读:重磅方案公布!事关光谷科创大走廊协同建设

速读:重磅方案公布!事关光谷科创大走廊协同建设

光谷科技创新大走廊将如何协同建设?湖北省科技创新办公室日前印发的《加快推进光谷科技创新大走廊协同创新

2023-05-08
每日热点:探索“双向飞地”,破解区域发展不平衡难题

每日热点:探索“双向飞地”,破解区域发展不平衡难题

广东省政府新闻办于近日举行珠三角与粤东粤西粤北经贸合作招商会新闻发布会。此次招商会将于5月11日在广州

2023-05-08
焦点日报:银行股“冰与火”

焦点日报:银行股“冰与火”

从硅谷银行到第一共和银行,美国银行股的连环雷响了,美国银行业也正在经历至暗时刻。相比之下,A股银行股

2023-05-08
全球观察:网友自称曾霸凌刘亦菲?“反以为荣”的态度更可耻

全球观察:网友自称曾霸凌刘亦菲?“反以为荣”的态度更可耻

5月7日,“网友自称曾霸凌刘亦菲”的词条突然登上热搜。该网友称,他曾在学校时“揍了几次刘天仙”,对...

2023-05-08
“高铁掌掴事件”双方都受罚,被掴女子称要提出行政复议 环球简讯

“高铁掌掴事件”双方都受罚,被掴女子称要提出行政复议 环球简讯

一女子乘坐高铁时,因制止熊孩子撞椅背遭到对方家长掌掴,并进行反击。5月7日,该女子在社交媒体发文称,其

2023-05-08
焦点精选!福州二十五中迎60周年校庆

焦点精选!福州二十五中迎60周年校庆

昨日,福州二十五中迎来60周年校庆。该校1963年由瀛滨小学加冠初中班初创,两年后正式命名为“福建省福...

2023-05-08
今日看点:Shams:猛龙正在面试掘金助教大卫-阿德尔曼 以担任球队主教练

今日看点:Shams:猛龙正在面试掘金助教大卫-阿德尔曼 以担任球队主教练

Shams:猛龙正在面试掘金助教大卫-阿德尔曼以担任球队主教练,自由球员,丹佛掘金队,多伦多猛龙队,大卫-阿德

2023-05-08
映山红广场舞花与影_映山红广场舞_焦点热讯

映山红广场舞花与影_映山红广场舞_焦点热讯

1、廖弟广场舞又见山里红的动作分解很多网站都有,不过建议你到56网站搜索,因为这个网址的广场舞视频很清

2023-05-08
大牛股实控人出手!欲清仓离场

大牛股实控人出手!欲清仓离场

曾在新冠疫情之初3个月内,股价翻了3倍的大牛股会畅通讯(行情300578,诊股)如今或将易主。5月7日,会畅通讯

2023-05-07
我国跨境资金流动均衡 外汇储备规模保持基本稳定

我国跨境资金流动均衡 外汇储备规模保持基本稳定

央视网消息:国家外汇管理局5月7日公布最新外汇储备情况,数据显示,中国外汇储备规模保持基本稳定。国家外

2023-05-07
全球资讯:罗威谈G4:激烈程度会是G3的10倍 我们要让恩比德筋疲力尽

全球资讯:罗威谈G4:激烈程度会是G3的10倍 我们要让恩比德筋疲力尽

罗威谈G4:激烈程度会是G3的10倍我们要让恩比德筋疲力尽,费城,疯狂,罗威,罗伯特,美国篮球,莫·威廉姆斯,乔

2023-05-07
越西县气象台发布雷电黄色预警信号【III级/较重】【2023-05-07】_环球通讯

越西县气象台发布雷电黄色预警信号【III级/较重】【2023-05-07】_环球通讯

越西县气象台2023年05月07日17时55分发布雷电黄色预警信号:拉吉镇、书古镇、竹阿觉镇、依洛地坝镇、贡莫镇

2023-05-07
焦点快播:2023年全国桥牌俱乐部锦标赛开赛

焦点快播:2023年全国桥牌俱乐部锦标赛开赛

中国桥牌协会消息,2023年全国桥牌俱乐部锦标赛7日开赛,来自全国的106支队伍汇聚北京世园公园展开角逐

2023-05-07
他汀类药物为何能预防结直肠癌?来看专家怎么说

他汀类药物为何能预防结直肠癌?来看专家怎么说

流行病学的统计显示,吃他汀类药物的人群患大肠癌的比例降低,这是有科学依据的吗?近日,上海交通大学医学

2023-05-07
这场直播,向劳动者致以最“深”的敬意!|天天热点评

这场直播,向劳动者致以最“深”的敬意!|天天热点评

俗话说,上天难,入地更难。这个五一,我国的“深地工程”取得重大突破,亚洲最深井在新疆塔里木盆地开...

2023-05-07
福建4名干部暴雨夜落水失联,救援仍在进行中_全球滚动

福建4名干部暴雨夜落水失联,救援仍在进行中_全球滚动

【 福建4名干部暴雨夜落水失联 】5月6日至7日,福建龙岩市新罗区遭遇特大暴雨袭击,当地龙川溪水位暴涨。7

2023-05-07
天舟六号船箭组合体转运至发射区 近日将择机发射_今日热议

天舟六号船箭组合体转运至发射区 近日将择机发射_今日热议

中新社北京5月7日电(记者马帅莎)据中国载人航天工程办公室消息,北京时间5月7日,天舟六号货运飞船与长征七

2023-05-07
多地用电量整体呈现出积极信号 我国经济加快恢复-消息

多地用电量整体呈现出积极信号 我国经济加快恢复-消息

央视新闻客户端讯电力数据是反映经济运行的“晴雨表”和“风向标”。今年以来,随着消费信心逐步回暖、...

2023-05-07
x 广告
x 广告

Copyright ©  2015-2022 西南水产网版权所有  备案号:皖ICP备2022009963号-8   联系邮箱:39 60 29 14 2@qq.com