- 使⽤docker部署project-exam-system(2)
冬冬的狼外婆
docker容器运维
制作docker-compose.yml⽂件,实现⼀键部署步骤:1.启动nginxdockerrun-itd-p80:80-v/root/pes/web/src/dist/:/usr/share/nginx/html/nginx:latest2.启动java容器3.启动mysql配置⾼可⽤的项⽬1.先创建三个前段nginx容器1.端⼝不能映射80dockerrun-itd-v/root/pes/w
- timsort java_Java TimSort算法 源码 笔记
汪汪汪汪妄想症
timsortjava
本来准备看Java容器源码的。但是看到一开始发现Arrays这个类我不是很熟,就顺便把Arrays这个类给看了。Arrays类没有什么架构与难点,但Arrays涉及到的两个排序算法似乎很有意思。那顺便把TimSort算法和双指针快速排序也研究一下吧。首先强调一下,这是个稳定的排序算法看过代码之后觉得这个算法没有想象的那么难。逻辑很清晰,整个算法最大的特点就是充分利用数组中已经存在顺序。在归并的过程
- Java SE基础——Java集合
原来是帅亮亮呀
java
JavaSE基础——Java集合Java集合框架概述Java容器:集合与数组(1)面向对象语言对事物的体现都是以对象的形式,为了方便对多个对象的操作,就要对对象进行存储。集合,数组都是对多个数据进行存储操作的结构说明:此时的存储,主要指的是内存的存储,不涉及到持久化的存储(.txt,.jpg,.avi,数据库中)(2)数组在存储多个数据方面的特点:一旦初始化以后,其长度就确定了。数组一旦定义好,其
- Java ArrayDeque源码剖析
洒水水儿
Java常用类的源码剖析java开发语言
LinkedList实现了队列接口Queue和双端队列接口Deque,Java容器类中还有一个双端队列的实现类ArrayDeque,它是基于数组实现的。我们知道,一般而言,由于需要移动元素,数组的插入和删除效率比较低,但ArrayDeque的效率却非常高,它是怎么实现的呢?本文就来详细探讨。实现原理ArrayDeque内部主要有如下实例变量:privatetransientE[]elements;
- 列表容器ArrayList学习——基于Java8
java
概述ArrayList是jdk提供的非线程安全的基于数组的列表容器,是最频繁使用的Java容器之一。本文主要介绍一下ArrayList的内部结构和运行机制。继承与实现publicclassArrayListextendsAbstractListimplementsList,RandomAccess,Cloneable,java.io.SerializableArrayList继承了Abstract
- 集合系列(一):集合框架概述
陈树义
集合系列(一):集合框架概述Java集合是JavaAPI用得最频繁的一类,掌握Java集合的原理以及继承结构非常有必要。总的来说,Java容器可以划分为4个部分:List集合Set集合Queue集合Map集合除了上面4种集合之外,还有一个专门的工具类:工具类(Iterator迭代器、Enumeration枚举类、Arrays和Collections)在开始聊具体的集合体系之前,我想先介绍一下Col
- java linkedlist实现队列_JAVA专题七:用LinkedList实现栈与队列
神经现实
javalinkedlist实现队列
用LinkedList实现一个栈"栈"有进也被称为"后进先出"的容器。同其他Java容器一样,压进去与弹出来的东西都是Object,所以除非你只用Object的功能,否则就必须对弹出来的东西进行类型转换。LinkedList的方法能直接实现栈的功能,所以你完全可以不写stack而直接使用LinkedList。MakingastackfromaLinkedListAstackissometimesr
- 下载、安装Jenkins
wuyouywe
jenkinsjenkins
进入官网下载Jenkinshttps://www.jenkins.io直接点击Download一般是下长期支持版因为它是java写的,你要运行它(Jenkins.war)肯定要有java环境有两种方式去运行它,一种是下载Tomcat(是很经典的java容器或者java的应用服务器);一种是直接启动Jenkins.war这个包。下载Tomcat网址:ApacheTomcat®-Welcome!但是现
- java 容器 set_java容器总结Set
nlua
java容器set
Set总结首先一个Set不包括重复元素(包括可变对象)的Collection,是一种无序的集合。Set不包含满a.equals(b)的元素对a和b,并且最多有一个null。Paste_Image.png如图所示实现Set接口的重要类有HashSet(无序不重复),LinkedHashSet(按放入顺序有序不重复),TreeSet(按红黑树方式有序不重复),EnumSet,ConcurrentSki
- Java容器---Set: HashSet & TreeSet & LinkedHashSet
weixin_30784141
java数据结构与算法
1.Set接口概述Set不保存重复的元素(如何判断元素相同呢?)。如果你试图将相同对象的多个实例添加到Set中,那么它就会阻止这种重复现象。Set中最常被使用的是测试归属性,你可以很容易地询问某个对象是否在某个Set中。正因如此,查找就成为了Set中最重要的操作,因此你通常都会选择一个HashSet的实现,它专门对快速查找进行了优化。Set具有与Collection完全一样的接口,因此没有任何额外
- Java容器源码学习
烦人的胆小鬼
1.List,Set,Map三者的区别List(对付顺序的好帮手)List接口存储一组不唯一(可以有多个元素引用相同的对象),有序的对象Set(注重独一无二的性质):不允许重复的集合。不会有多个元素引用相同的对象。Map(用Key来搜索的专家):使用键值对存储。Map会维护与Key有关联的值。两个Key可以引用相同的对象,但Key不能重复,典型的Key是String类型,但也可以是任何对象。2.A
- 【Java万花筒】云端之旅:Java容器化、微服务与云服务之道
friklogff
Java万花筒java微服务开发语言云原生
Java云航:容器、Kubernetes、AWS、SpringCloud与HttpClient深度探析前言随着云计算的迅猛发展,Java在构建云原生应用和微服务架构方面扮演着关键角色。本文将深入探讨Java在容器化、Kubernetes集群、AWS云服务、SpringCloud微服务和ApacheHttpClient等方面的利用与实践。欢迎订阅专栏:Java万花筒文章目录Java云航:容器、Kub
- 面试题:总结Iterator,Collection,Set,Map和他们之间的关系
lichongxyz
java面试java开发语言
Collection和Map可谓构成Java容器的两大体系,你熟知的数据结构。ArrayList、LinkedList、HashSet、HashMap、TreeSet、TreeMap、PriorityQueue、Stack都从Collection和Map实现而来。容器(Collection)是什么?容器(Collection)是容纳数据用的。Java的容器(Collection)可以装一组对象。既
- Java容器部分上(重要)
久伴_不离
1.java容器都有哪些?(容器指的是集合类)基本概念Java容器类类库的用途是“持有对象”,并将其划分为两个不同的概念:1)Collection:一个独立元素的序列,这些元素都服从一条或者多条规则。List必须按照插入的顺序保存元素,而set不能有重复的元素。Queue按照排队规则来确定对象产生的顺序(通常与它们被插入的顺序相同)。2)Map:一组成对的“键值对”对象,允许你使用键来查找值。|C
- Java容器使用
0daydreamer0
ListJava代码//声明创建ListListlist=newArrayListstack=newStackqueue=newLinkedList();//判空System.out.println(queue.isEmpty());//true//增queue.offer("a");queue.offer("b");queue.offer("c");//删queue.poll();//查Syst
- 14 .docker部署若依
余生的观澜
若依框架专栏docker容器运维
文章目录0.参考资料1.创建网络2.制作java容器3.容器启动0.参考资料https://blog.csdn.net/Pan_peter/article/details/1288079461.创建网络因为java容器的运行需要访问mysql和redis容器,nginx容器需要访问java容器,所以需要创建一个他们能互相访问的网络。创建一个叫做my-network的局域网,设置网段和网关。sudo
- Java编程思想——第十一章:持有对象
代夫阿普曼
容器提供完善的方法来保存对象,还拥有一些特性。Java容器类都可以自动地调整自己的尺寸。1.泛型和类型安全的容器通过使用泛型,可以在编译期防止将错误类型的对象放置到容器中。将元素从容器中拿出时,类型转换也不再是必需的了。因为容器直到它保存的是什么类型,因此它会在调用get()时替你执行转型。2.基本概念容器类类库的两个不同概念:Collection:一个独立元素的序列,这些元素都服从一条或多条规则
- 高效遍历Java容器
荒城9510
通过本文,你可以更深入的学习Java语言中forEach语法的知识,以及它和C语言形式的for循环、SteamAPI的对比。简介Java程序员经常使用容器,比如ArrayList和HashSet。Java8中的lambda语法和steamingAPI可以让我们更方便的使用容器。大部分情况下,我们仅仅处理几千个元素,也不会去考虑性能问题。但是,在一些极端场景下,如果我们需要遍历上百万个元素,性能问题
- java容器源码分析--HashSet(JDK1.8)
w1992wishes
本篇结构:前言数据结构重要参数常用方法源码分析疑问解答分析总结一、前言HashSet也是常用的数据结构,是一个没有重复元素的集合,也不能保证元素的顺序,可以有null值,但最多只能有一个。HashSet的实现是基于HashMap的,在了解过HashMap的源码(java容器源码分析--HashMap(JDK1.8))后,再看HashSet的源码,会简单很多,所以本文也会简短很多。二、数据结构Has
- java内存溢出问题调试
奔跑的Robi
写java程序时大家一定对一下两条异常并不陌生:java.lang.OutOfMemoryError:Javaheapspacejava.lang.OutOfMemoryError:PermGenspace尤其当应用服务器(Java容器)出现上述情况更是让人有一种天塌下来的感觉。好的编码实践可能会大大降低内存溢出的产生。本文并不是写如何规避内存溢出,但是我还是要介绍一下如何能够尽量规避内存溢出:1
- 面试准备2-介绍一下集合框架
shaYanL
简介:集合是Java中保存大量对象的引用的一种方式,同样可以用来保存大量对象的引用的还有数组。本身Java可以通过一个简单的特定类型的变量来存放一个特定类型实例的引用,但Java程序在运行时会创建很多新的对象,这些对象可能数量不定,也可能不清楚其类型,这个时候,就可以通过集合这种形式来持有这些新创建的对象的引用。简而言之:集合能够持有对象。划分:Java中的集合框架的实现是Java容器类相关类库,
- k8s查看java容器日志_k8s 部署 log-pilot 收集容器标准输出日志和指定路径应用日志...
金柔
k8s查看java容器日志
日志系统要求:1.因开发项目要求,一个pod内有多个日志路径,需要收集2.同时需要收集pod容器的标准输出日志环境:本次环境es、kibana均部署在k8s集群外,在物理机部署,只需要log-pilot指定es地址具体步骤:创建daemonsetlog-pilotkubectlgetdaemonsets.appslog-pilot-oyamlapiVersion:apps/v1kind:Daemo
- Java 集合
会移动的树~
javajava开发语言
Java集合框架概述集合、数组都是对多个数据进行存储操作的结构,简称Java容器。使用Array存储对象方面具有一些弊端而Java集合就像一种容器,可以动态地把多个对象的引用放入容器中。此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储数组在存储数据方面的特点:一旦初始化以后,其长度就确定了。数组一旦定义好,其元素的类型也就确定了。我们也就只能操作指定类型的数据了。比如:String[]a
- 把大象装入货柜里——Java容器内存拆解
MarkZhu
[图片源:https://bell-sw.com/announcements/2020/10/28/JVM-in-Linux-containers-surviving-the-isolation/]介绍测试环境配置容量POD容量配置JVM容量配置神秘的MaxDirectMemorySize默认值maxThreadCount最大线程数来源使用量Java的视角看使用量如何采集实际使用量原生应用的视角看
- Java集合总结【面试题+脑图】,将知识点一网打尽
倾听铃的声
后端java面试开发语言系统架构分布式
Java容器可分为两大类:CollectionListArrayListLinkedListVector(了解,已过时)SetHashSetLinkedHashSetTreeSetMapHashMapLinkedHashMapTreeMapConcurrentHashMapHashtable(了解,,已过时)着重标出的那些就是我们用得最多的容器。其实,我也不知道要怎么总结好,因为之前写每一篇的时候
- 测试开发面试题
^马娜娜(^^)
面试mysqljava数据库面试
面试问题整理问题整理软件测试基础testng有哪些注解xml配置@Test属性如下登陆页面怎么测试说一下工作中的测试流程测试用例的分类黑盒测试方法软件测试登录跳转到主页面,很慢,分析原因刷抖音出现闪退问题应该怎么测试性能测试指标QPS:TPS并发数吞吐量Java基础多线程的实现java设计模式-单例模式、工厂设计模式锁机制Java异常JavaAOPJava容器Collections并不属于集合,是
- Java容器合集
bunny playing games
测试开发java
目录浅谈Array数组初始化(动与静)动态初始化静态初始化CRUD增查索引取值遍历改删走进底层栈与堆一个数组的诞生多数组避坑指南索引越界空指针异常小试牛刀CollectionList部落介绍和特点方法ArrayList介绍方法遍历LinkedList介绍方法(特有)Set部落介绍方法HashSet介绍唯一性LinkedHashSet介绍TreeSet介绍自然排序比较器排序Map介绍和特点方法的介绍
- Java集合——Collection、Iterator、List、Set、Map、Collections
white camel
ArrayListSetMapCollection
一、数组与集合1、集合与数组存储数据概述集合、数组都是对多个数据进行存储操作的结构,简称Java容器。说明:此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储(.txt,.jpg,.avi,数据库中)2、数组存储的特点一旦初始化以后,其长度就确定了。数组一旦定义好,其元素的类型也就确定了。我们也就只能操作指定类型的数据了。比如:String[]arr;int[]arr1;Object[]a
- java容器
小高求学之路
java总结开发语言java容器
cow容器copyonwrite又被成为写时复制(读写分离)容器,原理就是:如果向一个数组中添加元素的时候,会将原来的数组复制一份为新的数组,原来的数组不会动,负责读处理,然后在新的数组中进行添加操作,添加完后,将新数组的地址,赋值给原来数组的地址这种设计的好处是什么呢?注意上面的操作arr数组本身是无锁的,没有锁,在添加数据的时候,做了额外的复制,此时如果有线程来读数据,那么读取的是老arr的数
- Java集合:Collection的使用
lucky_fd_
Javajava后端jvm
一、java集合概述1.集合、数组都是对多个数据进行存储操作的结构,简称java容器。说明:此时的存储,主要指的是内存层面的存储,不涉及到持久化的存储(.txt、jpg、avi、数据库)2.数组在存储多个数据方面的特点:一旦初始化以后,其长度就确定了。数组一旦定义好,其元素的类型也就确定了。我们也就只能操作指定类型的数据了比如:String[]arr;int[]arr1;Object[]arr2;
- 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