zoukankan      html  css  js  c++  java
  • jdbc java远程连接mysql数据库服务器

    首先,需要注意以下几点:

    1、手机需要获得可以访问网络的权限;

    2、导入的jdbc驱动的版本需要与mysql服务器的版本相近:

    3、mysql默认的访客是只允许本机(localhost),不允许其他主机运程访问,需要修改为所有主机,在命令行进行操作:

    mysql -u用户名 -p密码
    mysql>use mysql; mysql>select 'host' from user where user='root'; mysql>update user set host = '%' where user = 'root';

     其中,%表示所有的主机

    4、进行连接操作时需要新开线程;

    5、编码问题,mysql中表的编码要与连接的编码方式相同:

    连接操作:

    1、设置主机、用户名、密码、连接方式等:

        static private String connectString = "jdbc:mysql://192.168.199.228:3306/yang_project"
            + "?autoReconnect=true&useUnicode=true&useSSL=false"
            + "&characterEncoding=utf-8&serverTimezone=UTC";
        static private String  sql_user="root";
        static private String  sql_pwd="123456";

    2、导入jdbc驱动包,并将相关的类引入代码文件:

    try {
         Class.forName("com.mysql.jdbc.Driver");
    } catch (ClassNotFoundException e) {
         e.printStackTrace();
    }

    3、建立连接(需要在新线程中):

    new Thread(){
        public void run(){
            try {
                Connection con = DriverManager.getConnection(connectString, sql_user, sql_pwd);
                con.close();
            } catch (SQLException e) { //连接失败
                e.printStackTrace();
            }
        }
    }.start();

     增删查改(需要新线程和try/catch):

    1、增

    Connection con = DriverManager.getConnection(connectString, sql_user, sql_pwd);
    Statement stmt=con.createStatement();
    String InsertString = "insert into user(user_name, user_password, user_age, user_height, user_weight, user_sex, user_info) " +
                "values('"+name.getText().toString()+
                "', '"+password.getText().toString()+
                "', '"+age.getText().toString()+
                "', '"+height.getText().toString()+
                "', '"+weight.getText().toString()+
                "', '"+sexType+
                "', '"+info.getText().toString()+"');";
    int i = stmt.executeUpdate(InsertString);
    con.close();
    stmt.close();

    2、删

    String DeleteString = "delete from steps where user_name = '"+myname+"' and steps_date = '"+delete_date+"';";
    int i = stmt.executeUpdate(DeleteString);

    3、查

    QueryString = "select * from steps where user_name = '"+myname+"' order by steps_date DESC;";
    ResultSet rs = stmt.executeQuery(QueryString); while(rs.next()){ steps_date = rs.getString("steps_date"); steps_number = rs.getString("steps_number"); }

    4、改

    String QueryString = "update user set user_height = '"+myheight +"' where user_name = '"+myname+"';";
    int i = stmt.executeUpdate(QueryString);
  • 相关阅读:
    登录界面点击登录后如何延迟提示成功的div的显示时间并跳转
    关于如何用jq定位到某个元素的索引
    总结React关于require的问题
    关于React的赋值与调用方法
    React项目搭建(脚手架)
    关于th,td,tr的一些相关标签
    一个IP多个https站点配置
    ubuntu配置apache的虚拟主机
    putty如何使用
    CI基本配置
  • 原文地址:https://www.cnblogs.com/zhaozilongcjiajia/p/10453265.html
Copyright © 2011-2022 走看看