Spark通过读取配置文件连接数据库 java.lang.NullPointerException报错

先说答案:新版的IDEA要将配置文件放入resources目录下
在这里插入图片描述

运行前确保已经打开了虚拟机连上了数据库
运行结果:
在这里插入图片描述

--------------------------------------------分割线----------------------------------------------

用jdbc连接MySql数据库通常是这样写的

 val conn: Connection = DriverManager.getConnection(
      "jdbc:mysql://node01:3306/product?useUnicode=true&characterEncoding=utf8&useSSL=false",
      "root",
      "123456"
    )
 Class.forName("com.mysql.jdbc.Driver")

但是如果想要通过配置文件来获取相应的数据,可以这样写
好处
1.实现了数据与代码的分离,实现了解耦
2.如果需要修改配置文件信息,可以避免程序重新打包

	val stream = getClass.getClassLoader.getResourceAsStream("jdbc.properities")
    val prop = new Properties()
    prop.load(stream)
    val user = prop.getProperty("user")
    val password = prop.getProperty("password")
    val url = prop.getProperty("url")
    val driverClass = prop.getProperty("driverClass")
    Class.forName(driverClass)
    val conn: Connection = DriverManager.getConnection(url, user,password)
    println(conn)

jdbc.properities内容如下:
在这里插入图片描述

之前看了很多,有说放到src目录下的,但是会有以下报错
在这里插入图片描述
还有用什么路径的,都没用,放到resources下就好了, 大家可以多试试

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值