关于使用hiveF对sql语句的封装,平时我们使用 hive –e “$sql” 进行操作,由于sql语句会很长,造成shell脚本很长阅读不便,且不利用于维护。
现在提供hiveF 对sql 进行封装,具体使用如下:
1、解析sql文件中的参数,并转换成map对象。
package com.hexun.hiveF;
import java.util.HashMap;
import java.util.Map;
/**
* 解析sql文件中的参数,并转换成map对象。
* @author Administrator
*
*/
public class ParseArgs {
private Map<String, String> map = null;
public ParseArgs(String[] args) {
map = new HashMap<String, String>();
if (args.length == 0) {
return;
}
int i = 0;
while (i < args.length) {
String par = args[i].trim();
if (par.startsWith("-")) {
String key = par.substring(1).trim();
i++;
String value = null;
if (args.length > i) {
value = args[i].trim();
if (value.startsWith("\"") || value.startsWith("\'")) {
value &