我目前是poking在 maven 的帮助下的 REST 服务器(jersey-grizzly2-quickstart 原型(prototype),没什么豪华的)。显然我在库管理方面做错了,因为我无法获取服务内部的 JDBC 连接。它向我抛出“没有找到适合 jdbc:oracle:thin:@... 的合适驱动程序”。同时,我可以从常规 java 应用程序连接到该数据库。我对如何追查问题的根源相当无能为力...对 ojdbc7 的依赖在 pom.xml 文件中指定为
<dependency>
<groupId>com.oracle</groupId>
<artifactId>ojdbc7</artifactId>
<version>12.1.0.1</version>
</dependency>
看起来合法。这可能是一个简单的版本冲突,但正如我所说,我对如何正确检查这些东西一无所知......
至于复制步骤: 1)在一些虚拟目录中要求maven
mvn archetype:generate -DarchetypeArtifactId=jersey-quickstart-grizzly2 -DarchetypeGroupId=org.glassfish.jersey.archetypes -DinteractiveMode=false -DgroupId=com.example.rest -DartifactId=jersey-service -Dpackage=com.example.rest -DarchetypeVersion=2.17
2)添加
Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@144.21.77.27:1521:orcl", "", "");
由maven生成的MyResource类的字符串(来自javax.ws.rs库包的Connection和DriverManager,这个数据库是我在oracle云中的沙箱 Playground )。 3)然后运行服务器
mvn clean compile
mvn exec:java
4)亲自见证问题(在页面访问时返回“没有找到适合 jdbc:oracle:thin:@... 的合适驱动程序”)
最佳答案
好吧,很明显,问题是 Maven 没有合适的库。太糟糕了,我对 Maven 的调试问题一无所知。 That确实正确地引导我走到最后。现在终于可以工作了:>
关于java - maven的REST服务下获取JDBC连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52210695/