Eclipse连接mysql数据库

来源:互联网 发布:2016全国溺水事故数据 编辑:程序博客网 时间:2024/06/05 04:04

1、需要一个额外的包mysql-connector-java-5.1.42-bin.jar(这是目前最新的包,当然也可以去官网下)。

2、右键工程导入引用的库文件 mysql-connetcor-java-**.jar;(build path | add external archives)

3、写代码

(其他:前提是mysql数据库在开着,如果使用控制台命令的话,因为导入有其他包,所以你懂得……)

import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.Statement;import com.mysql.jdbc.Connection;public class MySqlTest {public static void main(String[] args) {Connection con;String driver = "com.mysql.jdbc.Driver";String dbName = "stuinfo"; //你的数据库名字String url = "jdbc:mysql://localhost:3306/" + dbName;String user = "root"; //用户,建议初学者直接用root,权限大,熟悉mysql后可添加授权用户String passwd = "*********"; //user的密码try {Class.forName(driver);con = (Connection) DriverManager.getConnection(url, user, passwd);if (!con.isClosed()) {System.out.println("成功连接数据库");}Statement state = con.createStatement();String sql = "select * from " + "user"; //user是我的tableName数据库里的一个表,表名不同于数据库名(database != table)ResultSet rset = state.executeQuery(sql);ResultSetMetaData rsmd = rset.getMetaData();//获取元数据int count = rsmd.getColumnCount();System.out.println(count);for (int i = 0; i < count; ++i) {System.out.println(rsmd.getColumnName(i + 1)); //字段从1开始,尴尬了}rset.close();con.close();}catch (Exception e) {e.printStackTrace();}}}

v2.0让你显得更专业

创建一个类用于数据库连接,使DBA和程序员的工作分开,也保证了数据库的安全性。

下面的ConnectMySQL类有一个静态成员方法,需要一个实参数据库名,然后返回一个Connection类的实例对象

import java.sql.Connection;import java.sql.DriverManager;public class ConnectMySQL {public static Connection connectToDatabase(String dbName) {String driver = "com.mysql.jdbc.Driver";String url = "jdbc:mysql://localhost:3306/" + dbName;String name = "root"; // your name, who are allowed to access to the DatabaseString passwd = "******"; //name's passwdtry {Class.forName(driver);Connection con = DriverManager.getConnection(url, name, passwd);return con;}catch (Exception e) {return null;}}}


口头删除下文。连接数据库很用容易的,只要有权限。

java代码实现ssh隧道连接web mysql数据库 所需的字节码文件(git链接)//下面代码可能有误

import java.sql.*;import com.jcraft.jsch.JSch;import com.jcraft.jsch.Session;public class UpdateMySqlDatabase{    static int lport;    static String rhost;    static int rport;    public static void go()    {        String user = "ubuntu";        String password = ""; //user's passwd 要修改        String host = "115.159.225.36";        int port = 22;        try        {            JSch jsch = new JSch();            Session session = jsch.getSession(user, host, port);            lport = 4321;            rhost = "115.159.225.36";            rport = 3306;            session.setPassword(password);            session.setConfig("StrictHostKeyChecking", "no");            System.out.println("Establishing Connection...");            session.connect();            int assinged_port = session.setPortForwardingL(lport, rhost, rport);            System.out.println("localhost:" + assinged_port + " -> " + rhost + ":" + rport);        }        catch (Exception e) { System.err.print(e); }    }    public static void main(String[] args)    {        try        {            go();        }        catch (Exception ex)        {            ex.printStackTrace();        }        System.out.println("An example for updating a Row from Mysql Database!");        Connection con = null;        String driver = "com.mysql.jdbc.Driver";        String url = "jdbc:mysql://" + rhost + ":" + lport + "/";        String db = "stuinfo";        String dbUser = "root";        String dbPasswd = "****"; //root's passwd 要修改        try        {            Class.forName(driver);            con = DriverManager.getConnection(url + db, dbUser, dbPasswd);            try            {                Statement st = con.createStatement();                String sql = "select * from " + "mytable"; //表名不同于数据库名(database != table)                int update = st.executeUpdate(sql);                if (update >= 1)                {                    System.out.println("Row is updated.");                }                else                {                    System.out.println("Row is not updated.");                }            }            catch (SQLException s)            {                System.out.println("SQL statement is not executed!");            }        }        catch (Exception e)        {            e.printStackTrace();        }    }}




原创粉丝点击