StringBuffer 可变参数拼接
@RequestMapping(value="/getFundsCount",method=RequestMethod.POST)
public Result getFundsCount(HttpServletRequest request,String depcode) {
//获取用户信息
String tokenuser = redisTemplate.opsForValue().get(request.getHeader("usertoken"));
LoginUser user = (LoginUser) JSONUtil.toBean(tokenuser, LoginUser.class);
String usertype = user.getUsertype();
Map<String,Object> map = new HashMap<String,Object>();
//数量默认值是0
String Notmanagecount = "";
String Rejectcount = "";
String Projectcount = "";
String Fundsidcount = ""; //count返回值long
StringBuffer sqlNotmanagecount = new StringBuffer("SELECT count(*) notmanagecount FROM djjf_project_funds where status=");
StringBuffer sqlRejectcount = new StringBuffer("SELECT count(*) rejectcount FROM djjf_project_funds f LEFT JOIN djjf_review r "
+"ON f.fundsid = r.objectid WHERE f.status=05 AND r.status=02 AND r.creusertype=");
//查询总项目个数
String sqlProjectcount = "SELECT count(*) projectcount FROM djjf_project";
String sqlFundsidcount = "SELECT COUNT(*)fundsidcount FROM djjf_project_funds"; if("jdorg.user".equals(usertype)) {
/*String stq=sqlNotmanagecount.append("'01'").toString();*/
sqlNotmanagecount.append("'01'");
sqlRejectcount.append("'jdorg.user'");//可变参数字符串拼接
if(depcode!=null&&!"".equals(depcode)) {
sqlNotmanagecount.append(" and depcode=").append("'"+depcode+"'");
sqlRejectcount.append(" and f.depcode=").append("'"+depcode+"'");
}
List<Map<String,Object>> countNotmanagecount = baseServerImpi.findListObjectBySql(sqlNotmanagecount.toString());
Notmanagecount = String.valueOf(countNotmanagecount.get().get("notmanagecount"));
//被驳回
List<Map<String,Object>> countRejectcount = baseServerImpi.findListObjectBySql(sqlRejectcount.toString());
Rejectcount = String.valueOf(countRejectcount.get().get("rejectcount")); }else if("jdleader.user".equals(usertype)) { sqlNotmanagecount.append("'02'");
sqlRejectcount.append("'jdleader.user'");
if(depcode!=null&&!"".equals(depcode)) {
sqlNotmanagecount.append(" and depcode=").append("'"+depcode+"'");
sqlRejectcount.append(" and f.depcode=").append("'"+depcode+"'");
}
List<Map<String,Object>> countNotmanagecount = baseServerImpi.findListObjectBySql(sqlNotmanagecount.toString());
Notmanagecount = String.valueOf(countNotmanagecount.get().get("notmanagecount"));
//被驳回
List<Map<String,Object>> countRejectcount = baseServerImpi.findListObjectBySql(sqlRejectcount.toString());
Rejectcount = String.valueOf(countRejectcount.get().get("rejectcount"));
}
//项目总数
List<Map<String,Object>> countProjectcount = baseServerImpi.findListObjectBySql(sqlProjectcount);
Projectcount = String.valueOf(countProjectcount.get().get("projectcount"));
//经费总数
List<Map<String,Object>> countFundsidcount = baseServerImpi.findListObjectBySql(sqlFundsidcount);
Fundsidcount = String.valueOf(countFundsidcount.get().get("fundsidcount"));
//将数量放入map
map.put("notmanagecount",Notmanagecount);
map.put("rejectcount",Rejectcount);
map.put("projectcount", Projectcount);
map.put("fundsidcount", Fundsidcount);
return Result.ok().put("result", map);
}
StringBuffer 可变参数拼接的更多相关文章
- 字符串化#、拼接字符##和可变参数宏(...和_ _VA_ARGS_ _)
宏定义的使用与注意事项 ##是一个连接符号,用于把参数连在一起 #是“字符串化”的意思.出现在宏定义中的#是把跟在后面的参数转换成一个字符串#define paster( n ) printf( &q ...
- C#与Java对比学习:数据类型、集合类、栈与队列、迭达、可变参数、枚举
数据类型: C#:String与StringBuilder Java:String与StringBuffer 第一个不习惯是string的第一个字母必须大写了. 第二个不习惯是int得写成Intege ...
- Swift开发第十篇——可变参数函数&初始化方法顺序
本篇分为两部分: 一.Swift中的可变参数函数 二.初始化方法的顺序 一.Swift中的可变参数函数 可变参数函数指的是可以接受任意多个参数的函数,在 OC 中,拼接字符串的函数就属于可变参数函数 ...
- PHP基础语法: echo,var_dump, 常用函数:随机数:拆分字符串:explode()、rand()、日期时间:time()、字符串转化为时间戳:strtotime()可变参数的函数:PHP里数组长度表示方法:count($attr[指数组]);字符串长度:strlen($a)
PHP语言原理:先把代码显示在源代码中,再通过浏览器解析在网页上 a. 1.substr; //用于输出字符串中,需要的某一部分 <?PHP $a="learn php"; ...
- volatile,可变参数,memset,内联函数,宽字符窄字符,国际化,条件编译,预处理命令,define中##和#的区别,文件缓冲,位域
1.volatile: 要求参数修改每次都从内存中的读取.这种情况要比普通运行的变量需要的时间长. 当设置了成按照C99标准运行之后,使用volatile变量之后的程序运行的时间将比register的 ...
- 五分钟学Java:可变参数究竟是怎么一回事?
在逛 programcreek 的时候,我发现了一些专注基础但不容忽视的主题.比如说:Java 的可变参数究竟是怎么一回事?像这类灵魂拷问的主题,非常值得深入地研究一下. 我以前很不重视基础,觉得不就 ...
- 可变参数__VA_ARGS__使用
1. 调试功能一般会使用到宏+可变参数的方式 1.1 ##__VA_ARGS__ 之详细解析 例如: case A. #define my_print1(...) printf(__V ...
- C可变参数的函数
我们实现一个简单的printf函数(可变参数) #include <stdio.h> #include <stdarg.h> void myprintf(const char ...
- c#编程基础之函数可变参数
可变参数:int sum (params int[] values)int sum (string name,params int[] values) 注意:params参数必须是形参表中的最后一个参 ...
随机推荐
- 监听本机tcp和udp的端口
#!/bin/bash #tcp part port1=`netstat -an|grep LISTEN|egrep "0.0.0.0|:::"|awk '/^tcp/ {prin ...
- vue中引入js,然后new js里的方法
阿里云Web播放器Web端使用SDK说明:https://help.aliyun.com/document_detail/51991.html?spm=5176.11065259.1996646101 ...
- Confluence 6 启用 OpenSearch
在 OpenSearch autodiscovery 自动发现,你可以添加 Confluence 搜索到你的的 Firefox 或者 IE7 查找对话框中(请参考 Searching Conflue ...
- vue.js----之router详解(一)
在vue1.0版本的超链接标签还是原来的a标签,链接地址由v-link属性控制 而vue2.0版本里超链接标签由a标签被替换成了router-link标签,但最终在页面还是会被渲染成a标签的 至于为什 ...
- cordova AndroidStudio3.0 升级报错问题
http://blog.csdn.net/z_Xiaozuo/article/details/78962701 ionic3 打包 安卓项目遇到的问题,当时比较冲忙升级了下android studio ...
- 自定义Web框架
http协议 HTTP简介 HTTP协议是Hyper Text Transfer Protocol(超文本传输协议)的缩写,是用于从万维网(WWW:World Wide Web )服务器传输超文本到本 ...
- 初始Ajax
一.Ajax准备知识:json 说起json,我们大家都了解,就是python中的json模块,那么json模块具体是什么呢?那我们现在详细的来说明一下 1.json(Javascript Obie ...
- Java并发编程基础-线程安全问题及JMM(volatile)
什么情况下应该使用多线程 : 线程出现的目的是什么?解决进程中多任务的实时性问题?其实简单来说,也就是解决“阻塞”的问题,阻塞的意思就是程序运行到某个函数或过程后等待某些事件发生而暂时停止 CPU 占 ...
- cf919D 线性dp+拓扑排序
/* 给定一张有向图,图上每个结点都有一个字符,现在要求出一条路径,要使路径上某字符出现的次数最多 如果有环,输出-1即可 拓扑排序+dp dp[i][26]表示排序到结点i时26个字符出现的次数 在 ...
- str类型
str:字符串类型,用单引号或双引号. #索引 s1 = s[0] 切片 : 顾头不顾尾 : s[首:尾:步长] 字符串的操作: 1.首字母大写: s = 'alexWUsir' s1 = s.cap ...