SpringMVC框架下的 部分代码:

Controller控制器:

@Resource
ReviewTitleService reviewTitleService;//调用ReviewTitleService 类时,先定义一个对象

Gson gson = new Gson();//调用Gson 时,先定义一个对象

/**
* 获得职称评审通过率
* @param request
* @param department
* @param year
* @return
*/
@ResponseBody
@RequestMapping(value = "getRate", produces = "application/json; charset=utf-8")
public String getRate(HttpServletRequest request,
@RequestParam(required = false) String department,
@RequestParam(required = false) String year){
return gson.toJson(reviewTitleService.getRate(department, year));

}

Service接口:

/**
* 获得评审表通过率
* @param department
* @param year
*/
public List<Map<String, Object>> getRate(String department, String year){
try {
String sql = "SELECT s.FIRSTDEPARTMENT as department, t.YEAR as year, "
+ "SUM(CASE WHEN t.STATE>=50 AND t.STATE<60 THEN 1 ELSE 0 END) as reportNmuber, "
+ "SUM(CASE WHEN t.STATE>=60 THEN 1 ELSE 0 END) as throughNumber, "
+ "SUM(CASE WHEN t.STATE>=60 THEN 1 ELSE 0 END)/SUM(CASE WHEN t.STATE>=50 THEN 1 ELSE 0 END) as rate "
+ "FROM rt_review_title t "
+ "LEFT JOIN staff s ON s.CODE=t.CODE where 1=1 ";
if (year != null && !"".equals(year)) {
sql += "and t.year = '" + year + "' ";
}
if (department != null && !"".equals(department)) {
sql += "and s.FIRSTDEPARTMENT = '" + department + "' ";
}
sql += "GROUP BY t.YEAR,s.FIRSTDEPARTMENT";
System.out.println(sql);
List<Map<String, Object>> result = hibernateDao.findSql(sql);
System.out.println(result);
return result;
} catch (Exception e) {
e.printStackTrace();
return null;
}

}

分类统计的controller和service的更多相关文章

  1. 多模块打包后,扫描不到@controller和@service,实现 ADD DIRECTORY ENTRIES

    多模块打包后,扫描不到@controller和@service等Bean. 原因:打包时没有生成目录信息 解决办法: 1.在eclipse或者myeclipse 打包时 勾选 ADD DIRECTOR ...

  2. AngularJS中如何对Controller与Service进行分层设计与编码

    初学者的Controller 在我们当接触NG后,如需要通过访问远程的API获取一系列的数据进行显示,通常我的Controller代码会写成下面的样子: angular.module('demo') ...

  3. AngularJS:何时应该使用Directive、Controller、Service?

    AngularJS:何时应该使用Directive.Controller.Service? (这篇文章你们一定要看,尤其初学的人,好吗亲?) 大漠穷秋 译 AngularJS是一款非常强大的前端MVC ...

  4. Controller、Service、Dao进行Junit单元

    原文链接:http://blog.csdn.net/u013041642/article/details/71430293 Spring对Controller.Service.Dao进行Junit单元 ...

  5. springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑。为了区别不同的异常通常根据异常类型自定义异常类,这里我们创建一个自定义系统异常,如果controller、service、dao抛出此类异常说明是系统预期处理的异常信息。

    springmvc在处理请求过程中出现异常信息交由异常处理器进行处理,自定义异常处理器可以实现一个系统的异常处理逻辑. 1.1 异常处理思路 系统中异常包括两类:预期异常和运行时异常RuntimeEx ...

  6. 使用mybatis plus自动生成controller、service、dao、mapper、entity代码

    官网:http://mp.baomidou.com(这个项目不仅仅可以用于代码生成,还有分页等其他功能,是对mybatis的一层封装) 要求:基于sql自动生成domain.controller.se ...

  7. 何时应该使用Directive、Controller、Service?

    AngularJS:何时应该使用Directive.Controller.Service? 大漠穷秋 译 AngularJS是一款非常强大的前端MVC框架.同时,它也引入了相当多的概念,这些概念我们可 ...

  8. 常用注解@Controller、@Service、@Autowired

    @Controller.@Service在spring-context-5.1.10.RELEASE.jar包下,所在包如下 @Autowired在spring-beans-5.1.10.RELEAS ...

  9. Java代码自动生成,生成前端vue+后端controller、service、dao代码,根据表名自动生成增删改查功能

    本项目地址:https://github.com/OceanBBBBbb/ocean-code-generator 项目简介 ocean-code-generator采用(适用):     ,并使用m ...

随机推荐

  1. python set和get实现

    import math class Square: # 正方形 def __init__(self, l): self.length = l # 边长 def __setattr__(self, ke ...

  2. 2017-2018 ACM-ICPC Latin American Regional Programming Contest GYM101889

    挺有意思的一套题,题也没有啥毒瘤了,本来是队切的结果种种原因大家全挂机了. 只补了百人题,一共7个,其他的暂时先不补了,,也不会嘛qwq H:签到 #include <bits/stdc++.h ...

  3. java开学考试有感以及源码

    一.感想 Java开学测试有感 九月二十号,王老师给我们上的第一节java课,测试. 说实话,不能说是十分有自信,但还好,直到看见了开学测试的题目,之前因为已经做过了王老师发的16级的题目,所以当时还 ...

  4. 网页中顶部banner图自适应css

    //test.css .index-banner-top { width: 100%; background: url(../imgs/guanyu.png) no-repeat center cen ...

  5. LIBS入门

    样品汽化产生自由原子,原子电子的激发诱导光辐射产生表征原子的分立光谱,采集和分析光辐射. 光源:1064nm Nd:YAG固态激光器,10ns脉冲,焦点光密度1 GW·cm−2 可见和紫外光源.   ...

  6. 使用Xshell调用linux的图形界面!

    环境说明: OS: centos 6.5 64位,最小化安装. Xmanager: 17.0.0.714 1.设置Xshell 2.将操作系统安装如下包 yum  install xclock xte ...

  7. 使用dom4j中SAXReader解析xml数据

    public ApiConfig(String configFilePath) throws DocumentException{ SAXReader reader = new SAXReader() ...

  8. 使用pm2在同服务器配置开发、生产、测试等环境

    export NODE_ENV=production 只能适用于node xxx.js的前台运行 set NODE_ENV=production貌似无效 pm2 做法: 创建pm2.config.js ...

  9. (Detected problems with API compatibility(visit g.co/dev/appcompat for more info)

    在applicaiton里面加载这么一段代码: private void closeAndroidPDialog(){ try { Class aClass = Class.forName(" ...

  10. [js]js设计模式-单例模式

    单例模式 不同模块之间需要同时开发, // 单例模式: 把描述同一个事物的属性和方法放在同一个内存空间下. // 优点: 分组,防止冲突 // p1 p2也叫做命名空间(模块开发) var p1 = ...