android 中Network error IOException: failed to connect to /127.0.0.1 (port 1433): connect failed: ECONNREFUSED (Connection refused)


下面對android中出現的Network error IOException: failed to connect to /127.0.0.1 (port 1433): 做一下總結:

當用android程序調用本地的sqlserver的時候,當連接ip寫成127.0.0.1的時候,怎么都連不通,出現以下的錯誤信息:

感覺好像是代碼有問題或者是清單文件中某個權限忘加了,其實不是這樣的。原來模擬器默認把127.0.0.1和localhost當做本身了,在模擬器上可以用10.0.2.2代替127.0.0.1和localhost,另外如果是在局域網環境可以用 192.168.0.x或者192.168.1.x(根據具體配置)連接本機,這樣應該就不會報錯了。

 

package com.example.zhouy.mytest01;

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

/**
 * Created by Administrator on 2017/12/14.
 */

public class DBUtil {
    private static Connection getSQLConnection(String ip,String user,String pwd,String db)
    {
        Connection con =null;
        try {
            Class.forName("net.sourceforge.jtds.jdbc.Driver");
            con = DriverManager.getConnection("jdbc:jtds:sqlserver://"+ip+":1433/"+db+";charset=utf-8",user,pwd);
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (SQLException e) {
            e.printStackTrace();
        }
        return con;

    }

    public static String QuerySQL(){

        String result="";

        try {
            Connection conn = getSQLConnection("192.168.1.101","yonghuming","mima","SHUJUKU");
            String sql = "select top 10 * from users";
            Statement stmt = conn.createStatement();
            ResultSet rs = stmt.executeQuery(sql);
            while(rs.next())
            {
                String s1 = rs.getString("USRNAM");
                String s2 = rs.getString("FULLNAME");
                result += s1+" - " + s2 + "\n";
                System.out.println(s1+" - "+s2);
            }
            rs.close();
            stmt.close();
            conn.close();
        } catch (SQLException e) {
            e.printStackTrace();
            result += "查詢數據異常!"+e.getMessage();
        }
        return result;
    }

    public static void main(String[] args){
        QuerySQL();

    }
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM