您的位置:首页 > 编程语言 > Java开发

Java通过jdbc远程操控MySQL数据库

2016-05-08 18:47 369 查看
注意事项有以下几点:

1,MySQL数据库端要关闭防火墙

2,关于字符集问题要设置好,可以参考以下博客eclipse向MySQL workbench插入中文显示乱码

关于解决workbench无法插入中文的问题

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;

public class Mydatabase
{
static Statement statement;
static Connection connection;

public Mydatabase()
{

}
//用于连接数据库
private static void connect()
{
try
{
try
{
Class.forName( "com.mysql.jdbc.Driver");//加载数据库驱动
System.out.println("数据库驱动加载成功");
}catch(ClassNotFoundException e){}

//连接数据库
connection=DriverManager.getConnection("jdbc:mysql://125.250.223.51:3306/words?characterEncoding=utf8","root","");
//其中125.250.223.51要换成数据库端所在的IP地址,3306改为数据库的端口号
statement=connection.createStatement();

}catch(Exception e){
e.printStackTrace();
System.out.println("sorry,连接失败");}
}
//向数据库word表中插入词语
public void insert(String s) throws SQLException
{

connect();
try
{
statement.executeUpdate("INSERT INTO word VALUES ('"+s+"','"+s.length()+"')");
} catch (SQLException e) {
System.out.println("已经有这个词语");
e.printStackTrace();
}
try
{
statement.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//删除数据库word表的某个词语
public void delete(String s )
{
connect();
try
{
statement.executeUpdate("DELETE FROM word WHERE description='"+s+"'");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
statement.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//随机从数据库word表中获得一个词语
public String getWord()
{
connect();
ResultSet set=null;
try {
set=statement.executeQuery("SELECT*FROM word ORDER BY rand() LIMIT 5");
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
while(set.next())
{
return set.getString(1);
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return "not";

}
//账户的注册
public void register(String user ,String password)
{
connect();
try
{
statement.executeUpdate("INSERT INTO account VALUES ('"+user+"','"+password+"')");
} catch (SQLException e) {
System.out.println("用户已存在");
e.printStackTrace();
}
try
{
statement.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try
{
connection.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
//用户的登录
public boolean login(String user ,String password)
{
connect();
ResultSet set=null;
try {
set=statement.executeQuery("SELECT password FROM account where user='"+user+"'" );
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
try {
while(set.next())
{
if(password.equals(set.getString(1)))
return true;
else
return false;
}
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

return false;
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: