在實際項目中,一般很少直接訪問MySQL數據庫,一般情況下會通過http請求將數據傳送到服務端,然后在服務端連接mysql數據庫。
在android 中,會通過使用Jdbc 連接MySQL 服務器
public class MySqlHelp { public static boolean InsertSql(String Bc,String lr,String rr,String TestDate) { com.yy.eye.lib.DB.MySqlSetting mySqlSetting=mDBUtil.queryFirstOrDefault(); String url_1="jdbc:mysql://127.0.0.1:3306/dbName"; String UserName_1="abc"; String pass_1="abc"; try { Class.forName("com.mysql.jdbc.Driver"); java.sql.Connection cn= DriverManager.getConnection(url_1,UserName_1,pass_1); String sql = "INSERT INTO checkresult(bc,lf,ft,td,)Values("+Bc+","+lr+","+rr+","+TestDate")" ;
Statement st=(Statement)cn.createStatement(); result=st.execute(sql); result=true; cn.close(); st.close(); } catch (ClassNotFoundException e) { result=false; // e.printStackTrace(); } catch (SQLException e) { //e.printStackTrace(); result=false; } return result; }
}
需要注意的是使用jdbc需要賦予項目權限
在AndroidManifest.xml 中,添加
<uses-permission android:name="android.permission.INTERNET"/>
在調用Mysql時,需要使用線程
new Thread(new Runnable() { @Override public void run() { flag1= MySqlHelp.InsertSql(bc,lR,rR,dt); Message msg = Message.obtain(); msg.what = 0; Handler.sendMessage(msg); } }).start();
線程執行后,可以使用handle作信息處理
private Handler Handler = new Handler() { public void handleMessage(android.os.Message msg) { if (msg.what == 0 ) { Toast.makeText(ViewTest.this, "提交成功", Toast.LENGTH_SHORT).show(); InitEye(); } } };
在build.gradle 的dependencies中添加
compile files('libs/mysql-connector-java-5.0.8-bin.jar')
程序包需要手動下載