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> ...
随机推荐
- Android ActionBar 初探
1.指南,例子,个人感觉 首先上官网指南链接http://developer.android.com/guide/topics/ui/actionbar.html 参考了官网上的例子http://de ...
- Toad各版本所包含的组件
Toad for Oracle Base Edition Toad for Oracle Knowledge Xpert for PL/SQL Knowledge Xpert for Oracle A ...
- phalcon3.0.1默认多模块生成的几个bug
发现用Phalcon DevTools (3.0.0)生成的多模块有一些bug: 默认的路由定义,字符串替换有误 原代码// $namespace = str_replace('Module','Co ...
- 耿丹CS16-2班课堂测试作业汇总
Deadline: 2016-11-01 11:59 作业内容 课堂测试作业总结 00.题目得5分,多半扣在格式上,有些同学代码写得很过分,已经很仁慈对待,同学们珍惜之: 01.界面设计得分不好,换行 ...
- MySQL 排名统计
select actor_id,@curr_cnt:=cnt as cnt , ,@rank) as rank, @prev_cnt:=@curr_cnt as dummy from( select ...
- WPF之命名空间和资源
1.参考: https://msdn.microsoft.com/zh-cn/library/ms747086(v=vs.110).aspx http://www.cnblogs.com/cww201 ...
- ffmpeg-20160929-bin.7z
ESC 退出 0 进度条开关 1 屏幕原始大小 2 屏幕1/2大小 3 屏幕1/3大小 4 屏幕1/4大小 5 屏幕横向放大 20 像素 6 屏幕横向缩小 20 像素 S 下一帧 [ -2秒 ] +2 ...
- ORACLE发送带附件邮件的二三事之一
在oracle使用过程中,我们可以通过pl/sql生成数据文件,也可以通过spool on spool off生成,但某些环境下,我们需要通过存储过程处理数据,数据处理完,需要自动生成数据文件,手工导 ...
- caffe_手写数字识别Lenet模型理解
这两天看了Lenet的模型理解,很简单的手写数字CNN网络,90年代美国用它来识别钞票,准确率还是很高的,所以它也是一个很经典的模型.而且学习这个模型也有助于我们理解更大的网络比如Imagenet等等 ...
- 多功能弹窗控件layer
开发网站的时候,如何合理运用好各种插件对开发的帮助是很大的. 免去了我们调试各种交互效果, 比如常用的弹窗.气泡.提示.加载.焦点.标签.导航.折叠等等 这里会推荐几个常用的js插件,丰富多样简单易移 ...