【发布时间】:2015-09-15 06:51:33
【问题描述】:
我的理解是,虽然 jdbc 通常用于 SQL 查询,但因为 SQL 查询本质上只是一个字符串,所以 JDBC 不会知道它是 SQL 查询还是密码查询。
据我所知,我只需要导入 neo4j jdbc 驱动程序,并使用它将我的密码查询传递给 neo4j 数据库。
pom.xml
<dependency>
<groupId>org.neo4j</groupId>
<artifactId>neo4j-jdbc</artifactId>
<version>2.1.4</version>
<type>pom</type>
</dependency>
现在我正在尝试这样的事情:
this.dataSource = new DriverManagerDataSource(this.DBURL,this.USERNAME, this.PASSWORD);
this.dataSource.setDriverClassName("org.neo4j.jdbc.Driver");
this.jdbcTemplate = new JdbcTemplate(this.dataSource);
String qq = "MATCH (n:Individual) RETURN n LIMIT 25;";
Map<String,Object> res = jdbcTemplate.queryForMap(qq); //I actually just want to return a JSON string, but this is the only example I can find for now
这段代码会给我:
java.lang.ClassNotFoundException: org.neo4j.jdbc.Driver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:274)
at org.springframework.jdbc.datasource.DriverManagerDataSource.setDriverClassName(DriverManagerDataSource.java:127)
我在这里做错了什么?驱动类的正确名称是什么?
我也试过了
Class.forName("org.neo4j.jdbc.Driver");
我得到:
java.lang.ClassNotFoundException: org.neo4j.jdbc.Driver
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1645)
at org.apache.catalina.loader.WebappClassLoader.loadClass(WebappClassLoader.java:1491)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:191)
【问题讨论】:
-
好的,看起来问题是我的neo4j驱动程序没有被maven正确导入。看到这个问题:stackoverflow.com/questions/27808257/…
标签: jdbc neo4j jdbctemplate