大家好:
     用kylin的JDBC查询,查询条件是date类型的,但是查询不出数据,以下是代码:
             driver = (Driver) 
Class.forName("org.apache.kylin.jdbc.Driver").newInstance();

            Properties info = new Properties();
            info.put("user", "ADMIN");
            info.put("password", "KYLIN");

            conn = driver.connect("jdbc:kylin://IP:7070/learn_kylin", info);  
(此处IP代替了真实IP地址)
            state = conn.prepareStatement("select * from KYLIN_SALES where 
part_dt = ?");

            SimpleDateFormat simpleTime = new SimpleDateFormat("yyyy-MM-dd");
            java.util.Date passUtilDate = simpleTime.parse("2013-01-01");
            java.sql.Date passSqlDate = new 
java.sql.Date(passUtilDate.getTime());

            System.out.println("passSqlDate-------->"+passSqlDate);

            state.setDate(1, passSqlDate);

            resultSet = state.executeQuery();


控制台日志为:
  passSqlDate-------->2013-01-01
2016-06-23 14:19:52,591 DEBUG [main] jdbc.KylinClient:341 : Post body:
{"sql":"select * from KYLIN_SALES where part_dt = 
?","project":"learn_kylin","acceptPartial":false,"params":[{"className":"java.lang.Integer","value":"15706"}]}
2016-06-23 14:19:52,592 DEBUG [main] wire.content:84 : << 
"{"userDetails":{"password":null,"username":"ADMIN","authorities":[{"authority":"ROLE_ADMIN"},{"authority":"ROLE_ANALYST"},{"authority":"ROLE_MODELER"}],"accountNonExpired":true,"accountNonLocked":true,"credentialsNonExpired":true,"enabled":true}}"

为什么kylin把传进的参数转为了"params":[{"className":"java.lang.Integer","value":"15706"}]???


谢谢!


Reply via email to