- Android Studio运行错误分析与解决:Caused by: org.codehaus.groovy.control.MultipleCompilationErrorsException: s
LuXi_foryou
androidstudioandroidide
AndroidStudio运行错误分析与解决:常见问题汇总作为一名Android开发者,在使用AndroidStudio时,难免会遇到各种运行错误。今天,我将分享一些常见的错误及其解决方法,帮助大家快速定位问题并修复代码。错误1:org.codehaus.groovy.control.MultipleCompilationErrorsException:startupfailed错误描述在运行或构
- Groovy语言的漏洞扫描
花韵婷
包罗万象golang开发语言后端
Groovy语言漏洞扫描:深入分析与实践引言Groovy是一种基于Java虚拟机(JVM)的动态编程语言,它结合了Python、Ruby和Smalltalk等语言的特性,提供了简洁的语法和强大的功能。Groovy广泛应用于脚本编写、自动化测试、构建工具(如Gradle)以及Web开发等领域。然而,随着Groovy的广泛应用,其安全性问题也逐渐显现出来。本文将深入探讨Groovy语言中的常见漏洞类型
- Apache OFBiz路径遍历漏洞(CVE-2024-36104)
WuY1nSec
漏洞复现apache
0x01漏洞描述ApacheOFBiz是美国阿帕奇(Apache)基金会的一套企业资源计划(ERP)系统。该系统提供了一整套基于Java的Web应用程序组件和工具。ApacheOFBiz18.12.14之前版本存在命令执行漏洞,该漏洞源于ControlFilter对路径限制不当导致用户能够访问ProgramExport导出功能执行Groovy代码。0x02影响版本ApacheOFBiz<18.12
- Jenkins报错:Also: org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId: f754e8a4-0218-4c28-899
longze_7
jenkins运维
Also:org.jenkinsci.plugins.workflow.actions.ErrorAction$ErrorId:f754e8a4-0218-4c28-8997-119f0f683ec5groovy.lang.MissingPropertyException:Nosuchproperty:dockerforclass:groovy.lang.Bindingatgroovy.lang.
- Windows写代码,Linux运行 (WSL & VS Code)
ch120668
开发工具shell运维
在工作中,很多时候都是用Linux服务器,经常是一个PuTTY或是GitBash连上去,要写一些Shell,Python,Perl,Groovy等脚本,通常也是用vi/vim/emacs/nano等常用编辑器,这些都很好用,也习惯了。有时候,当自己想要学点东西,想要配个Linux的环境,一般都是装个虚拟机(如VirtualBox),然后安装一个Ubuntu或CentOS。现在,Windows10(
- Grails+Spring Security 所遇到的几个问题(1)
xplidelphi
Grailsspringgrailsjava
安全是每个实际的应用所必需面对的问题。但是,安全是个技术活,没有相当的功底是搞不定的。况且,DRY(don'trepeatyourself)一直是我们的信条。所以,SpringSecurity成了一个非常不错的选项。Grails约定优先的策略能够带来很大的便利,于是,两者的结合就是顺理成章的事情。网上相关的帖子很多,经测试,总结下来是这样几个步骤。创建Grailsig程序不多赘述。以下的步骤是在程
- Spock框架:让单元测试更优雅的高效武器
没什么技术
javaspock
前言:为什么选择Spock?在软件开发领域,单元测试是保证代码质量的基石。但传统的JUnit/TestNG测试框架在面对复杂测试场景时,往往会显得力不从心。Spock框架作为新一代测试框架的佼佼者,以其独特的BDD(行为驱动开发)风格和GroovyDSL语法,正在成为Java/Kotlin开发者的新宠。本文将带你全面认识这个让测试代码变得优雅高效的利器!一、Spock框架初探1.1什么是Spock
- 03-Groovy-注释、变量和数据类型
爱学习de测试小白
#Groovygroovy
目录前言注释变量数据类型前言本篇学习Groovy注释、变量和数据类型。注释单行注释//单行注释println('HelloGroovy')多行注释/**多行注释*print不换行打印*打印内容可用双引号,也可用单引号*可使用小括号,也可不用小括号*语句结束可写分号,也可省略*/println("换行打印")print('不换行打印----')println'不加括号和分号的打印'println'加
- Android Gradle使用总结
Wei_Leng
Androidstudioandroidgradle脚本
其他Groovy入门学习http://blog.csdn.net/zhaoyanjun6/article/details/70313790AndroidGradleAndroid项目使用Gradle作为构建框架,Gradle又是以Groovy为脚本语言。所以学习Gradle之前需要先熟悉Groovy脚本语言。Groovy是基于Java语言的脚本语言,所以它的语法和Java非常相似,但是具有比jav
- Selenium WebDriver自动化测试(扩展篇)--Jenkins持续集成
职说测试
seleniumjenkinsci/cdUI自动化测试web自动化测试
文章目录一、引言二、Jenkins简介三、安装部署Jenkins安装部署四、集成Git与Maven安装必要的插件配置Git配置Maven五、创建Job创建自由风格的项目配置源码管理配置构建触发器配置构建环境配置构建步骤配置Post-buildActions六、触发构建示例:GitHubWebhook触发构建七、封装通用方法示例:使用Groovy脚本创建Job八、总结参考文献一、引言持续集成(Con
- Android Studio报错:Could not get unknown property ‘kotlin_version‘
zhangphil
Androidandroid
AndroidStudio报错:Couldnotgetunknownproperty'kotlin_version'报错内容:Causedby:groovy.lang.MissingPropertyException:Couldnotgetunknownproperty'kotlin_version'forobjectoftypeorg.gradle.api.internal其中一个解决方案,把:
- Groovy语言的游戏开发
霍璟琅
包罗万象golang开发语言后端
Groovy语言的游戏开发之旅引言随着游戏产业的飞速发展,越来越多的开发者开始寻找更高效、更灵活的编程语言来实现他们的创意。Groovy作为一种动态的JVM语言,近些年来逐渐受到开发者的关注。本文将探讨Groovy语言在游戏开发中的应用、优势、相关框架以及如何通过实际示例来帮助开发者快速上手。Groovy语言简介Groovy是一种基于Java平台的编程语言,通常用于简化Java开发过程。它的语法相
- Android 使用 Kotlin 重写 Gradle 文件(1)
2401_84122016
程序员androidkotlingitee
}利用Kotlin可以改造成下面这样:buildTypes{getByName(“release”){isMinifyEnabled=falseproguardFiles(getDefaultProguardFile(“proguard-android-optimize.txt”),“proguard-rules.pro”)}}指定JDK改造Groovy语法的指定JDK如下所示:compileOp
- 编程语言90种
2501_90255623
开发语言
CC++JavaPythonJavaScriptC#PHPSQLGoTypeScriptRubySwiftKotlinRShellRustDartScalaAssemblyFortranAdaCommonLispMATLABEiffelObjective-CPerlVisualBasicHaskellErlangPrologJuliaGroovyClojureF#DOCamlRacketNimEl
- Groovy语言的编程范式
沈韶珺
包罗万象golang开发语言后端
Groovy语言的编程范式引言Groovy是一种基于JVM(JavaVirtualMachine)的动态语言,它不仅兼容Java,还提供了丰富的功能和简洁的语法,使得编程更加高效和灵活。Groovy语言结合了面向对象编程、函数式编程、并发编程等多种范式,为开发者提供了多样化的编程体验。在这篇文章中,我们将深入探讨Groovy语言的编程范式及其在实际开发中的应用。一、Groovy语言简介1.1Gro
- 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的学习成本错误提示代码自动补全
- Groovy中的操作符重载:实现对象的自定义运算
t0_54manong
pythonjava前端个人开发
在编程中,操作符重载是一种强大的功能,它允许程序员为自定义的类定义操作符的行为。Groovy语言提供了非常灵活的机制来支持操作符重载,通过定义特定的方法,我们可以让对象支持各种操作符运算。本文将通过一个简单的实例,展示如何在Groovy中实现操作符重载。Groovy操作符重载的基本原理在Groovy中,操作符重载的核心在于定义特定的方法。这些方法与操作符一一对应,当操作符被使用时,Groovy会自
- 使用Gradle的maven-publish插件发布快照
dnc8371
javapythonmavengradlegit
我最近与Gradle一起开始了一个新项目,并决定直接参加–没有Gradle经验,没有关于Groovy的线索,没有教程,只是继续尝试直到可行。在我决定使用孵化式maven-publish插件将快照发布到Sonatype的Maven快照存储库之前,这一切进展得令人惊奇,这确实令人信服。警告:正如我说的那样,我在Groovy和Gradle中都是菜鸟,所以不要相信我所说的话。我为您写下来的一切。最后(但仍
- Jenkins pipeline共享库的最佳实践
DevOps探索者
Jenkinsjenkins运维
Jenkins共享库使用教程Jenkins共享库(SharedLibraries)是一个功能强大的工具,旨在帮助团队在多个Jenkins项目中重用代码。这使得CI/CD流水线能够更加高效、简洁,并减少重复劳动。通过共享库,你可以将常用的Groovy脚本、步骤、函数等提取到一个公共的位置,使得多个项目都能引用它们。1.什么是Jenkins共享库?Jenkins共享库是一个包含可以在多个Jenkins
- Jenkins-Pipeline简述
xiao-xiang
jenkinsjenkins运维
一.什么是Jenkinspipeline:pipeline在jenkins中是一套插件,主要功能在于,将原本独立运行于单个或者多个节点的任务连接起来,实现单个任务难以完成的复杂发布流程。Pipeline的实现方式是一套GroovyDSL,任何发布流程都可以表述为一段Groovy脚本(jenkinsfile),并且Jenkins支持从代码库直接读取脚本。二.关于pipeline:1.相关概念:Ste
- AndroidStudio Ladybug中编译完成apk之后定制名字kts复制到指定目录
debug_cat
AndroidStudioandroidandroidstudio
背景编译完release版本后复制apk到特定目录,apk文件名字符合自己的需求,例如增加版本号,版本名字。翻了一遍网上基本上都是Groovy编写,但是项目刚好切换到kts了,之前Groovy代码用不了。下面是kts版本。kts适配全部代码如下,只需要在你的主模块的android中增加代码即可。android{/其他代码applicationVariants.all{valvariant=this
- groovy性能测试,groovy和java性能对比
lilili啊啊啊
groovygroovy性能对比groovy性能测试
看groovy的接口和api很神奇的,想用用,用之前做了个小的性能测试,结果令人目瞪口呆classMain{staticmain(args){defstart=System.currentTimeMillis();for(inti=1;i<100000000;i++){Math.sin(1.5);}defend=System.currentTimeMillis();printlnend-start
- Groovy -> Groovy 流程控制语句
Yang-Never
Groovy开发语言gradleidea
判断语句defx=10if(x>0){println"xispositive"}elseif(x0)?"positive":"non-positive"printlnresult//输出"positive"//log"positive"分支语句//分支语句判断数据类型defcheckType(value){switch(value){caseInteger:println"Thevalueisan
- Groovy -> Groovy 集合操作
Yang-Never
Groovygradleidea开发语言
List的增删改查[1,2,3,4][1,2,3,4,5,6][2,3,4][3,4][1,2,3,4][3,4,10][3,4,20]Element:3Element:4Element:20contains3//log[1,2,3,4][1,2,3,4,5,6][2,3,4][3,4][1,2,3,4][3,4,10][3,4,20]Element:3Element:4Element:20con
- Groovy入门基础
winton_by
GroovyGradleAndroid
文章目录基本概念环境搭建下载groovy的manSDK(Macos)安装groovy下载IDEA配置groovyHelloWorldGroovy语法精讲文件结构变量类型字符串‘xx’"xx"'''xx'''闭包(类似java8中的lambda表达式)必包的使用场景数据结构列表列表转数组列表排序数组映射(map)范围类动态添加属性&方法(很神奇)Json操作xml操作总结Android的学习过程中,
- IntelliJ IDEA 中安装 Groovy 插件 && 添加 Groovy SDK
秋夫人
intellij-ideaGroovy
一、在IntelliJIDEA中安装Groovy插件可以按照以下步骤进行:打开IntelliJIDEA:启动IntelliJIDEA。打开插件市场:进入File->Settings(在macOS上是IntelliJIDEA->Preferences)。在左侧菜单中选择Plugins。搜索Groovy插件:在插件市场的右上角搜索框中输入Groovy。找到Groovy插件。安装插件:点击Install
- Groovy快速入门
小码快撩
开发语言
Groovy是一种面向对象的、动态类型的、基于JVM的编程语言,它与Java高度兼容,同时引入了许多简洁、灵活的语法特性,使得开发更为高效。以下是Groovy的快速入门指南:一.环境准备1.安装JavaDevelopmentKit(JDK)Groovy是基于Java平台的语言,运行在Java虚拟机(JVM)之上,因此必须先确保系统中已安装了JDK。下载并安装适合您操作系统的最新稳定版JDK。可以从
- Groovy入门(有java基础)
black_dawn
groovyjava开发语言
一、基本概念Groovy是一种基于Java虚拟机(JVM)的动态开发语言,旨在扩展Java语法,提供更简洁、灵活和易于使用的编码方式。本文是在会一定java语言开发的基础上进行的对比入门学习记录。1.特点:动态性:Groovy支持动态类型和动态元编程,使得代码更加灵活和易于编写。简洁性:Groovy的语法相对于Java来说更加简洁,可以用更少的代码实现相同的功能。闭包:Groovy提供了强大的闭包
- Android开之AR增强现实技术ARCore组件的应用方法
cdesigner
androidar
ARCore是Google提供的用于Android设备的AR平台,它提供了许多组件和功能,用于实现增强现实(AR)应用。以下是使用ARCore组件的应用方法和代码示例:配置ARCore环境:在项目的build.gradle文件中,添加ARCore库的依赖项:groovydependencies{ implementation'com.google.ar:core:1.24.0'}在应用启动时,需
- Gradle介绍和下载
上善若泪
1Gradle1.1介绍gradle和maven一样都是用来构建java程序的,maven2004年开始兴起,gradle2012年开始诞生,既然已经有了maven这么成熟的构建工具为什么还有gradle的诞生呢,因为gradle有很多地方比maven做的更好,例如gradle采用groovy语言开发,语法更加简单,例如maven一个配置需要三行,而gradle只需要一行即可Gradle是继Mav
- 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