1、设置远程mySql授权
在mysql命令行中授权代码:
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'124.94.194.195' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
其中:
myuser 表示访问mysql的本地用户(可以随便写,不需要本地创建);
124.94.194.195 表示本地计算机的IP公网地址;
mypassword 表示访问mysql的本地密码(可以随便写,不需要本地创建);
JDBC连接代码:
对于JDBC代码只需要改动开头声明就可以:
private final String dbDrive="com.mysql.jdbc.Driver";
private final String url = "jdbc:mysql://124.94.194.195:3306/需要访问的数据库名";
private final String userName = "myuer";
private final String password = "myPassword";
private Connection con = null;
如图为JDBC完整代码:
package ldxy.xxxy;//此处需改成自己的包名
import java.sql.*;
public class JDBConnection {
private final String dbDrive="com.mysql.jdbc.Driver";
private final String url = "jdbc:mysql://124.94.194.195:3306/需要访问的数据库名";
private final String userName = "myuer";
private final String password = "myPassword";
private Connection con = null;
//通过构造方法加载数据库驱动
public JDBConnection() {
try {
Class.forName(dbDrive).newInstance();
} catch (Exception ex) {
System.out.println("数据库加载失败");
}
}
//创建数据库连接
public boolean creatConnection() {
try {
con = DriverManager.getConnection(url, userName, password);
con.setAutoCommit(true);
} catch (SQLException e) {
System.out.println(e.getMessage());
System.out.println("creatConnectionError!");
}
return true;
}
//对数据库的增加、修改和删除的操作
public boolean executeUpdate(String sql) {
if (con == null) {
creatConnection();
}
try {
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
int iCount = stmt.executeUpdate(sql);
System.out.println("操作成功,所影响的记录数为" + String.valueOf(iCount));
return true;
} catch (SQLException e) {
System.out.println(e.getMessage());
return false;
}
}
//对数据库的查询操作
public ResultSet executeQuery(String sql) {
ResultSet rs;
try {
if (con == null) {
creatConnection();
}
Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
try {
rs = stmt.executeQuery(sql);
} catch (SQLException e) {
System.out.println(e.getMessage());
return null;
}
} catch (SQLException e) {
System.out.println(e.getMessage());
System.out.println("executeQueryError!");
return null;
}
return rs;
}
//关闭数据库
public void closeConnection(){
if(con==null){
try {
con.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
}
版权声明:本文为qq_37067955原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。