- python调用rocketmq的api_Python:Rocketmq消息队列使用
weixin_39914868
rocketmq可以与kafka等一起使用,用于实时消息处理。安装rocketmq:pipinstallrocketmq[-ihttps://pypi.tuna.tsinghua.edu.cn/simple]生产消息producer:fromrocketmq.clientimportProducer,Messageimportjsonproducer=Producer('PID-test')pro
- Python API操作RocketMQ
京城小筑
#Python编程python
背景:开发背景:公司相关报表需求需要将订单业务数据同步至RocketMQ中,由于需要保证开发的一致性(多个部门协同开发),所以采用读取Hive离线数据的方式通过PythonAPI写入RocketMQ中,便于其他开发同事调用~开发环境:本地调试系统MacPython3.7.5rocketmq0.4.4(Python模块)rocketmq-client-python2.0.0(Python模块)服务器
- python操作rocket-mq
AQH~
Python
1、参考源码看源码,可以修改消息字节长度限制(rocketmq/client.py)2、推送消息fromrocketmq.clientimportProducer,Messageproducer=Producer('PID-001')#随便producer.set_namesrv_addr('ip:port')#ip和端口producer.start()msg=Message('rocket_mq
- 婆婆不帮我带孩子
momo_2007
当婆婆说,我不给你们带孩子了,有本事让你自己妈妈来带吧,怎么回答?https://m.zjurl.cn/answer/6858924445277552904/?app=news_article&app_id=13&tt_from=android_share&utm_medium=toutiao_android&utm_campaign=client_share
- Telegram miniApp开发(三)
无物勿吾
Telegramchrome前端
本节主要讲设置导航栏和监听事件导入依赖宝定义全局Context"useclient";import{createContext,useContext,useEffect,useMemo,useState}from"react";interfaceITelegramUser{id:number;first_name:string;last_name:string;username:string;la
- 接口测试06 -- pytest接口自动化封装&Loggin实战
糯米不开花ぴ
软件测试python进阶python
1.接口关键字封装1.1基本概念接口关键字封装是指:将接口测试过程中常用的操作、验证封装成可复用的关键字(或称为函数、方法),以提高测试代码的可维护性和可复用性。1.2常见的接口关键字封装方式1.发送请求:封装一个函数,接受参数如请求方法、URL、请求头、请求体等,使用相应的库发送请求,如requests库或HttpClient库。---------------->>>>
- 简单介绍 docker
ZH_qaq
windowsjavascriptdocker
简单介绍docker简介Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化,容器是完全使用沙箱机制,相互之间不会有任何接口。一个完整的Docker有以下几个部分组成:DockerClient客户端DockerDaemon守护进程DockerImage镜像DockerCont
- win32com python_python win32com模块
圭多达莱佐
win32compython
今天再次被python的强大所折服,一直很奇怪公司的excel文件直接生成sql脚本是怎么实现的,今天闲着没事找到实现脚本看了下,竟然就是用python写的!!!当时真的是震惊了,仔细看了下脚本内容,里面用到了一个关键模块win32com,这里在网上找到了一些大神们总结的该模块用法,码来一起学习!!importwin32comfromwin32com.clientimportDispatch,co
- 如何使用 win32com 库
小九不会Python
#Web开发python开发语言
以下是如何使用win32com库的基本步骤:1.安装pywin32win32com是pywin32库的一部分,首先需要安装pywin32:pipinstallpywin322.导入win32com.clientimportwin32com.client3.连接到COM对象使用win32com.client.Dispatch连接到COM对象:excel=win32com.client.Dispatc
- etcd命令etcdctl帮助
fc浮云
etcd
#etcdctl--helpNAME:etcdctl-Asimplecommandlineclientforetcd3.USAGE:etcdctl[flags]VERSION:3.4.13APIVERSION:3.4COMMANDS:alarmdisarmDisarmsallalarmsalarmlistListsallalarmsauthdisableDisablesauthentication
- springcloud微服务 - 集成Zuul网关 无法通过网关
徐先生Paul
springcloud微服务Zuul网关java微服务微服务架构cloud
springcloud微服务-集成Zuul网关无法通过网关今天上午配置了下zuul网关,结果无法通过网关。具体如下:下面先贴下我做的动作。1、application.yml文件:server:port:9004eureka:instance:hostname:127.0.0.1client:service-url:defaultZone:http://${eureka.instance.hostn
- 微服务注册中心都有哪些
xmh-sxh-1314
微服务
在微服务架构中,注册中心扮演着至关重要的角色,用于服务的注册与发现。以下是一些常见的注册中心:Eureka:Eureka是Netflix开发的服务发现框架,后来贡献给了SpringCloud。它主要用于AWS云,但也可以在其他环境中运行。Eureka包含EurekaServer和EurekaClient两部分。Server提供服务的注册与发现,而Client则负责将服务注册到Server上,并从S
- Hadoop YARN【一】
冷雨夜下的星空
Hadoop生态圈hadoopyarn
YARN概念YARN是一种新的Hadoop资源管理器,它是一个通用的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。内部组件Client:负责提交应用程序。ResourceManager:全局的资源管理器,整个集群只有一个,负责集群资源的统一管理和调度分配。ApplicationMaster:在yarn上运行的应用程序实例对象,负责管理此应用程序的执行。功能:数
- C/S模式和B/S模式的优缺点
躺平程序猿
网络编程网络程序设计
什么是C/S模式C/S模式是传统的网络应用设计模式,客户机(client)/服务器(server)模式。需要在通讯两端各自部署客户机和服务器来完成数据通信。如(QQ、微信、LOL、CF、DNF等游戏需要下载客户端)什么是B/S模式浏览器(browser)/服务器(server)模式。只需在一端部署服务器,而另外一端使用每台PC都默认配置的浏览器即可完成数据的传输。优缺点C/S优点:协议选择灵活,由
- Docker容器编程
neo_Ggx23
服务器docker容器javanginxredis
文章目录安装、卸载、配置镜像加速数据卷volume网络通讯DockerCompose容器编排docker-compose.yml命令清单相关实战Docker启动MySQL镜像Docker启动YapiDocker部署前后端分离项目安装、卸载、配置镜像加速卸载$sudoyumremovedocker\docker-client\docker-client-latest\docker-common\do
- C/S模式优缺点
nxyc_twz
系统分析师服务器任务平台
C/S模式优缺点优点:1.结构简单,系统中不同类型的任务分别由客户和服务器承担,有利于发挥不同机器平台的优势;2.支持分布式、并发环境,特别是当客户和服务器之间的关系是多对多时,可以有效地提高资源的利用率和共享程度;3.服务器集中管理资源,有利于权限控制和系统安全。•缺点:在大多数client-server风格的系统中,构件之间的连接通过(远程)过程调用,接近于代码一级,表达能力较弱
- c/s模式的优势
至学者
设计模式模式
一概述c/s模式的优势在于其需要加载的页面在用户端,只是从服务端获取数据,这样设计的软件运行和更新的比较快。二C/S架构C为Client(客户端),S为Server(服务端),我们通过Socket实现C/S软件架构的服务端与客户端之间的网络通信。三C/S信息传输流程完成一次网络通信,大致需要经过五个步骤:客户端产生数据,存放于客户端应用的工作内存中,然后调用接口将自己内存中的数据发送/拷贝给操作系
- 聊聊C/S模式架构的优缺点
Feng.Lee
漫谈测试架构
C/S模式架构,即客户端-服务器(Client/Server)架构,是一种常见的软件系统架构,以下是C/S模式架构的优缺点分析。C/S架构优点部分:性能高效:由于客户端直接与服务器进行数据交换,没有中间层的延迟,因此响应速度快,能够处理大量数据和复杂业务逻辑。界面丰富:客户端可以提供高度定制化的用户界面和操作体验,支持更复杂的图形界面和操作功能。安全性较高:可以通过自定义协议和多层认证机制确保数据
- CEF小白人系列10-代码实现Command-Line模式
守城小轩
CEFcef
我们知道了如何使用命令行执行模式来增加参数。Command-Line可以不可以在代码里进行修改呢?答案是可以的。其实我只需要重载OnBeforeCommandLineProcessing就可以了。下面给出片段的代码classCCefClientApp:publicCefApp,publicCefBrowserProcessHandler{public:CCefClientApp();~CCefCl
- Feign远程调用失败问题
不识愁滋味.
java微服务
今天在调试代码的时候遇到了一个远程调用失败的问题,用Feign调用服务名时,无法从服务名解析成对应的URL。FeignClient接口如下:@FeignClient("blogservice")publicinterfaceBlogClient{@RequestMapping("/category/getCategoryListTest")ListgetCategoryList();@Reques
- JedisUtils 对jedis的封装 and RedisCacheManager 管理多个连接池
潘多编程
Redisredis
RedisCacheManagerimportjava.util.concurrent.ConcurrentHashMap;importorg.springframework.beans.factory.annotation.Value;importorg.springframework.stereotype.Service;importredis.clients.jedis.Jedis;impo
- 大数据(Hbase简单示例)
BL小二
hbase大数据hadoop
importorg.apache.hadoop.conf.Configuration;importorg.apache.hadoop.hbase.HBaseConfiguration;importorg.apache.hadoop.hbase.TableName;importorg.apache.hadoop.hbase.client.*;importorg.apache.hadoop.hbase
- LINUX 入门 7
halcyonfreed
LINUX入门linux服务器
LINUX入门7day1020240506耗时:59minday1120240507耗时:106min课程链接地址第7章http客户端请求1http项目介绍与Http协议讲解先去看一遍教程扫一遍,不用完全一行行读ctrl+shift+I调出来网页调试台——network——img过程:client浏览器建立与百度服务器的tcp连接(用DNS翻译成ip)在tcp连接socket上发送http协议请求
- 【Java】已解决:com.sun.jersey.api.client.ClientHandlerException配置服务器异常
屿小夏
java服务器开发语言
文章目录一、分析问题背景二、可能出错的原因三、错误代码示例四、正确代码示例五、注意事项已解决:com.sun.jersey.api.client.ClientHandlerException配置服务器异常一、分析问题背景在Java开发中,使用Jersey客户端进行HTTP请求时,可能会遇到com.sun.jersey.api.client.ClientHandlerException报错。该异常通
- Django1.8无法连接mysql的问题Did you install mysqlclient or MySQL-python
纵横千里,捭阖四方
pythonmysql数据库database
使用Django1.8创建新项目时,经常出现一个奇怪的问题ErrorloadingMySQLdbModule'DidyouinstallmysqlclientorMySQL-python?'即使将这两个使用pipinstall给安装了还是无法启动,这时候应该做的是:pipinstallpymysql然后在工程目录下的__init__.py文件里添加importpymysqlpymysql.inst
- python连接oracle数据库报DPI-1047: Cannot locate a 64-bit Oracle Client library
没有星期八~
数据库pythonoracle
pthon版本和oracle客户端版本一致即可,即都为64位或都为32位importcx_Oracleimportsysimportostry:ifsys.platform.startswith("darwin"):lib_dir=os.path.join(os.environ.get("HOME"),"Downloads","instantclient_19_21")cx_Oracle.init
- cx_Oracle.DatabaseError: DPI-1047: Cannot locate a 64-bit Oracle Client library
虚幻如影
pythonoracle数据库python
pipinstallcx_Oracleimportcx_Oracle再导入该模块进行数据库连接的时候报错这个错误表明您的Python环境是64位的,但是您尝试使用的Oracle客户端库(oci.dll)是32位的根据官方给出的文档进行查看cx_Oracle8Installation—cx_Oracle8.3.0documentationhttps://cx-oracle.readthedocs.i
- django 不用自带的mysql_Python MySQL 数据库连接 (三) mysqlclient django默认使用
许菲比
django不用自带的mysql
Mysql驱动介绍MySQL-python(弃用):也就是MySQLdb,是对C语言操作MySQL数据库的一个简单封装。遵循了PythonDBAPIv2。但是只支持Python2,目前还不支持Python3。mysqlclient(安装难,但django官方默认):是MySQL-python的另外一个分支,支持Python3并且修复了一些bug。pymysql:纯Python实现的一个驱动,因为是
- xc_oracle 1047 error,Error: DPI-1047: Cannot locate a 64-bit Oracle Client library: "问题
Oli Zhao
xc_oracle1047error
参考:python打包后,在别的机器遇上运行,提示报错,报错内容为:Error:DPI-1047:Cannotlocatea64-bitOracleClientlibrary:"Thespecifiedmodulecouldnotbefound".Seeforhelp根本问题:打包时未将oracledll文件打包进去,导致运行找不到链接库。临时解决办法:方法一:1、安装oracle64位客户端2、
- cx_Oracle 错误.DPI-1047:找不到 64 位 Oracle 客户端库
潮易
oracle数据库
在Python中使用cx_Oracle模块与Oracle数据库进行交互时,如果遇到“DPI-1047:找不到64位Oracle客户端库”错误,通常是因为系统无法找到适合当前环境(操作系统、位数)的Oracle客户端库。解决这个问题的步骤大致如下:###1.安装对应版本的OracleInstantClient-**下载**:首先,根据你的操作系统类型(如Windows、macOS、Linux等)和位
- JAVA中的Enum
周凡杨
javaenum枚举
Enum是计算机编程语言中的一种数据类型---枚举类型。 在实际问题中,有些变量的取值被限定在一个有限的范围内。 例如,一个星期内只有七天 我们通常这样实现上面的定义:
public String monday;
public String tuesday;
public String wensday;
public String thursday
- 赶集网mysql开发36条军规
Bill_chen
mysql业务架构设计mysql调优mysql性能优化
(一)核心军规 (1)不在数据库做运算 cpu计算务必移至业务层; (2)控制单表数据量 int型不超过1000w,含char则不超过500w; 合理分表; 限制单库表数量在300以内; (3)控制列数量 字段少而精,字段数建议在20以内
- Shell test命令
daizj
shell字符串test数字文件比较
Shell test命令
Shell中的 test 命令用于检查某个条件是否成立,它可以进行数值、字符和文件三个方面的测试。 数值测试 参数 说明 -eq 等于则为真 -ne 不等于则为真 -gt 大于则为真 -ge 大于等于则为真 -lt 小于则为真 -le 小于等于则为真
实例演示:
num1=100
num2=100if test $[num1]
- XFire框架实现WebService(二)
周凡杨
javawebservice
有了XFire框架实现WebService(一),就可以继续开发WebService的简单应用。
Webservice的服务端(WEB工程):
两个java bean类:
Course.java
package cn.com.bean;
public class Course {
private
- 重绘之画图板
朱辉辉33
画图板
上次博客讲的五子棋重绘比较简单,因为只要在重写系统重绘方法paint()时加入棋盘和棋子的绘制。这次我想说说画图板的重绘。
画图板重绘难在需要重绘的类型很多,比如说里面有矩形,园,直线之类的,所以我们要想办法将里面的图形加入一个队列中,这样在重绘时就
- Java的IO流
西蜀石兰
java
刚学Java的IO流时,被各种inputStream流弄的很迷糊,看老罗视频时说想象成插在文件上的一根管道,当初听时觉得自己很明白,可到自己用时,有不知道怎么代码了。。。
每当遇到这种问题时,我习惯性的从头开始理逻辑,会问自己一些很简单的问题,把这些简单的问题想明白了,再看代码时才不会迷糊。
IO流作用是什么?
答:实现对文件的读写,这里的文件是广义的;
Java如何实现程序到文件
- No matching PlatformTransactionManager bean found for qualifier 'add' - neither
林鹤霄
java.lang.IllegalStateException: No matching PlatformTransactionManager bean found for qualifier 'add' - neither qualifier match nor bean name match!
网上找了好多的资料没能解决,后来发现:项目中使用的是xml配置的方式配置事务,但是
- Row size too large (> 8126). Changing some columns to TEXT or BLOB
aigo
column
原文:http://stackoverflow.com/questions/15585602/change-limit-for-mysql-row-size-too-large
异常信息:
Row size too large (> 8126). Changing some columns to TEXT or BLOB or using ROW_FORMAT=DYNAM
- JS 格式化时间
alxw4616
JavaScript
/**
* 格式化时间 2013/6/13 by 半仙
[email protected]
* 需要 pad 函数
* 接收可用的时间值.
* 返回替换时间占位符后的字符串
*
* 时间占位符:年 Y 月 M 日 D 小时 h 分 m 秒 s 重复次数表示占位数
* 如 YYYY 4占4位 YY 占2位<p></p>
* MM DD hh mm
- 队列中数据的移除问题
百合不是茶
队列移除
队列的移除一般都是使用的remov();都可以移除的,但是在昨天做线程移除的时候出现了点问题,没有将遍历出来的全部移除, 代码如下;
//
package com.Thread0715.com;
import java.util.ArrayList;
public class Threa
- Runnable接口使用实例
bijian1013
javathreadRunnablejava多线程
Runnable接口
a. 该接口只有一个方法:public void run();
b. 实现该接口的类必须覆盖该run方法
c. 实现了Runnable接口的类并不具有任何天
- oracle里的extend详解
bijian1013
oracle数据库extend
扩展已知的数组空间,例:
DECLARE
TYPE CourseList IS TABLE OF VARCHAR2(10);
courses CourseList;
BEGIN
-- 初始化数组元素,大小为3
courses := CourseList('Biol 4412 ', 'Psyc 3112 ', 'Anth 3001 ');
--
- 【httpclient】httpclient发送表单POST请求
bit1129
httpclient
浏览器Form Post请求
浏览器可以通过提交表单的方式向服务器发起POST请求,这种形式的POST请求不同于一般的POST请求
1. 一般的POST请求,将请求数据放置于请求体中,服务器端以二进制流的方式读取数据,HttpServletRequest.getInputStream()。这种方式的请求可以处理任意数据形式的POST请求,比如请求数据是字符串或者是二进制数据
2. Form
- 【Hive十三】Hive读写Avro格式的数据
bit1129
hive
1. 原始数据
hive> select * from word;
OK
1 MSN
10 QQ
100 Gtalk
1000 Skype
2. 创建avro格式的数据表
hive> CREATE TABLE avro_table(age INT, name STRING)STORE
- nginx+lua+redis自动识别封解禁频繁访问IP
ronin47
在站点遇到攻击且无明显攻击特征,造成站点访问慢,nginx不断返回502等错误时,可利用nginx+lua+redis实现在指定的时间段 内,若单IP的请求量达到指定的数量后对该IP进行封禁,nginx返回403禁止访问。利用redis的expire命令设置封禁IP的过期时间达到在 指定的封禁时间后实行自动解封的目的。
一、安装环境:
CentOS x64 release 6.4(Fin
- java-二叉树的遍历-先序、中序、后序(递归和非递归)、层次遍历
bylijinnan
java
import java.util.LinkedList;
import java.util.List;
import java.util.Stack;
public class BinTreeTraverse {
//private int[] array={ 1, 2, 3, 4, 5, 6, 7, 8, 9 };
private int[] array={ 10,6,
- Spring源码学习-XML 配置方式的IoC容器启动过程分析
bylijinnan
javaspringIOC
以FileSystemXmlApplicationContext为例,把Spring IoC容器的初始化流程走一遍:
ApplicationContext context = new FileSystemXmlApplicationContext
("C:/Users/ZARA/workspace/HelloSpring/src/Beans.xml&q
- [科研与项目]民营企业请慎重参与军事科技工程
comsci
企业
军事科研工程和项目 并非要用最先进,最时髦的技术,而是要做到“万无一失”
而民营科技企业在搞科技创新工程的时候,往往考虑的是技术的先进性,而对先进技术带来的风险考虑得不够,在今天提倡军民融合发展的大环境下,这种“万无一失”和“时髦性”的矛盾会日益凸显。。。。。。所以请大家在参与任何重大的军事和政府项目之前,对
- spring 定时器-两种方式
cuityang
springquartz定时器
方式一:
间隔一定时间 运行
<bean id="updateSessionIdTask" class="com.yang.iprms.common.UpdateSessionTask" autowire="byName" />
<bean id="updateSessionIdSchedule
- 简述一下关于BroadView站点的相关设计
damoqiongqiu
view
终于弄上线了,累趴,戳这里http://www.broadview.com.cn
简述一下相关的技术点
前端:jQuery+BootStrap3.2+HandleBars,全站Ajax(貌似对SEO的影响很大啊!怎么破?),用Grunt对全部JS做了压缩处理,对部分JS和CSS做了合并(模块间存在很多依赖,全部合并比较繁琐,待完善)。
后端:U
- 运维 PHP问题汇总
dcj3sjt126com
windows2003
1、Dede(织梦)发表文章时,内容自动添加关键字显示空白页
解决方法:
后台>系统>系统基本参数>核心设置>关键字替换(是/否),这里选择“是”。
后台>系统>系统基本参数>其他选项>自动提取关键字,这里选择“是”。
2、解决PHP168超级管理员上传图片提示你的空间不足
网站是用PHP168做的,反映使用管理员在后台无法
- mac 下 安装php扩展 - mcrypt
dcj3sjt126com
PHP
MCrypt是一个功能强大的加密算法扩展库,它包括有22种算法,phpMyAdmin依赖这个PHP扩展,具体如下:
下载并解压libmcrypt-2.5.8.tar.gz。
在终端执行如下命令: tar zxvf libmcrypt-2.5.8.tar.gz cd libmcrypt-2.5.8/ ./configure --disable-posix-threads --
- MongoDB更新文档 [四]
eksliang
mongodbMongodb更新文档
MongoDB更新文档
转载请出自出处:http://eksliang.iteye.com/blog/2174104
MongoDB对文档的CURD,前面的博客简单介绍了,但是对文档更新篇幅比较大,所以这里单独拿出来。
语法结构如下:
db.collection.update( criteria, objNew, upsert, multi)
参数含义 参数  
- Linux下的解压,移除,复制,查看tomcat命令
y806839048
tomcat
重复myeclipse生成webservice有问题删除以前的,干净
1、先切换到:cd usr/local/tomcat5/logs
2、tail -f catalina.out
3、这样运行时就可以实时查看运行日志了
Ctrl+c 是退出tail命令。
有问题不明的先注掉
cp /opt/tomcat-6.0.44/webapps/g
- Spring之使用事务缘由(3-XML实现)
ihuning
spring
用事务通知声明式地管理事务
事务管理是一种横切关注点。为了在 Spring 2.x 中启用声明式事务管理,可以通过 tx Schema 中定义的 <tx:advice> 元素声明事务通知,为此必须事先将这个 Schema 定义添加到 <beans> 根元素中去。声明了事务通知后,就需要将它与切入点关联起来。由于事务通知是在 <aop:
- GCD使用经验与技巧浅谈
啸笑天
GC
前言
GCD(Grand Central Dispatch)可以说是Mac、iOS开发中的一大“利器”,本文就总结一些有关使用GCD的经验与技巧。
dispatch_once_t必须是全局或static变量
这一条算是“老生常谈”了,但我认为还是有必要强调一次,毕竟非全局或非static的dispatch_once_t变量在使用时会导致非常不好排查的bug,正确的如下: 1
- linux(Ubuntu)下常用命令备忘录1
macroli
linux工作ubuntu
在使用下面的命令是可以通过--help来获取更多的信息1,查询当前目录文件列表:ls
ls命令默认状态下将按首字母升序列出你当前文件夹下面的所有内容,但这样直接运行所得到的信息也是比较少的,通常它可以结合以下这些参数运行以查询更多的信息:
ls / 显示/.下的所有文件和目录
ls -l 给出文件或者文件夹的详细信息
ls -a 显示所有文件,包括隐藏文
- nodejs同步操作mysql
qiaolevip
学习永无止境每天进步一点点mysqlnodejs
// db-util.js
var mysql = require('mysql');
var pool = mysql.createPool({
connectionLimit : 10,
host: 'localhost',
user: 'root',
password: '',
database: 'test',
port: 3306
});
- 一起学Hive系列文章
superlxw1234
hiveHive入门
[一起学Hive]系列文章 目录贴,入门Hive,持续更新中。
[一起学Hive]之一—Hive概述,Hive是什么
[一起学Hive]之二—Hive函数大全-完整版
[一起学Hive]之三—Hive中的数据库(Database)和表(Table)
[一起学Hive]之四-Hive的安装配置
[一起学Hive]之五-Hive的视图和分区
[一起学Hive
- Spring开发利器:Spring Tool Suite 3.7.0 发布
wiselyman
spring
Spring Tool Suite(简称STS)是基于Eclipse,专门针对Spring开发者提供大量的便捷功能的优秀开发工具。
在3.7.0版本主要做了如下的更新:
将eclipse版本更新至Eclipse Mars 4.5 GA
Spring Boot(JavaEE开发的颠覆者集大成者,推荐大家学习)的配置语言YAML编辑器的支持(包含自动提示,