当端口错误时,钻取SQL成功执行

时间:2016-08-20 02:48:05

标签: java database jdbc apache-drill

我使用SimpleDriverDataSourceJdbcTemplate连接到我的钻取服务器。为了使这个连接成功,我必须设置正确的jdbcUrl。问题是,我可以将钻取服务器的端口设置为任何数字,甚至大于65535,每次结果都是正确的。我不知道为什么。这是我的代码。

import org.apache.log4j.Logger;
import org.springframework.dao.DataAccessException;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.jdbc.datasource.SimpleDriverDataSource;
import org.apache.drill.jdbc.Driver;

import java.util.List;
import java.util.Map;

public class TestDrill {
    private final static Logger logger = Logger.getLogger(TestDrill.class);

    public static void main(String[] args) {
        Driver driver = new Driver();
        String jdbcUrl = "jdbc:drill:drillbit=server1:66666,server2:66666,server3:66666";
        SimpleDriverDataSource drillDs = new SimpleDriverDataSource(driver, jdbcUrl, "username", "password");
        JdbcTemplate drillTemplate = new JdbcTemplate(drillDs);
        try {
            List<Map<String, Object>> dbs = drillTemplate.queryForList("show schemas");
            logger.debug(dbs.toString());
            logger.debug("show schemas succeeded");
        } catch(DataAccessException e) {
            logger.debug("show schemas failed");
        }
    }
}

P.S。如果我设置了错误的服务器主机名,查询将失败。这个是正常的。我只是不知道为什么我可以设置任何端口号,查询仍然会成功。

0 个答案:

没有答案