注意事项有以下几点:
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;
}
}