Java 通过ojdbc连接到oracle数据库12c时出现用户名和密码问题

Java 通过ojdbc连接到oracle数据库12c时出现用户名和密码问题,java,sql,oracle12c,Java,Sql,Oracle12c,我安装了SQL developer并正确配置了数据库,我从sys创建了一个用户,如下所示: CREATE USER random IDENTIFIED BY 12345; GRANT ALL PRIVILEGES TO random; 我尝试使用oracles网站中的ojdbc8.jar连接到oracle SQL数据库,如下所示: String url = "jdbc:oracle:thin:random/12345@localhost:1521:home"; try{ Con

我安装了SQL developer并正确配置了数据库,我从sys创建了一个用户,如下所示:

CREATE USER random IDENTIFIED BY 12345;
GRANT ALL PRIVILEGES TO random;
我尝试使用oracles网站中的ojdbc8.jar连接到oracle SQL数据库,如下所示:

String url = "jdbc:oracle:thin:random/12345@localhost:1521:home";
try{
        Connection dbConn = DriverManager.getConnection(url);
}catch(Exception e){
        System.out.println("Exception: " + e.getLocalizedMessage());
}
但是,我收到此错误:

Exception: ORA-01017: invalid username/password; logon denied
上一次我问这个问题时,它只是被没有实际答案的答案所填充,我不需要将驱动程序更改为另一个驱动程序,我不需要实例化某种工厂的废话,这只会增加复杂性,我只想知道如何连接到数据库中的帐户,以便执行基本的SQL功能

编辑: 我突然想到这是一个pdb,是否需要对连接url进行任何人都可以指出的修改?

尝试:

Connection dbConn = DriverManager.getConnection("jdbc:oracle:thin:@localhost:1521:home", "random", "12345");

PDB连接需要稍微调整一下

请使用
localhost:port/sid
而不是
localhost:port:sid

if(isPluggableDB){
conn=DriverManager.getConnection(“jdbc:oracle:thin:@”+hostName+:“+hostPort+”/“+sid,用户名,密码);
}否则{
conn=DriverManager.getConnection(“jdbc:oracle:thin:@”+hostName+:“+hostPort+”:“+sid,用户名,密码);
}

在你花很多时间追你的尾巴之前;当您使用带有usename和密码的sql plus时,它是否有效?刷新权限?此外,我似乎还记得Oracle在某些情况下(使用或不使用out标识等)对授予权限的方式很挑剔。您可以尝试查看其中一些帖子:,我没有看到我在sqlplus中创建的任何用户,但我在sql developer中有这些用户,我将查看您的链接。从所有用户中选择*可能会为您提供一些其他有用的信息。