[問題] JDBC存取Mysql資料庫異常

看板AndroidDev作者時間8年前 (2015/11/03 01:47), 8年前編輯推噓4(4025)
留言29則, 6人參與, 最新討論串1/1
作者: forkncp (折口) 看板: AndroidDev 標題: [問題] JDBC存取Mysql資料庫異常 時間: Tue Nov 3 01:47:50 2015 大家好 我知道一定會有人建議不要直接存取DB 礙於某些因素,還是決定直接存取DB...(技術、時間、練習...等) 本來想說因該可以很順利的完成,可是居然搞到現在 Connection還是建不起來...冏 權限: <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <user-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 程式: //沒有很完整,但就大概這樣... public void onCreate(Bundle savedInstanceState) { final String JDBC_DRIVER = "com.mysql.jdbc.Driver"; final String DB_URL = "jdbc:mysql://125.227.xxx.xxx:port/schema"; try{ Class.forName(JDBC_DRIVER); /**********************下面這行就報錯了*************************/ conn = DriverManager.getConnection(DB_URL, USER, PWD); stmt = conn.createStatement(); rs = stmt.executeQuery(sql); }catch(Exception e){ e.printStackTrace(); } 錯誤: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server. java.net.SocketException: socket failed: EACCES (Permission denied) 抱歉對於Android開發還是個超新手,實在不知道問題出在哪QQ google半天也找不到想要的答案...只好上來求助 若還需要什麼資訊煩請推文告知,謝謝!!! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.136.198.156 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1446486473.A.B50.html

11/03 08:47, , 1F
網路存取權限有給嗎?
11/03 08:47, 1F

11/03 09:56, , 2F
網路存取權有給:android.permission.INTERNET
11/03 09:56, 2F

11/03 13:38, , 3F
server 防火牆有開嗎?mysql server 有授權你目前的 ip 嗎
11/03 13:38, 3F

11/03 13:44, , 4F
一樣的設定,透過一般java project是正常的,所以應該不
11/03 13:44, 4F

11/03 13:45, , 5F
是防火牆/ip的問題QQ
11/03 13:45, 5F

11/03 14:15, , 6F
你用 Socket 連看看有沒有回啊,看 message 是什麼都沒回
11/03 14:15, 6F
不太懂Socket怎麼連...我再研究一下 另外如果錯誤代碼是這樣,可是"DriverManager.getConnection"所帶的參數是正確的 那還有什麼可能嗎? com.mysql.jdbc.exceptions.jdbc4.MySQLNonTransientConnectionException: Could not create connection to database server. ※ 編輯: forkncp (125.227.147.229), 11/03/2015 16:00:05

11/04 14:27, , 7F
我剛好有些相關的東西(雖然也是參考別人的)
11/04 14:27, 7F

11/04 14:28, , 8F
有需要的話站內信:)
11/04 14:28, 8F

11/05 00:01, , 9F
連Socket範例:h ttp://ppt.cc/E2wCZ
11/05 00:01, 9F

11/05 00:32, , 10F
已提供給你了
11/05 00:32, 10F

11/05 10:04, , 11F
感謝各位大大幫忙 T_T
11/05 10:04, 11F

11/05 14:25, , 12F
建議你還是不要直接連
11/05 14:25, 12F

11/05 14:25, , 13F
開一個java專案 學一下hiberbate等framework
11/05 14:25, 13F

11/05 14:25, , 14F
應該會比你用android學連資料庫還快
11/05 14:25, 14F

11/05 19:49, , 15F
推hibernate是在害人嗎...光是環境要架起來就不容易了
11/05 19:49, 15F

11/05 19:50, , 16F
可以使用HttpClient或HttpURLConnection連php存取資料庫吧
11/05 19:50, 16F

11/05 19:52, , 17F
範例在這:h ttp://ppt.cc/QTJdx
11/05 19:52, 17F

11/05 19:53, , 18F
物件都寫好了,不過對應的php可能就要自己搞了
11/05 19:53, 18F

11/07 01:54, , 19F
webservice的方式我會先記錄下來,之後應該就會用到了!
11/07 01:54, 19F

11/07 01:54, , 20F
小弟不才,最後是發現...因為我直接run在UI thread下造成
11/07 01:54, 20F

11/07 01:55, , 21F
的錯誤,也算是解決了吧,謝謝各位!!!
11/07 01:55, 21F

11/08 11:57, , 22F
第一次聽到推framework是在害人的說法
11/08 11:57, 22F

11/08 11:57, , 23F
自己建連線還得控制連線數還有連線的開關
11/08 11:57, 23F

11/08 11:58, , 24F
transaction也很麻煩 framework包好好的
11/08 11:58, 24F

11/08 11:59, , 25F
雖然自己用可以學到很多基礎知識 但要快還是用framework
11/08 11:59, 25F

11/08 11:59, , 26F
網路上教學很多 不加Spring等其他的framework
11/08 11:59, 26F

11/08 12:00, , 27F
建起來應該不難
11/08 12:00, 27F

11/08 12:01, , 28F
說推framework是在害人 那hibernate的團隊存在意義是?
11/08 12:01, 28F

11/08 12:02, , 29F
DB開放外部IP連線才更可怕吧?
11/08 12:02, 29F
文章代碼(AID): #1MDw79jG (AndroidDev)