Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
- <property name="driverClassName" value="${database.driver}"/>
- <property name="url" value="${database.url}"/>
- <property name="username" value="${database.user}"/>
- <property name="password" value="${database.password}"/>
- </bean>
- database.driver=com.mysql.jdbc.Driver
- database.url=jdbc:mysql://192.168.1.2:3306/db
- database.user=root
- database.password=password
- <dependency>
- <groupId>com.jcraft</groupId>
- <artifactId>jsch</artifactId>
- <version>0.1.53</version>
- </dependency>
- import com.jcraft.jsch.JSch;
- import com.jcraft.jsch.Session;
- public class SSHConnection {
- private final static String S_PATH_FILE_PRIVATE_KEY = "C:\Users\Val\.ssh\privatekeyputy.ppk"; \windows absolut path of our ssh private key locally saved
- private final static String S_PATH_FILE_KNOWN_HOSTS = "C:\Users\Val\.ssh\known_hosts";
- private final static String S_PASS_PHRASE = "mypassphrase";
- private final static int LOCAl_PORT = 3307;
- private final static int REMOTE_PORT = 3306;
- private final static int SSH_REMOTE_PORT = 22;
- private final static String SSH_USER = "87a34c7f89f5cf407100093c";
- private final static String SSH_REMOTE_SERVER = "myapp-mydomain.rhcloud.com";
- private final static String MYSQL_REMOTE_SERVER = "127.6.159.102";
- private Session sesion; //represents each ssh session
- public void closeSSH ()
- {
- sesion.disconnect();
- }
- public SSHConnection () throws Throwable
- {
- JSch jsch = null;
- jsch = new JSch();
- jsch.setKnownHosts(S_PATH_FILE_KNOWN_HOSTS);
- jsch.addIdentity(S_PATH_FILE_PRIVATE_KEY, S_PASS_PHRASE.getBytes());
- sesion = jsch.getSession(SSH_USER, SSH_REMOTE_SERVER, SSH_REMOTE_PORT);
- sesion.connect(); //ssh connection established!
- //by security policy, you must connect through a fowarded port
- sesion.setPortForwardingL(LOCAl_PORT, MYSQL_REMOTE_SERVER, REMOTE_PORT);
- }
- }
- @WebListener
- public class MyContextListener implements ServletContextListener {
- private SSHConnection conexionssh;
- public MyContextListener()
- {
- super();
- }
- /**
- * @see ServletContextListener#contextInitialized(ServletContextEvent)
- */
- public void contextInitialized(ServletContextEvent arg0)
- {
- System.out.println("Context initialized ... !");
- try
- {
- conexionssh = new SSHConnection();
- }
- catch (Throwable e)
- {
- e.printStackTrace(); // error connecting SSH server
- }
- }
- /**
- * @see ServletContextListener#contextDestroyed(ServletContextEvent)
- */
- public void contextDestroyed(ServletContextEvent arg0)
- {
- System.out.println("Context destroyed ... !");
- conexionssh.closeSSH(); // disconnect
- }
- <bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
- <property name="driverClassName" value="com.mysql.jdbc.Driver" />
- <property name="url" value="jdbc:mysql://localhost:3307/yourSchema" />
- <property name="username" value="admin4ajCbcWM" />
- <property name="password" value="dxvfwEfbyaPL-z" />
- </bean>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement