- 【PG】常见数据库、表属性设置
江无羡
数据库
PG的常见属性配置方法数据库复制、备份相关表的复制标识单表操作批量表操作链接数据库复制、备份相关表的复制标识单表操作通过ALTER语句单独更改一张表的复制标识。ALTERTABLE[tablename]REPLICAIDENTITYFULL;批量表操作通过代码块的方式,对某个schema中的所有表一起更新其复制标识。SELECTtablename,CASErelreplidentWHEN'd'TH
- WebMagic:强大的Java爬虫框架解析与实战
Aaron_945
Javajava爬虫开发语言
文章目录引言官网链接WebMagic原理概述基础使用1.添加依赖2.编写PageProcessor高级使用1.自定义Pipeline2.分布式抓取优点结论引言在大数据时代,网络爬虫作为数据收集的重要工具,扮演着不可或缺的角色。Java作为一门广泛使用的编程语言,在爬虫开发领域也有其独特的优势。WebMagic是一个开源的Java爬虫框架,它提供了简单灵活的API,支持多线程、分布式抓取,以及丰富的
- 00. 这里整理了最全的爬虫框架(Java + Python)
有一只柴犬
爬虫系列爬虫javapython
目录1、前言2、什么是网络爬虫3、常见的爬虫框架3.1、java框架3.1.1、WebMagic3.1.2、Jsoup3.1.3、HttpClient3.1.4、Crawler4j3.1.5、HtmlUnit3.1.6、Selenium3.2、Python框架3.2.1、Scrapy3.2.2、BeautifulSoup+Requests3.2.3、Selenium3.2.4、PyQuery3.2
- np.identity()/np.eye()
听风1996
两个函数的原型为:np.identity(n,dtype=None)np.eye(N,M=None,k=0,dtype=);np.identity只能创建方形矩阵np.eye可以创建矩形矩阵,且k值可以调节,为1的对角线的位置偏离度,0居中,1向上偏离1,2偏离2,以此类推,-1向下偏离。值绝对值过大就偏离出去了,整个矩阵就全是0了。两者在创建单位矩阵上,并无区别,两者的区别主要在接口上;np.i
- vim十字显示的设置
落雨无风
vimlinux
vim设置分享一下自己的在linux下的vim的设置文件.vimrc其中最想分享的是vim十字显示的方式如图magic自己没有试出来什么效果十字显示是line12~15都需要的。如果只有12,13,设置出来的效果就是下划线的样子。239是0到255配色的中间值。个人比较喜欢239,个人爱好,随便设置自己喜欢的颜色。
- 企业声誉-ESG表现与公司透明度(2009-2021年)
小王毕业啦
大数据大数据社科数据数据分析数据挖掘人工智能
ESG表现是指公司在环境(Environment)、社会(Social)和治理(Governance)方面的表现。这些领域的表现不仅反映了公司对可持续发展的承诺,也是衡量其社会责任的重要指标。环境(Environment):公司在减少碳足迹、保护自然资源和推动绿色能源使用方面的努力。社会(Social):公司在员工福利、社区参与和消费者权益保护方面的贡献。治理(Governance):公司在确保透
- android音频切换到蓝牙耳机,在Android上将音频路由到蓝牙耳机(非A2DP)
weixin_39710594
我有一个非A2DP单耳BT耳机(Plantronics510),并希望使用它与我的AndroidHTCMagic听低质量的音频,如播客/有声书。经过多次谷歌搜索,我发现只有电话音频可以路由到非A2DP蓝牙耳机。(我想知道,如果你已经找到一个现成的解决方案来路由各种音频到非A2DP蓝牙耳机)所以我想,无论如何,以编程方式,我可以将音频传输到携带电话通话音频的流。这样我会愚弄手机携带我的mp3音频到我
- SQL Server外键约束
Lemon{hello_word}
SQLSQLserver数据库sql
SQLServer外键约束简介外键是一个表中的一列或一组列,它唯一地标识另一个表的行。vendor_groups和vendor表,它们的结构如下:CREATETABLEprocurement.vendor_groups(group_idINTIDENTITYPRIMARYKEY,group_nameVARCHAR(100)NOTNULL);CREATETABLEprocurement.vendor
- About E-cigarettes
俗世尘沙
Howbadaree-cigarettesforyou?电子烟对人有多糟?TheregulatorsatAmerica'sFoodandDrugAdministrationcouldbeforgivenforwantingacigarettebreak.TheyrushedtomeetaSeptember9thdeadlinetodecidewhethermorethan6.5me-cigaret
- Sql 多重外键约束
X_Craft
Sql多重外键约束循环或多重级联路径
多重外键约束这个名称可能并不准确,它是多个外键约束情况的一个特例,它指的是外键表有存在两个及以上外键关联到同一个主键表,例如一个部门,有正副两个管理者首先看看不含多重外键的多个外键约束的一般情况,例如一个部门,有一个管理者和一个IT技术支持CREATETABLE[dbo].[Manager]--管理者表([ID][int]NOTNULLIDENTITY(1,1),[Name][nvarchar
- The Magician's Nephew Chapter15
Mr_Oldman
"Oh,"saidDigory,verysurprised."Well,alright,I'llsayI'msorry.AndIreallyamsorryaboutwhathappenedinthewaxworksroom.There:I'vesaidI'msorry.Andnow,dobedecent(正派的)andcomeback.Ishallbeinafrightfulholeifyoudo
- sql存储过程中处理json数据
taozi_5188
sql常用功能和代码json存储jsonsql函数
注意:此方法经过验证后,在数据量大于5条以后会很慢,不建议使用。建议使用这种方法:https://blog.csdn.net/taozi_5188/article/details/105744265用到的函数:CREATEFUNCTION[huo].[parseJSON](@JSONNVARCHAR(MAX))RETURNS@hierarchyTABLE(element_idINTIDENTITY
- 记一下 Stream 流操作
清风ꦿ
开发语言java
JavaStream流Function.identity()获取原流中的值创建流Collection.stream()/Collection.parallelStream():从集合生成流,后者为并行流。Listlist=newArrayListstream=list.stream();//获取一个顺序流StreamparallelStream=list.parallelStream();//获取
- 思科协作2018-IPT大项目随想
taoza
今年还有IPT的大项目,不容易。呵呵。CiscoIPPhone8800SeriesAdministrationGuideforCiscoUnifiedCommunicationsManagerhttps://www.cisco.com/c/en/us/td/docs/voice_ip_comm/cuipph/8800-series/english/adminguide/P881_BK_C13678
- 鸿蒙轻内核M核源码分析系列六 任务及任务调度(1)任务栈
OpenHarmony_小贾
鸿蒙开发OpenHarmonyHarmonyOSHarmonyOSopenharmony鸿蒙开发移动开发鸿蒙内核驱动开发嵌入式硬件
继续分析鸿蒙轻内核源码,我们本文开始要分析下任务及任务调度模块。首先,我们介绍下任务栈的基础概念。任务栈是高地址向低地址生长的递减栈,栈指针指向即将入栈的元素位置。初始化后未使用过的栈空间初始化的内容为宏OS_TASK_STACK_INIT代表的数值0xCACACACA,栈顶初始化为宏OS_TASK_MAGIC_WORD代表的数值0xCCCCCCCC。一个任务栈的示意图如下,其中,栈底指针是栈的最
- 下一代软件架构——SOA
CSDN_document
soa企业应用web中间件weblogic设计模式
Web服务作为炙手可热的技术,如何应用到企业的IT系统和商业流程之中、并给企业带来直接的经济效益,一直备受国内外企业管理者的高度关注和推崇。而在近两年,出现了一种技术架构被誉为下一代Web服务的基础架构,它就是SOA(Service-orientedarchitecture,面向服务架构)。1996年,Gartner最早提出SOA。2002年12月,Gartner提出SOA是“现代应用开发领域最重
- 反序列化漏洞
Slash_HK
web安全相关php安全web安全
JavaPHP反序列化总结文章目录一.PHP反序列化1.序列化serialize()2.反序列化unserialize()二.反序列化漏洞1.漏洞利用Magicfunction2.漏洞利用思路三._construct()的利用2.利用普通成员类方法四.PHP反序列化漏洞总结1.CVE-2016-7124一.PHP反序列化1.序列化serialize()首先我们创建了一个对象,通过serialize
- python字符串驻留机制_Python驻留机制
绝代小李
python字符串驻留机制
is和==先了解下官方文档中关于is和==的概念。is表示的是对象标示符(objectidentity),而==表示的是相等(equality);is的作用是用来检查对象的标示符是否一致,也就是比较两个对象在内存中的地址是否一样(相当于检查id(a)==id(b)),而==是用来检查两个对象引用的值是否相等(相当于检查a.eq(b));这点和Java有点类似,只不过Java中是用==来比较两个对象
- IT中的去“IOE”
key_zhaojd
IOE
I是指“IBM”,O是指“Oracle”,E是“EMC”。去IOE就是去掉IBM的小型机、Oracle数据库、EMC存储设备,代之在开源软件基础上开发的系统。以IBM、Oracle和EMC为代表的三大国际巨头组成的IT系统一直是中国企业信息化的“黄金搭档”,随着云计算和开源软件技术的成熟应用,这种高大上的“黄金搭档”必将走下神坛。据Gartner和IDC的2013年调研数据显示,在全球服务器市场,
- 单点登录和统一身份认证的区别
吗喽一只
github
在工作过程中,总被问到单点登录和统一身份认证的问题。笔者打算尝试用更通俗的方式解释统一身份认证(UnifiedIdentityAuthentication)和单点登录(SingleSign-On,简称SSO)之间的区别。1.定义:(1)单点登录是一种认证技术,它允许用户使用一个用户ID和密码访问不同的应用程序。在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。(2)统一身份认证
- 网络安全最新SARIMA季节项时间序列分析流程+python代码
2401_84301389
程序员python人工智能机器学习
文章目录数据流程流程分割1画图2季节项和周期项的去除3平稳性检验4白噪声检验5模型拟合6模型定阶AIC/BIC准则7检查残差是否通过检验7.1若通过检验7.2若未通过检验8模型的预测9模型的评价画图均方差等总的代码参考数据数据网站:NationalAeronauticsandSpaceAdministrationGoddardInstituteforSpaceStudies主要分析的是北美陆地表面
- 人生苦短我用Python 剪裁图片
程序喵D
人生苦短我用Pythonpython
人生苦短我用Python剪裁图片前言需求准备工作ImageMagick的安装与使用python执行cmd命令python获取命令行参数剪裁示例clip.py完整代码clip.sh脚本运行总结前言最近裁切图片,却没有趁手工具,手动剪裁的图片忽大忽小,总是差强人意。想起曾经用过ImageMagick批量剪裁图片,决定减少简单而繁琐的手动操作,通过命令行程序来批量处理。另外,Python可以很方便调用c
- 事件驱动的架构及应用
treewinder
EDAsoa分布式应用电子政务processing企业应用jms
事件驱动的架构及应用来源:软件世界作者:李臣亮Gartner在2003年引入了一个新术语事件驱动架构(EventDrivenArchitecture,EDA),主要用于描述一种基于事件的范例。EDA是一种用于进行设计和实现应用和系统的方法—在这些应用和系统里,事件所触发的消息可以在独立的、非耦合的组件和服务之间传递,这些模块彼此并不知晓对方。这些应用程序中的EDA极大地改进了企业或政府响应不同的、
- 常用torch.nn
mm_exploration
MyDiffusionpythonpytorch人工智能
目录一、torch.nn和torch.nn.functional二、nn.Linear三、nn.Embedding四、nn.Identity五、Pytorch非线性激活函数六、nn.Conv2d七、nn.Sequential八、nn.ModuleList九、torch.outertorch.cat一、torch.nn和torch.nn.functionalPytorch中torch.nn和torc
- 从内存层面分析Java 参数传递机制
CodeDunkster
java开发语言
在Java中,理解参数传递机制对于编写高效和可维护的代码至关重要。本文将探讨基本数据类型和引用数据类型的参数传递方式,并介绍System.identityHashCode方法及其作用。我们将结合栈帧的概念,通过示例代码来详细解释这些机制。System.identityHashCode的作用System.identityHashCode方法用于获取对象的哈希码,这个哈希码是基于对象的内存地址的。它可
- LeYOLO 用于目标检测的新型可扩展和高效CNN架构 | 最新轻量化SOTA! 5GFLOP下无对手!
迪菲赫尔曼
YOLOv8改进实战目标检测cnn架构pytorch深度学习轻量化
本改进已集成到YOLOv8-Magic框架。论文地址:https://arxiv.org/pdf/2406.14239代码地址:https://github.com/LilianHollard/LeYOLO/tree/main在深度神经网络中,计算效率对于目标检测至关重要,尤其是在新型模型更倾向于速度而非计算效率(浮点运算次数,FLOP)的情况下。这种演变在一定程度上忽视了嵌入式和面向移动的AI目
- Python爬虫实战
weixin_34007879
爬虫jsonjava
引言网络爬虫是抓取互联网信息的利器,成熟的开源爬虫框架主要集中于两种语言Java和Python。主流的开源爬虫框架包括:1.分布式爬虫框架:Nutch2.Java单机爬虫框架:Crawler4j,WebMagic,WebCollector、Heritrix3.python单机爬虫框架:scrapy、pyspiderNutch是专为搜索引擎设计的的分布式开源框架,上手难度高,开发复杂,基本无法满足快
- 2024 (ICPC) Jiangxi Provincial Contest(VP补题记录)
farawaytravelerchy
ACM-ICPC训练补题ICPCCCPC算法PythonC++
2024(ICPC)JiangxiProvincialContest(VP补题记录)已ac8/12,赛时7题,赛后1题。文章目录2024(ICPC)JiangxiProvincialContest(VP补题记录)A(签到中的签到,pass)C(简单思维)GJ(按题意模拟即可)KH(卷积加权和反过来看)L.CampusD.MagicLCMA(签到中的签到,pass)C(简单思维)要么n要么n-1.F
- debian10安装配置_如何在Debian 10上设置和配置证书颁发机构(CA)
cukw6666
linuxjavapythonubuntu大数据
debian10安装配置介绍(Introduction)ACertificateAuthority(CA)isanentityresponsibleforissuingdigitalcertificatestoverifyidentitiesontheinternet.AlthoughpublicCAsareapopularchoiceforverifyingtheidentityofwebsit
- 搜维尔科技:研究和使用Geomagic Touch X触觉反馈设备进行医疗模拟
北京搜维尔科技有限公司
科技
研究和使用GeomagicTouchX触觉反馈设备进行医疗模拟搜维尔科技:研究和使用GeomagicTouchX触觉反馈设备进行医疗模拟
- Algorithm
香水浓
javaAlgorithm
冒泡排序
public static void sort(Integer[] param) {
for (int i = param.length - 1; i > 0; i--) {
for (int j = 0; j < i; j++) {
int current = param[j];
int next = param[j + 1];
- mongoDB 复杂查询表达式
开窍的石头
mongodb
1:count
Pg: db.user.find().count();
统计多少条数据
2:不等于$ne
Pg: db.user.find({_id:{$ne:3}},{name:1,sex:1,_id:0});
查询id不等于3的数据。
3:大于$gt $gte(大于等于)
&n
- Jboss Java heap space异常解决方法, jboss OutOfMemoryError : PermGen space
0624chenhong
jvmjboss
转自
http://blog.csdn.net/zou274/article/details/5552630
解决办法:
window->preferences->java->installed jres->edit jre
把default vm arguments 的参数设为-Xms64m -Xmx512m
----------------
- 文件上传 下载 解析 相对路径
不懂事的小屁孩
文件上传
有点坑吧,弄这么一个简单的东西弄了一天多,身边还有大神指导着,网上各种百度着。
下面总结一下遇到的问题:
文件上传,在页面上传的时候,不要想着去操作绝对路径,浏览器会对客户端的信息进行保护,避免用户信息收到攻击。
在上传图片,或者文件时,使用form表单来操作。
前台通过form表单传输一个流到后台,而不是ajax传递参数到后台,代码如下:
<form action=&
- 怎么实现qq空间批量点赞
换个号韩国红果果
qq
纯粹为了好玩!!
逻辑很简单
1 打开浏览器console;输入以下代码。
先上添加赞的代码
var tools={};
//添加所有赞
function init(){
document.body.scrollTop=10000;
setTimeout(function(){document.body.scrollTop=0;},2000);//加
- 判断是否为中文
灵静志远
中文
方法一:
public class Zhidao {
public static void main(String args[]) {
String s = "sdf灭礌 kjl d{';\fdsjlk是";
int n=0;
for(int i=0; i<s.length(); i++) {
n = (int)s.charAt(i);
if((
- 一个电话面试后总结
a-john
面试
今天,接了一个电话面试,对于还是初学者的我来说,紧张了半天。
面试的问题分了层次,对于一类问题,由简到难。自己觉得回答不好的地方作了一下总结:
在谈到集合类的时候,举几个常用的集合类,想都没想,直接说了list,map。
然后对list和map分别举几个类型:
list方面:ArrayList,LinkedList。在谈到他们的区别时,愣住了
- MSSQL中Escape转义的使用
aijuans
MSSQL
IF OBJECT_ID('tempdb..#ABC') is not null
drop table tempdb..#ABC
create table #ABC
(
PATHNAME NVARCHAR(50)
)
insert into #ABC
SELECT N'/ABCDEFGHI'
UNION ALL SELECT N'/ABCDGAFGASASSDFA'
UNION ALL
- 一个简单的存储过程
asialee
mysql存储过程构造数据批量插入
今天要批量的生成一批测试数据,其中中间有部分数据是变化的,本来想写个程序来生成的,后来想到存储过程就可以搞定,所以随手写了一个,记录在此:
DELIMITER $$
DROP PROCEDURE IF EXISTS inse
- annot convert from HomeFragment_1 to Fragment
百合不是茶
android导包错误
创建了几个类继承Fragment, 需要将创建的类存储在ArrayList<Fragment>中; 出现不能将new 出来的对象放到队列中,原因很简单;
创建类时引入包是:import android.app.Fragment;
创建队列和对象时使用的包是:import android.support.v4.ap
- Weblogic10两种修改端口的方法
bijian1013
weblogic端口号配置管理config.xml
一.进入控制台进行修改 1.进入控制台: http://127.0.0.1:7001/console 2.展开左边树菜单 域结构->环境->服务器-->点击AdminServer(管理) &
- mysql 操作指令
征客丶
mysql
一、连接mysql
进入 mysql 的安装目录;
$ bin/mysql -p [host IP 如果是登录本地的mysql 可以不写 -p 直接 -u] -u [userName] -p
输入密码,回车,接连;
二、权限操作[如果你很了解mysql数据库后,你可以直接去修改系统表,然后用 mysql> flush privileges; 指令让权限生效]
1、赋权
mys
- 【Hive一】Hive入门
bit1129
hive
Hive安装与配置
Hive的运行需要依赖于Hadoop,因此需要首先安装Hadoop2.5.2,并且Hive的启动前需要首先启动Hadoop。
Hive安装和配置的步骤
1. 从如下地址下载Hive0.14.0
http://mirror.bit.edu.cn/apache/hive/
2.解压hive,在系统变
- ajax 三种提交请求的方法
BlueSkator
Ajaxjqery
1、ajax 提交请求
$.ajax({
type:"post",
url : "${ctx}/front/Hotel/getAllHotelByAjax.do",
dataType : "json",
success : function(result) {
try {
for(v
- mongodb开发环境下的搭建入门
braveCS
运维
linux下安装mongodb
1)官网下载mongodb-linux-x86_64-rhel62-3.0.4.gz
2)linux 解压
gzip -d mongodb-linux-x86_64-rhel62-3.0.4.gz;
mv mongodb-linux-x86_64-rhel62-3.0.4 mongodb-linux-x86_64-rhel62-
- 编程之美-最短摘要的生成
bylijinnan
java数据结构算法编程之美
import java.util.HashMap;
import java.util.Map;
import java.util.Map.Entry;
public class ShortestAbstract {
/**
* 编程之美 最短摘要的生成
* 扫描过程始终保持一个[pBegin,pEnd]的range,初始化确保[pBegin,pEnd]的ran
- json数据解析及typeof
chengxuyuancsdn
jstypeofjson解析
// json格式
var people='{"authors": [{"firstName": "AAA","lastName": "BBB"},'
+' {"firstName": "CCC&
- 流程系统设计的层次和目标
comsci
设计模式数据结构sql框架脚本
流程系统设计的层次和目标
 
- RMAN List和report 命令
daizj
oraclelistreportrman
LIST 命令
使用RMAN LIST 命令显示有关资料档案库中记录的备份集、代理副本和映像副本的
信息。使用此命令可列出:
• RMAN 资料档案库中状态不是AVAILABLE 的备份和副本
• 可用的且可以用于还原操作的数据文件备份和副本
• 备份集和副本,其中包含指定数据文件列表或指定表空间的备份
• 包含指定名称或范围的所有归档日志备份的备份集和副本
• 由标记、完成时间、可
- 二叉树:红黑树
dieslrae
二叉树
红黑树是一种自平衡的二叉树,它的查找,插入,删除操作时间复杂度皆为O(logN),不会出现普通二叉搜索树在最差情况时时间复杂度会变为O(N)的问题.
红黑树必须遵循红黑规则,规则如下
1、每个节点不是红就是黑。 2、根总是黑的 &
- C语言homework3,7个小题目的代码
dcj3sjt126com
c
1、打印100以内的所有奇数。
# include <stdio.h>
int main(void)
{
int i;
for (i=1; i<=100; i++)
{
if (i%2 != 0)
printf("%d ", i);
}
return 0;
}
2、从键盘上输入10个整数,
- 自定义按钮, 图片在上, 文字在下, 居中显示
dcj3sjt126com
自定义
#import <UIKit/UIKit.h>
@interface MyButton : UIButton
-(void)setFrame:(CGRect)frame ImageName:(NSString*)imageName Target:(id)target Action:(SEL)action Title:(NSString*)title Font:(CGFloa
- MySQL查询语句练习题,测试足够用了
flyvszhb
sqlmysql
http://blog.sina.com.cn/s/blog_767d65530101861c.html
1.创建student和score表
CREATE TABLE student (
id INT(10) NOT NULL UNIQUE PRIMARY KEY ,
name VARCHAR
- 转:MyBatis Generator 详解
happyqing
mybatis
MyBatis Generator 详解
http://blog.csdn.net/isea533/article/details/42102297
MyBatis Generator详解
http://git.oschina.net/free/Mybatis_Utils/blob/master/MybatisGeneator/MybatisGeneator.
- 让程序员少走弯路的14个忠告
jingjing0907
工作计划学习
无论是谁,在刚进入某个领域之时,有再大的雄心壮志也敌不过眼前的迷茫:不知道应该怎么做,不知道应该做什么。下面是一名软件开发人员所学到的经验,希望能对大家有所帮助
1.不要害怕在工作中学习。
只要有电脑,就可以通过电子阅读器阅读报纸和大多数书籍。如果你只是做好自己的本职工作以及分配的任务,那是学不到很多东西的。如果你盲目地要求更多的工作,也是不可能提升自己的。放
- nginx和NetScaler区别
流浪鱼
nginx
NetScaler是一个完整的包含操作系统和应用交付功能的产品,Nginx并不包含操作系统,在处理连接方面,需要依赖于操作系统,所以在并发连接数方面和防DoS攻击方面,Nginx不具备优势。
2.易用性方面差别也比较大。Nginx对管理员的水平要求比较高,参数比较多,不确定性给运营带来隐患。在NetScaler常见的配置如健康检查,HA等,在Nginx上的配置的实现相对复杂。
3.策略灵活度方
- 第11章 动画效果(下)
onestopweb
动画
index.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/
- FAQ - SAP BW BO roadmap
blueoxygen
BOBW
http://www.sdn.sap.com/irj/boc/business-objects-for-sap-faq
Besides, I care that how to integrate tightly.
By the way, for BW consultants, please just focus on Query Designer which i
- 关于java堆内存溢出的几种情况
tomcat_oracle
javajvmjdkthread
【情况一】:
java.lang.OutOfMemoryError: Java heap space:这种是java堆内存不够,一个原因是真不够,另一个原因是程序中有死循环; 如果是java堆内存不够的话,可以通过调整JVM下面的配置来解决: <jvm-arg>-Xms3062m</jvm-arg> <jvm-arg>-Xmx
- Manifest.permission_group权限组
阿尔萨斯
Permission
结构
继承关系
public static final class Manifest.permission_group extends Object
java.lang.Object
android. Manifest.permission_group 常量
ACCOUNTS 直接通过统计管理器访问管理的统计
COST_MONEY可以用来让用户花钱但不需要通过与他们直接牵涉的权限
D