所以我在boot.scala中有这样的东西:
object DBVendor extends ConnectionManager {
def newConnection(name: ConnectionIdentifier): Box[Connection] = {
try {
Class.forName("oracle.jdbc.driver.OracleDriver")
val dm = DriverManager.getConnection("jdbc:oracle:thin:@hostname:1521:orcl", "username", "password");
Full(dm)
} catch {
case e : Exception => e.printStackTrace; Empty
}
}
def releaseConnection(conn: Connection) {conn.close}
}
我有几个快速的问题...... 如何设置驱动程序进行连接?
我看到的@hostname是本地数据库的,但我的是远程的...我有通过我使用的sqldeveloper连接到它的所有信息,并认为我需要的只是那里的主机名。登记/> 主机名是否只需要去那里?如果这就是我需要的全部?或者我是否需要某种绝对地址?
答案 0 :(得分:0)
只要运行代码的机器可以看到主机名(您可以通过简单的ping测试),这就是您所需要的。
您将需要在Java的路径中找到相应的oracle jdbc驱动程序。您可以从downloads.oracle.com获取最新的驱动程序
答案 1 :(得分:0)
您需要通过服务器的IP地址更改“主机名”(正如Gary所说,如果您不知道可以使用“ping主机名”进行测试的IP地址)。
在Lift中,JDBC驱动程序的默认路径是
%您的项目路径%/ src / main / webapp / WEB-INF / lib
可能你必须创建lib的文件夹。如果您安装了Oracle客户端,则可以从以下位置复制适当的驱动程序:
%oracle的客户端路径%/ jdbc / lib
答案 2 :(得分:0)
连接字符串中的@hostname表示承载数据库的物理机的主机名。 数据库主机的主机名及其IP地址应位于操作系统的hosts文件中。您还可以在连接字符串中使用硬编码的IP地址。 @hostname不引用您的“本地数据库”。如果客户端应用程序在承载数据库的同一服务器上运行,则可以在连接字符串中使用@localhost。 orcl代表一个oracle服务。此信息应由数据库管理员提供。
同时检查此链接: http://www.java-tips.org/other-api-tips/jdbc/how-to-connect-oracle-server-using-jdbc-4.html