下面代码我什么报空指针异常,方法参数都传到了,返回的是null

public static void main(String[] args) {
JSONArray js = new JSONArray();
Calendar cal = Calendar.getInstance();
cal.add(Calendar.HOUR, -24);
cal.getTimeInMillis();
js.add(2016);
js.add(11);
js.add(4);
js.add(15);
js.add(101);
js.add(303030);
js.add("我是");
JSONObject obj = new JSONObject();
obj.put("result", js);
JSONArray json = obj.getJSONArray("result");
for (int index = 0; index < json.size(); index++) {
Object[] params = new Object[5];
for (int i = 0; i < 5; i++) {
params[i] = json.getIntValue(i);
}
saveMethodData("kimMethodOutput", params, cal, json);
}
}

public static void saveMethodData(String sqlType, Object[] params, Calendar c, JSONArray result) {

    boolean sign = false;
    Method method = new Method();
    String findSql = "select * from t_method where year=? and month=? and day=? and server =? and channel =?";
    method = method.findFirst(findSql, params);
    if (method == null) {
        method = new Method();
        method.setTs(c.getTime());
        method.setYear(result.getIntValue(0));
        method.setMonth(result.getIntValue(1));
        method.setDay(result.getIntValue(2));
        method.setServer(result.getIntValue(3));
        method.setChannel(result.getIntValue(4));
        sign = true;
    }
    switch (sqlType) {
    case "kimMethodOutput":
        method.setkimOutputMethodSum(result.getIntValue(5));
        method.setMethod(result.getString(6));
        break;
    case "kimMethodConsume":
        method.setkimOutputMethodSum(result.getIntValue(5));
        method.setMethod(result.getString(6));
        break;
    case "kimdbMethodOutput":
        method.setkimOutputMethodSum(result.getIntValue(5));
        method.setMethod(result.getString(6));
        break;
    case "kimdbMethodConsume":
        method.setkimOutputMethodSum(result.getIntValue(5));
        method.setMethod(result.getString(6));
        break;
    }
    if (sign) {
        method.save();
    } else {
        method.update();
    }
}
日志
Exception in thread "main" java.lang.NullPointerException
at com.jfinal.plugin.activerecord.Model.find(Model.java:567)
at com.jfinal.plugin.activerecord.Model.findFirst(Model.java:594)
at com.mile.service.service.MethodService.saveMethodData(MethodService.java:191)
at com.mile.service.service.MethodService.main(MethodService.java:182)

saveMethodData这个方法的191行,打断点自己看一下

图片说明
初步怀疑是你的sql语句错了。把?换成具体的值,或者在语句的后面加上选择值,如果不对,请确认一下sql语句的正确写法。

建议你把报错的截图发上来。

把错误日志贴出来,哪里报空指针异常

错误日志呢?哪里报的空指针啊?

method.findFirst(findSql, params); 结果为空,findFirst就报空指针异常

你这个应该编译都不会过吧。

for (int index = 0; index < json.size(); index++) {
Object[] params = new Object[5];
for (int i = 0; i < 5; i++) {
params[i] = json.getIntValue(i);
}
saveMethodData("kimMethodOutput", params, cal, json);
}
上面重复执行6次一样的操作?

但没看出你报错是哪一句。(你引用的是那个空间,JSONArray,JSONObject 是Sliverlight的么?)