Sqoop2中传入配置文件中url之【坑】
【特别注意】Sqoop2里面各个版本的区别还是很大的,这里使用1.99.6版本。
- sqoop2的url等信息放到properties配置文件中,配置文件解析出来传给SqoopClient报错。
SqoopClient初始化代码:
private SqoopUtil() throws IOException {
String url = PropertiesUtil.getProperty("SQOOP_URL").trim();
SqoopClient client = new SqoopClient(url);
System.out.println("url:" +url);
connectorMap = new HashMap<String, Long>();
System.out.println(client.getConnector(2));//注释掉该句不报错
// readConnectorMap();
System.out.println("connectorMap size---------"+ connectorMap.size());
}
配置文件解析工具类,解析/myconf.properties文件。
public class PropertiesUtil {
private static String propertiesFile = "/myconf.properties";
private static PropertiesUtil proUtil = null;
private static HashMap<String, String> confMap= null;
private static Properties p = new Properties();
public PropertiesUtil() throws IOException {
confMap = new HashMap<String, String>();
readPropertiesToMap();
System.out.println();
}
private static void readPropertiesToMap() throws IOException {
p.load(PropertiesUtil.class.getResourceAsStream(propertiesFile));
for(Object key: p.keySet()) {
confMap.put((String)key, p.getProperty((String)key));
}
}
private static PropertiesUtil getPropertiesUtil() throws IOException {
if(proUtil == null) {
synchronized(PropertiesUtil.class) {
if(proUtil == null) {
long start = System.currentTimeMillis();
proUtil = new PropertiesUtil();
long end = System.currentTimeMillis();
System.out.println("construct properties util last "+ (end-start));
}
}
}
return proUtil;
}
public String get(String name) throws IOException {
return confMap.get(name);
}
public static String getProperty(String name) throws IOException {
return getPropertiesUtil().confMap.get(name);
}
public static void main(String[] args) throws IOException {
System.out.println(getPropertiesUtil().confMap.get("SQOOP_URL"));
}
}
但在调用client.getConnector的时候报错:
将初始化SqoopClient的url改为/myconf.properties文件中的SQOOP_URL对应的字符串则能顺利运行:
暂时还没解决。。。正在研究中。。。
Sqoop2中传入配置文件中url之【坑】的更多相关文章
- 解决spring中不同配置文件中存在name或者id相同的bean可能引起的问题
小总结: 如果启用组件扫描,bean名称不同时,Spring将尝试创建一个bean,即使该类的bean已经在spring-config.xml中定义了. 但是,如果在spring配置文件中定义的bea ...
- CI框架在辅助函数中使用配置文件中的变量
问题: 现有一个自定义的辅助函数,想要获取配置文件中的配置项(配置文件路径为application/config/config.php) 分析: 辅助函数并不是定义在一个class中,而是很多个可供外 ...
- springboot中引用配置文件中的参数
首先可以看到这是做微信登陆时候的配置,一般不会写死都是通过配置文件获取,所以,记载配置文件中 那么怎么引用呢: 可以看到直接注入的方式就可以引用了,所以看下面: 进行页面跳转,并且带有参数的, 使用m ...
- Java中读取配置文件中的内容,并将其赋值给静态变量的方法
应用场景 项目开发中某个功能需要抽取成方法写成一个工具类,提供给别人使用.写过工具类的人都知道,工具类中的方法一般都是静态方法,可以直接使用类名点方法名调用, 使用很方便,比如判断某个对象是否为空的方 ...
- 在Spring框架中bean配置文件中constructor-arg标签中没有name元素?
bean配置文件出现错误的依赖: <beans <beans xmlns="http://www.springframework.org/schema/beans" ...
- java中读取配置文件中的数据
1.先在项目中创建一个包(如:config),再创建一个配置文件(如:a.properties),添加配置信息如下:比如:name=kakaage=28 2.代码:import java.io.IOE ...
- tp5.0在控制器中和在模板中调用配置文件中的常量
框架配置文件config.php中定义 'view_replace_str' => [ '__MEMBER__'=> '/static/member', '__uplo ...
- Spring框架中Spring配置文件中<context:annotation-config/>标签说明
<context:annotation-config/>此标签的重要作用就是: 省去系统繁琐的注解标签,加上一个此标签,就可以在此项目程序添加“注解”的功能,使系统识别相应的注解功能!! ...
- 在SpringCloud中MAVEN配置文件中的更改
<mirrors> <mirror> <id>alimaven</id> <mirrorOf>central</mirrorOf> ...
随机推荐
- JavaScript数组去重
第一种方法: 思路: 1.创建一个新的数组存放结果 2.创建一个空对象, 3.将数组中的元素作为空对象的属性并对其赋值,每次取出一个元素与对象进行对比,然后到对象中去访问这个属性, 如果能访问到值,则 ...
- 【新手出发】从搭虚拟机开始,一步一步在CentOS上跑起来.Net Core程序
文章背景 微软6月26号发布core 1.0版本后,园子里关于这方面的文章就更加火爆了,不管是从文章数量还是大家互动的热情来看,绝对是最热门的技术NO.1.我从去年底开始接触.net core到现在也 ...
- Android Studio 快捷键
1.显示注解:F2 2.显示大括号包含范围:Ctrl 3.显示当前文档结构:Ctrl+F12 4.快速打开类:Ctrl+N 5.格式化代码:Ctrl+Alt+L 6.折叠代码:Ctrl+[+/-] 7 ...
- Burp Suite使用详解一
本文由阿德马翻译自国外网站,请尊重劳动成果,转载注明出处 Burp Suite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫描web应用程序漏洞,以暴力破解 ...
- 获取Unity3D虚拟摄像机的图像
最新博客地址已转到: http://blog.csdn.net/zzlyw?viewmode=contents ------------------------------------------ ...
- Linux下的压缩和解压缩命令——bzip2/bunzip2
bzip2命令 bzip2命令用于创建和管理(包括解压缩)".bz2"格式的压缩包. 我们遇见Linux压缩打包方法有很多种,以下讲解了Linux压缩打包方法中的Linux bzi ...
- EndNote(三)之中文引文导入方式
上一篇文章讲了Web of Science,PubMed的引文如何导入到EndNote中.这次,写一下常用的中文文献查找网站的引文如何导入EndNote. 本人常用的中文文献查找网站,主要是知网(CN ...
- ExecutorService线程池
ExecutorService 建立多线程的步骤: 1.定义线程类 class Handler implements Runnable{} 2.建立ExecutorService线程池 Executo ...
- javascript的一些知识
一.Js的this,{},[] this是Javascript语言的一个关键字,随着函数使用场合的不同,this的值会发生变化.但是有一个总的原则,那就是this指的是调用的函数自己. { } 大括号 ...
- 自定义类似MessageBox小窗体操作
1.实际小窗体界面如下 2.代码如下 private void InputBox(string caption,string orderNo) { Form InputForm = new Form( ...