【问题标题】:Getting data through an SSH tunnel using Hibernate使用 Hibernate 通过 SSH 隧道获取数据
【发布时间】:2012-09-07 11:18:37
【问题描述】:

我最近开始学习 Hibernate 技术,并且必须使用 Hibernate 从数据库中获取数据。问题是我只能通过 SSH 隧道连接到数据库。我可以在hibernate.cfg.xml 文件中使用任何属性来解决此问题吗?或者您可以提出另一种新手可以理解的方式。

【问题讨论】:

  • 你能通过这个SSH隧道建立一个简单的JDBC连接吗?你用什么数据库?
  • @Tichodroma ,以前我尝试使用 MySQL 客户端手动连接到这个 MySQL 数据库...

标签: java hibernate ssh


【解决方案1】:

也许使用JschSome examples 可以给你一条路。

另一种方法是实现您自己的 SSH SocketFactory,可能使用 http 代理处理程序和端口转发的东西。起点可以是:

SSHSocketFactory fact = new SSHSocketFactory(sshHost, sshPort, new SSHPasswordAuthenticator(sshUser, sshPassword));

sock = fact.createSocket(host, port);

您可以将您的实现与hibernate.cfg.xml 文件中的以下参数链接:

hibernate.connection.socketFactory=com.mysql.jdbc.NamedPipeSocketFactory

或者可能像他们使用herehere 的方式(后者是更好的方式)。

很好的 ssh 东西!

【讨论】:

  • 共享链接(后一个)不再起作用。
猜你喜欢
  • 2020-02-09
  • 2014-12-12
  • 1970-01-01
  • 2016-09-09
  • 2014-09-03
  • 2013-05-26
  • 2014-07-20
  • 2016-09-08
  • 2014-09-17
相关资源
最近更新 更多