杂记20160829

原创 2016年08月29日 17:56:00

今天完成调用公司现有接口,实现定时上报数据的功能的Java服务,功能呢个简单。

1.调用非静态方法先生成实例

2.获取单例模式生产的对象调用getInstance()方法

3.注意调用失败的情况,最好有返回值供后续使用(这个服务没有加入返回值,因为调用xReportService()的时候发现其居然在末尾直接返回0,而不是根据调用失败或成功来进行返回的,这个返回值对调用者来说毫无意义,已经向写xReportService()的人提出。或许他太忙了,也没有考虑过会有其他人在后来会使用这个方法。)在我自己做类似的工作的时候一定需要注意,能给返回值的时候不要偷懒。

package *;

import java.util.List;
import java.util.Map;
import org.apache.log4j.Logger;
import *;
import org.springframework.stereotype.Service;
import *;
import *;

@Service
public class XAutoReportService {
	private static final Logger logger = Logger.getLogger(XAutoReportService.class);

	@Autowired
	XReportService xReportService;

	public void autoReport(){
		//*
		logger.debug("XReportService.autoReport(qc_abnormal_event)开始执行...");
		System.out.println("XReportService.autoReport(qc_abnormal_event)开始执行...");
		autoReportService("qc_abnormal_event");
		logger.debug("GASuspiciousListReportService.autoReport(qc_abnormal_event)执行完毕...");
		//*
		logger.debug("XReportService.autoReport(qc_abnormal_card)开始执行...");
		System.out.println("GASuspiciousListReportService.autoReport(qc_abnormal_card)开始执行...");
		autoReportService("qc_abnormal_card");
		logger.debug("GASuspiciousListReportService.autoReport(qc_abnormal_card)执行完毕...");
	}
	
	//调用trigger
	public void autoReportService(String tableName) {
		List<Map<String, Object>> getActionContext = null;
		int rs = 0;
		String  getList =  "SELECT XXXXXX "
				+ tableName
				+ " WHERE *************";
		
		try {
			// ***********
			
			getActionContext = JdbcSupportDAO.getJdbcTemplate().queryForList(getList);
			// 遍历List,调用trigger逐条上报
			if (getActionContext.size() != 0) {
				for (int i = 0; i < getActionContext.size(); i++) {
					// 获取context
					ActionContext context = ActionContext.getInstance();
					// 获取map
					Map map = getActionContext.get(i);
					// context设置值
					context.put("X", map.get("X").toString());
					context.put("tableName", tableName.toString());
					context.put("Y", map.get("Y").toString());
					context.put("Z", map.get("Z").toString());
					context.put("A", map.get("A").toString());
					context.put("B", map.get("B").toString());
					// 调用trigger上报
					logger.debug("X为:"+ context.get("X")+" 的数据开始上报");
					rs = xReportService.trigger(context);
				}
			} else {
				logger.debug("当日数据已全部上报");
			}
		} catch (NullPointerException e) {
			logger.error("获取数据获取出错,请重新获取!", e);
		}
	}

}


相关文章推荐

CSS3 变形效果(上)(20160829-0029)

CSS3 提供了元素变形效果,也叫做变换。它可以将元素平移、缩放和旋转。属性有两个 transform 和 transform-origin。示例。...

ICNT7152L_Datasheet_EN_V1.0_20160829

  • 2017年07月21日 09:56
  • 890KB
  • 下载

iOS 心得笔记杂记

  • 2014年10月31日 17:18
  • 131KB
  • 下载

superset二次开发杂记

supersetsuperset是airbinb开源的可视化web组件,其基于flask-appbuild框架,其可视化能力超强,能够对数据进行展示和探索。因为实验室项目,需要对其进行二次开发,在此记...

Oracle杂记

  • 2012年08月27日 23:17
  • 1015KB
  • 下载

51单片机C语言学习杂记.doc

  • 2012年10月07日 15:33
  • 440KB
  • 下载

jquery杂记,开发中遇到的问题,简单总结下

1.给搜索的结果上色 /*给匹配字上色,字体,加粗*/ var highLightColor = "red";//搜索高亮显示的颜色 var fontSize = 2;//关键字字体大小 var fo...
  • lixld
  • lixld
  • 2013年09月30日 21:46
  • 2196

JBoss配置杂记

  • 2012年03月30日 15:58
  • 561KB
  • 下载

InstallshieldX安装制作杂记.rar

  • 2008年11月27日 17:05
  • 123KB
  • 下载

34.Oracle杂记——Oracle常用动态视图v$sqltext

34.Oracle杂记——Oracle常用动态视图v$sqltext 视图v$sqltext显示SGA中共享SQL游标中的 SQL语句文本。 视图描述如下: sys@PDB1> desc v$s...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:杂记20160829
举报原因:
原因补充:

(最多只允许输入30个字)