spark加载properties配置文件方法
2017-06-14 17:47
701 查看
首先我先介绍一下错误的写法,这个加载配置文件方法是错误的:
val props = new Properties();
val loader = getClass.getClassLoader;
props.load(new FileInputStream(loader.getResource("config.properties").getFile()))这个是把配置文件直接放在resource的目录下,去获得配置文件信息,这个写法在spark程序中会报找不到配置文件。
正确写法:
val props = new Properties();
props.load(new FileInputStream("config.properties"));
val hdfspath = props.getProperty("hdfspath");
val mysqlpath = props.getProperty("mysql");
你可以在这些地方加载配置文件
1. kafkaStream.foreachRDD { rdd =>
rdd.foreachPartition { partition =>
val filePath = "config.properties"
LogUtil.info(filePath)
val props = new Properties()
props.load(new FileInputStream(filePath))
LogUtil.info("一")
props.keySet().toArray().foreach { x =>
LogUtil.info(x + "\t一" + props.getProperty(x.toString()))
}
def main(args: Array[String]): Unit = {
var kafkaZkQuorum = ""
var group = "EventETL_test_group"
var topics = ""
var numThreads = 1
var timeDuration = 3
var checkpointDir = "/Users/test/sparktemp"
println("Usage: configuration file")
val filePath = "config.properties"
LogUtil.info(filePath)
val props = new Properties()
props.load(new FileInputStream(filePath))
val props = new Properties();
val loader = getClass.getClassLoader;
props.load(new FileInputStream(loader.getResource("config.properties").getFile()))这个是把配置文件直接放在resource的目录下,去获得配置文件信息,这个写法在spark程序中会报找不到配置文件。
正确写法:
val props = new Properties();
props.load(new FileInputStream("config.properties"));
val hdfspath = props.getProperty("hdfspath");
val mysqlpath = props.getProperty("mysql");
你可以在这些地方加载配置文件
1. kafkaStream.foreachRDD { rdd =>
rdd.foreachPartition { partition =>
val filePath = "config.properties"
LogUtil.info(filePath)
val props = new Properties()
props.load(new FileInputStream(filePath))
LogUtil.info("一")
props.keySet().toArray().foreach { x =>
LogUtil.info(x + "\t一" + props.getProperty(x.toString()))
}
2. partition.foreach { x => LogUtil.info(x) val filePath1 = "config.properties" LogUtil.info(filePath1) val props1 = new Properties() props1.load(new FileInputStream(filePath1)) LogUtil.info("二") props1.keySet().toArray().foreach { x => LogUtil.info(x + "\t二" + props1.getProperty(x.toString())) } }3.
def main(args: Array[String]): Unit = {
var kafkaZkQuorum = ""
var group = "EventETL_test_group"
var topics = ""
var numThreads = 1
var timeDuration = 3
var checkpointDir = "/Users/test/sparktemp"
println("Usage: configuration file")
val filePath = "config.properties"
LogUtil.info(filePath)
val props = new Properties()
props.load(new FileInputStream(filePath))
相关文章推荐
- spark加载properties配置文件方法
- Java配置properties文件的加载和读取方法
- Python实现加载及解析properties配置文件的方法
- SpringMvc 加载配置.Properties文件中的方法
- java加载properties配置文件的几种方法
- spring加载一个或者多个properties配置文件方法
- java获取当前路径及加载配置文件(报错:java.lang.NullPointerException java.util.Properties$LineReader.readLine(Prop)
- Spring 配置数据源及properties配置文件加载
- 加载Spring配置文件常用的三种方法
- 单例模式加载properties配置文件
- JAVA 动态加载properties配置文件
- Spring配置文件中使用ref local与ref bean的区别. 在ApplicationResources.properties文件中,使用<ref bean>与<ref local>方法如下
- JAVA Servlet 动态加载配置文件.properties
- 6种properties文件加载方法
- 加载spring配置文件的常用三种方法
- 编写一个文件,读取 src 下面day12包 下面的my.properties 文件,文件内容如下, className=day12.User 结合 IO、反射知识,完成 配置文件中对象的创建和方法调用。并编写方法,列举出 Student 类中所有的属性、
- 反射的应用,读取properties配置文件中的数据(普通InputStream方式,类加载方式),再调用运行
- 读取***.properties配置文件里数据的方法
- Spring加载配置文件的3种方法
- spring读取properties和xml配置文件的方法