- vscode和pycharm对比
hack(卧龙)
vscodepycharmide
现在vscode和pycharm两个编辑器到底哪个好其实这两个的话各有所长vscode这个比较轻量化,启动快速,插件丰富,基本所以神级插件都有,但是调试比较麻烦对于小白来说有一定的难度但这个用起来是非常舒服的pycharm挺重的,有点大但是更专业,插件没那么多,但很多功能都自带,专业版要付费
- 【deepseek】本地部署DeepSeek R1模型:使用Ollama打造个人AI助手
大表哥汽车人
人工智能大语言模型学习笔记人工智能deepseek
一、简介DeepSeekR1是一个强大的开源语言模型,通过Ollama可以轻松实现本地部署。本文将详细介绍如何在本地部署和使用DeepSeekR1模型,并结合PageAssist插件实现更便捷的AI交互体验。二、环境准备硬件要求GPU显存要求:7B模型:8-12GB显存14B模型:12GB以上显存32B模型:建议16GB以上显存建议使用NVIDIA显卡SSD硬盘空间:建议预留50GB以上软件要求安
- can总线发展史
wangyh76
TTCAN汽车电子网络通讯motorola农业交通医疗
汽车总线技术逐渐成熟在传统的汽车中,电气信号的连接是通过线束实现的。随着汽车中电子部件数量的增加,线束与配套接插件的数量也在成倍上升。在1955年平均一辆汽车所用线束的总长度为45米,而到了2002年,平均一辆汽车所用线束的总长度却达到了4千米。线束的增加不但占据了车内的有效空间、增加了装配和维修的难度、提高了整车成本,而且妨碍整车可靠性的提高。这无形中使汽车研发进入了这样一个怪圈:为了提高汽车的
- JMeter性能测试入门-不同类型线程组的使用
温金垚
jmeret软件测试基础多线程
在做性能测试之前,我们来了解一下JMeter多个不同线程组的应用。首先,JMeter提供了三个基本的线程组,分别为:ThreadGroupsetUpThreadGrouptearDownThreadGroup其他线程组可以通过集成插件的方式使用,包括:bzm-ArrivalsThreadGroupbzm-ConcurrencyThreadGroupbzm-Free-FormArrivalsThre
- html5 webgl stl,新闻|Babylon.js|Babylon.js教程|Babylon.js开发|Babylon.js制作|webgl|three.js|html53D可视化开发...
miao君
html5webglstl
4.0.0主要更新添加了对ammo.js的支持,作为物理插件(复合对象,电机,关节)(TrevorDev)Added在ammo.js物理插件中增加了对3D软体,2D布和1D绳索的软体的支持(JohnK)添加了AmmoJSPlugin场景文件加载器(MackeyK24)添加了对WebXR支持(TrevorDev)添加customAnimationFrameRequester以允许会话挂钩到引擎的渲染
- Visual Studio Code 必备的20个绝佳设置,提升你的开发效率!
因_果_律
vscodeide编辑器
序言VisualStudioCode(VSCode)是一款非常受开发者欢迎的编辑器。凭借其灵活性和可扩展性,它支持多种编程语言和框架。为了最大限度地利用VSCode,进行适当的设置是非常重要的。本文将介绍VSCode中必备的20个绝佳设置,并详细解释每个设置如何提升开发体验。1.选择主题1.1暗主题和亮主题在VSCode中,可以选择使用暗主题或亮主题。根据开发环境的亮度和个人喜好选择主题,可以减轻
- 2024最新在线工具箱网站系统源码
很酷的站长
源码大全工具箱源码站长工具
(购买本专栏可免费下载栏目内所有资源不受限制,持续发布中,需要注意的是,本专栏为批量下载专用,并无法保证某款源码或者插件绝对可用,介意不要购买!购买本专栏住如有什么源码需要,可向博主私信,第二天即可发布!博主有几万资源)2024最新在线工具箱网站系统源码是一款功能强大的在线工具箱程序,您可以通过安装扩展来增强其功能。同时,该程序还提供了插件模板的功能,让您可以将其作为网页导航使用。本源码需要PHP
- 10.创建和加载布局 (添加一个按钮)
我也念过晚霞
Android学习androidvscodeide
步骤1:创建一个新的布局文件1.右击app/src/main/res目录->New->Directory,弹出一个窗口,然后创建一个名为layout的目录然后对着layout继续->New->Layoutresourcefile我们把这个布局文件命名为finrst_layout,根元素为LinearLayout此时,AndroidStudio会为你生成一个新的布局文件打开它。2.右上角三种视图形式
- Python中selenium的玩法,小朋友看了都说学会了
2401_87361571
pythonselenium开发语言
2.selenium的作用和工作原理利用浏览器原生的API,封装成一套更加面向对象的SeleniumWebDriverAPI,直接操作浏览器页面里的元素,甚至操作浏览器本身(截屏,窗口大小,启动,关闭,安装插件,配置证书之类的)webdriver本质是一个web-server,对外提供webapi,其中封装了浏览器的各种功能不同的浏览器使用各自不同的webdriver3.selenium的安装以及
- 实验四 XML
无尽罚坐的人生
#JavaWebxml
实验四XML目的:1、安装和使用XML的开发环境2、认识XML的不同类型3、掌握XML文档的基本语法4、了解DTD的作用5、掌握DTD的语法6、掌握Schema的语法实验过程:1、安装XML的编辑器,可以选择以下之一a)XMLSpyb)VScode,Vscode中安装XML插件2、给定一个XML文档test.xmltom24Python1861111111118622222222sammy25C+
- Python FastAPI 多参数传递
大数据东哥(Aidon)
pythonfastapipythonfastapi参数传递FastAPI参数传递路径/POST/GET参数传递
PythonFastAPI请求参数传递FastAPI多参数传递类型FastAPI通过模板来匹配URL中的参数列表,大致有如下三类方式传递参数:路径参数传递:获取自定义的构造URL中的参数GET参数传递:获取一个URL后面带的?param1=1¶m2=2这种类型参数POST参数传递:获取POST请求中的参数,因为POST是加密的,因此更加安全,但有额外开销,测试API使用额外工具或插件或者自
- linux命令行elasticsearch查询工具es2unix
m0_66557301
javaelasticsearchlinux大数据面试运维
当想在linux的命令行中查看elasticsearch的状态时,可以用es2unix这个工具,插件地址:https://github.com/elasticsearch/es2unix。它是elasticsearch官方推出的,可以通过命令来查看es的各种状态,安装方法curl-sdownload.elasticsearch.org/es2unix/es>/bin/eschmod+x/bin/e
- java实现aes-128-ecb_电信IOT平台编解码插件,JAVA实现AES128-ECB-PKCS7Padding加解密代码...
尼不要逗了~~~
packagecom.thrid.party.codec.demo;importjava.io.UnsupportedEncodingException;importjava.security.InvalidKeyException;importjava.security.NoSuchAlgorithmException;importjava.security.SecureRandom;impor
- VS2019+QT4.15+openCV4.5.1+CUDA加速
小小秀峰哥
python人工智能深度学习
文章目录前言一、软件安转以及注意事项二、CMake编译总结前言`最近公司有一个关于使用海康威视网络摄像头的目标检测的项目,发现使用openCV显示时,出现很大的延时,因此,只能使用cuda进行加速才能使显示达到实时,在进行编译时我发现很多问题,解决了好几天才完成编译一、软件安转以及注意事项1、Windows10系统2、VisualStudio2019与QT4.15(先安装)3、CUDA11.8、c
- C#Halcon扇形/圆环缺陷检测(极坐标变换法)
浮生如梦_
c#计算机视觉视觉检测图像处理
扇形交互绘制与极坐标变换插件(加载图像—绘制扇形—极坐标变换—图像返回:运行效果)应用场景:缺陷检测,OCR识别,二维码识别,辅助定位等场景绘制扇形:原型算子create_drawing_object_circle_sector||create_drawing_object_ellipse_sector本次Demo小编用的是标准圆形绘制的扇形,目的是为了后面极坐标变换如果不涉及极坐标变换,可以采用
- Nuxt:利用public-ip这个npm包来获取公网IP
前端白袍
前端学习笔记——Vue篇tcp/ipnpm网络协议
目录一、安装public-ip包1.在Vue组件中使用2.在Nuxt.js插件中使用public-ip一、安装public-ip包npminstallpublic-ip1.在Vue组件中使用你可以在Nuxt.js的任意组件或者插件中使用public-ip来获取公网IP。下面是在一个Vue组件中如何使用它的例子:你的公网IP是:{{ip}}import{publicIp,publicIpv4,pub
- AOP实现Android集中式登录架构,Android开发还不会这些
一个月成就技术
Android程序员android架构java
break;default:Toast.makeText(applicationContext,“执行失败,因为您还没有登录!”,Toast.LENGTH_SHORT).show();break;}}@OverridepublicbooleanisLogin(ContextapplicationContext){returnSharePreferenceUtil.getBooleanSp(Shar
- Android从零开始搭建MVVM架构(4)————Room(从入门到进阶)(1)
xcbyaya
程序员android架构java
意思就是我们要往数据库里建表、建字段。就是使用这个bean对象。首先介绍下注解@Entity:数据表的实体类。@PrimaryKey:每一个实体类都需要一个唯一的标识。@ColumnInfo:数据表中字段名称。@Ignore:标注不需要添加到数据表中的属性。@Embedded:实体类中引用其他实体类。@ForeignKey:外键约束。这里我们建一个Person类(为了能保存数据,使数据持久化且Ro
- Android车机DIY开发之学习篇(七)NDK交叉工具构建
勿忘初心91
车机DIY学习嵌入式硬件arm开发单片机
Android车机DIY开发之学习篇(七)NDK交叉工具构建1.ubuntu安装GCCsudoapt-getupdatesudoapt-getinstallgccg++sudogcc--versionsudog++--version2.测试GCCVSCODE中新建Hello.c编译#includeintmain(void){printf(“Hello,thisisaprogramcompiledb
- Android Jetpack系列(一) Room
游逸丶
AndroidJetpackAndroidjetpackRoomAndroidAAC
AndroidJetpack系列(一)Room前言Room简介Room使用1引用2编写Entity实体类2编写Dao数据操作类3编写Database数据库操作类4调用示例前言Jetpack是2017年谷歌在开发者大会上发布的一套开发工具。Jetpack共包含4个部分:Architecture、Foundation、Behavior以及UI。其中的Architecture又称为AAC(Android
- Android---Room(三)
无所事事的程序员
Android
当表的结构发生变化时处理方法:下面方法共同点就是版本号+1最简单的方法就是在数据库创建时,执行破坏式的迁移.fallbackToDestructiveMigration()//破坏式迁移INSTANCE=Room.databaseBuilder(context.getApplicationContext(),WordDatabase.class,"worddatabase").fallbackTo
- Android Room 使用
francisHuang
android学习androidRoom数据库
官网介绍:https://developer.android.google.cn/training/data-storage/roomRoom是在SQLite上提供了一个抽象层,以便在充分利用SQLite的强大功能的同时,能够流畅地访问数据库。Room包含3个重要部分:数据库:包含数据库持有者,并作为应用已保留的持久关系型数据的底层连接的主要接入点。Entity:表示数据库中的表。DAO:包含用于
- [Android]service命令的使用
aaajj
Androidandroid
在前面的讨论中,我们说到,如果在客户端懒得使用aidl文件生成的接口类进行binder,可以使用IBinder的transcat方法ParceldataParcel=Parcel.obtain();ParcelresultParcel=Parcel.obtain();dataParcel.writeInterfaceToken(DESCRIPTOR);//发起请求aProxyBinder.tran
- [Android]init中添加新的command
aaajj
Androidandroid
在Android的init进程中,command是用于定义启动时要执行的具体命令行指令的关键部分。init进程是Android系统启动的第一个进程,它负责初始化系统的各个组件,并启动必要的服务。command可以在init.rc文件及其包含的其他.rc文件中找到,通常作为on操作块或service定义的一部分。1.command的基本概念command是一条或多条具体的命令行指令,它们在特定条件下
- adb shell dumpsys 命令查看内存
2401_89693697
adbgitee
C:\Users\asus>adbshellservicelistFound163services:0call_adapter:[com.android.internal.telecom.IMzInCallAdapter]1flyme_novccusagestats:[android.nonvccUsageStats.INonVccStatsInterfaces]2alphame_server:[
- github最强Chatbox AI 模型桌面,支持 ChatGPT、Claude等主流模型,适用于 Win、Linux等,总结文档图片并互动,智能编程,AI实时联网搜索与查询,图片生成,科研写作等
struggle2025
人工智能深度学习语音识别计算机视觉语言模型图像处理数据分析
一、软件介绍(文末提供下载)Chatbox是一个AI模型桌面客户端,支持ChatGPT、Claude、GoogleGemini、Ollama等主流模型,适用于Windows、Mac、Linux、Web、Android和iOS全平台。github地址:GitHub-Bin-Huang/chatbox:User-friendlyDesktopClientAppforAIModels/LLMs(GPT,
- 架构整合要点。
jc_dreaming2
OPENSpringStrutsJavaHibernateXML
整合spring2+struts1.2+hibernate3.2程序要使用spring2,需要spring插件jar包和spring的类库外。1.web.xml配置spring的监听。org.springframework.web.context.ContextLoaderListener通过contextConfigLocation上下文参数指定spring配置文件javax.servlet.j
- 用Devecostudio写一个简单的计算器
邮专小谦
typescriptharmonyos数据库前端华为
用Devecostudio写一个简单的计算器//计算器import{Button1}from'./Button1'import{Button2}from'./Button2'//定义两个按钮格式//import{Cal}from'./cal'也可以将四则运算的函数定义到别处然后引入,这里为了方便直接放到这里了interfaceOperator{ symbol:string; precedence:
- VSCode 创建Python 项目(最简单,最少步骤,无痛从pycharm迁移项目)
以史为镜
vscodeide编辑器
第一步:下载下载地址:https://code.visualstudio.com/docs/?dv=win64user第二步:配置2.1:VsCode设置中文按住键盘上的“Ctrl+Shift+P”组合键,打开命令面板。在命令面板中输入“ConfigureDisplayLanguage”。点击“ConfigureDisplayLanguage”选项。在弹出的语言选择列表中,选择“zh-cn”,代表
- Android Gradle Kotlin DSL,使用Kotlin来构建Gradle
张雨zy
kotlinAndroid基础
Demohttps://gitee.com/olleh/my-kotlin-dsl.gitGradleKotlinDSL我们现在AndroidStudio是使用Gradle来编译,而默认的构建语言是Groovy,我们可以用Kotlin来代替Groovy,Groovy构建脚本是.gradle结尾,Koltin构建的脚本则是.gradle.kts结尾优势:节约Groovy的学习成本错误提示代码自动补全
- 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