通过java的jsch连接远程数据库

有时候我们本地代码可能无法连接数据库,因为数据库增加了白名单,指定ip的服务器才可以连接到数据库,不过我们可以通过连接该指定ip的服务器,然后通过该服务器连接数据库,就像很多数据库可视化软件一样。通过使用jsch,我们也可以在代码层面实现这个功能。话不多说,直接开码:JSch jsch = new JSch();

Session sess;

//这里xxx.xxx.xxx.xxx为已加白名单的远程服务器

sess = jsch.getSession("ubuntu", "xxx.xxx.xxx.xxx", 22);

sess.setPassword("*******");

sess.setConfig("StrictHostKeyChecking", "no");

sess.connect();

//这里xxx.xxx.xxx.xxx为数据库连接地址

//通过这个set方法可以将远程的3306端口指定为本地的3308端口,因为笔者本地3306已使用,故指定为3308端口

sess.setPortForwardingL(3308,"xxx.xxx.xxx.xxx",3306);

try {

//读取配置文件,需要注意的是,这里的配置文件中数据库地址为localhost,端口为刚刚指定的3308

reader = Resources.getResourceAsReader("conf.xml");

} catch (IOException e) {

e.printStackTrace();

}

sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);

SqlSession session = sqlSessionFactory.openSession();

String statement = "com.saishangmingzhu.getData";//映射sql的标识字符串

List ll=session.selectList(statement);

System.out.println(ll);

session.commit();

session.close();

sess.disconnect();

当然,使用jsch实现ssh连接不仅仅限于实现数据库的连接,还可以对ssh连接上的服务器进行操作,比如执行shell等相关命令,后续再做记录吧

jsch连接mysql_使用jsch连接数据库相关推荐

  1. jsch连接mysql_求用jsch网络工具包通过ssh连接远程oracle数据库并发送sql操作语句(数据库在unix上)java代码例子...

    求用jsch网络工具包通过ssh连接远程oracle数据库(数据库在unix上)java代码例子:为何jsch发送:sqlplususer/pwd@service此命令,却没有结果返回啊.下面是代码: ...

  2. mye连接mysql_利用MyEclipse连接数据库并自动生成基于注解或者XML的实体类

    一.利用MyEclipse连接数据库 1. 打开MyEclipse的数据库连接视图 然后在Other中找到"MyEclipse Database"中的DB Browser 2. 在 ...

  3. iphone远程连接mysql_如何远程连接数据库 原来是这样的

    数据库连接有很多种,而最常用的有ACCESS,MYSQL,SQL-SERVER等系列的数据库,而MYSQL,SQL-SERVER是与源码程序分离的,一般在购买空间时,都会有配置相对应的数据库空间的哦. ...

  4. 通过配置文件连接mysql_利用配置文件连接数据库

    Driver=oracle.jdbc.OracleDriver Con=jdbc:oracle:thin:@175.3.15.9:1521:orcl User=scott Pwd=tiger //pr ...

  5. java jsch 调用shell_使用Jsch执行Shell脚本

    作者:BaseCN Email:basecn@163.com ----------------------------------------------- Jsch是JAVA的SSH客户端,使用的目 ...

  6. 测试php是否连接mysql_如何测试php是否连接mysql成功

    在nginx的html下,创建一个测试的.php文件,往里面写入内容并用浏览器访问相应页面,输入数据库用户和密码提示 OK-数据库连接成功表示php连接数据库成功. localhost 127.0.0 ...

  7. vs vb连接mysql_详细介绍VS2010 VB ACCESS数据库的连接(如有不对,敬请改正)

    VS 首先添加引用 尽量选最新的版本,这样可以向下兼容 然后连接ACCESS数据库 点击数据/添加新数据源 第一次连接点新建连接 点击更改 选中ACCESS数据库 点击浏览,选定数据库位置 用户名密码 ...

  8. 熊猫图表 连接mysql_使用PHP将MySQL数据库连接到JavaScript图表

    熊猫图表 连接mysql When using a charting library like AnyChart, which makes visualizing data so quick and ...

  9. JSch连接不上Linux服务器,windows 下 java程序jsch连接远程linux服务器执行shell命令

    java远程连接服务的shell需要使用SSH的登录方式,可以使用JSch技术.JSch 是SSH2的一个纯Java实现.它允许你连接到一个sshd 服务器,使用端口转发,X11转发,文件传输等等. ...

最新文章

  1. [JAVA] DUMP
  2. 线段树扫描线求矩形周长详解
  3. c mysql存储过程实例_MySQL存储过程实例
  4. 非名企非名校,我是如何入职顶级互联网公司的
  5. java假死_分析java进程假死
  6. Java技术栈---语言基础
  7. 数字图像处理 第二章 图像处理基础
  8. JavaScript 学习笔记— —Date对象
  9. 三星Galaxy Note 20相机细节曝光:这个镜头略显鸡肋或被舍弃
  10. 安全问题汇总(一) 证书定期检查和及时更新
  11. Python学习笔记(尚硅谷)
  12. [转载] python隐式转换_Python | 数据类型的转换 显式转换 隐式转换
  13. Ant Design Vue中日期选择器中绑定后台获取的时间
  14. 计算机 控制面板都打不开怎么办,控制面板打不开怎么办?控制面板打开办法大全...
  15. 如何快速制作一个漂亮的生日祝福网站
  16. delphi报表_顶级4 Delphi报表工具
  17. Java基础知识笔记-11_2-Swing用户界面组件
  18. 时间转化为字符串格式的方法
  19. phpstudy访问不了php_初接触php,使用phpstudy运行php文件,访问路径中不能携带.php尾缀,否则报错...
  20. 【BOOST C++ 10 时间数据】(4)时间格式输入和输出(11-12)

热门文章

  1. 史上最详细Ajax学习笔记
  2. ncnn报null pointer dereference异常
  3. Android canvas画布,Android 画布Canvas
  4. 王者荣耀 - 意外捡到的神秘手机(密码四位数)
  5. 开工难,工资还得照发,怎么办
  6. 冯诺依曼计算机程序及其执行,冯诺依曼计算机机器级程序及其执行DOC
  7. docker网卡的IP地址修改
  8. 你们关心的租房的那些事,真是经典中的经典
  9. 【arduino从入门到放肆】①arduino 教程介绍
  10. VM虚拟机Ubuntu 22.04 LVM磁盘扩容报错:GPT PMBR size mismatch (104857599 != 209715199) will be corrected by wri