Android studio 3.01中的安卓程序以类的方式访问MySQL数据库
2017-12-31 12:13
561 查看
在JDBC4MYSQL-master这个项目中调试通了Android与MySQL的连接后,我考虑如果今后把这个作为一个函数能够随时调用 * 数据库的操作才是符合java精神的,因此参照http://blog.csdn.net/itluochen/article/details/52181589把它转换 * 成类的形式,在项目JDBCToMySql(也就是本项目)中,建了一个类文件MySqlUtil.java,在这里照着前辈的帖子写了三个方法 * :连接数据库、查询打印数据库、修改数据库。写完之后,在MainActivity中如果想调用该方法,先要设置三个参数URL、USER、 * PASSWORD。以后想连接其他数据库就修改这三个参数就行了,然后在oncreate方法中新开一个线程,进行数据库操作和打印了。 * 注意,在MySqlUtil类中的query方法的“id”和“name”是已知了mytable表中内容而写的,如果想修改其他数据库,就要把它俩改 * 成你需要的名字。 * 这样以后在需要访问MySQL的应用,就把MySqlUtil类拷贝过来,修改query里的两个参数,然后在主函数中调用
MySqlUtil.java中的内容如下,前提是要导入mysql-connector-java-*.*-bin.jar进入libs
import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement;public class MySqlUtil{//openConnection是连接数据库public static Connection openConnection(String url, String user,String password) {Connection conn = null;try {final String DRIVER_NAME = "com.mysql.jdbc.Driver";Class.forName(DRIVER_NAME);conn = DriverManager.getConnection(url, user, password);} catch (ClassNotFoundException e) {conn = null;} catch (SQLException e) {conn = null;}return conn;}//查询数据库public static void query(Connection conn, String sql) {if (conn == null) {return;}Statement statement = null;ResultSet result = null;try {statement = conn.createStatement();result = statement.executeQuery(sql);if (result != null && result.first()) {int idColumnIndex = result.findColumn("id");int nameColumnIndex = result.findColumn("name");while (!result.isAfterLast()) {System.out.println("------------------");System.out.print("id " + result.getString(idColumnIndex) + "\t");System.out.println("name " + result.getString(nameColumnIndex));result.next();}}} catch (SQLException e) {e.printStackTrace();} finally {try {if (result != null) {result.close();result = null;}if (statement != null) {statement.close();statement = null;}} catch (SQLException sqle) {}}}//执行MySQL语句的函数public static boolean execSQL(Connection conn, String sql) {boolean execResult = false;if (conn == null) {return execResult;}Statement statement = null;try {statement = conn.createStatement();if (statement != null) {execResult = statement.execute(sql);}} catch (SQLException e) {execResult = false;}return execResult;}}
MainActivity中的内容如下:
public class MainActivity extends AppCompatActivity {private static final String URL = "jdbc:mysql://192.168.1.106:3306/mark";private static final String USER = "root";private static final String PASSWORD = "root";@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);/*** 这是已经调试成功的Android studio连接MySQL的程序一定要保护好,加入其他程序从下面开始复制调试* 参考的帖子是我博客上的那篇,前面还有别人的一篇,做到第10步*访问MySQL数据库要用新线程,不能用主线程*/new Thread(new Runnable() {@Overridepublic void run() {Connection conn = MySqlUtil.openConnection(URL, USER, PASSWORD);System.out.println("All users info:");MySqlUtil.execSQL(conn, "insert into mytable values(56,'小李')");MySqlUtil.execSQL(conn, "update mytable set name='mark' where id=1");MySqlUtil.execSQL(conn, "delete from mytable where id=6");MySqlUtil.query(conn, "select * from mytable");}}).start();}}
相关文章推荐
- php中访问mysql数据库的两种方式mysql和pdo
- 快速在安卓程序中集成sharesdk,包括eclipse和android studio
- 关于matlab程序打包成的EXE文件或者jar包中访问MySQL数据库的问题
- C程序访问mysql数据库
- Android studio 通过以servlet搭建的服务器访问 PC端 mysql数据库(一)
- 请问一下asp.net程序中,数据库访问用什么方式比较好
- 新域名访问方式从http改为https(为了支持微信小程序https用)
- 右键TXT文件-打开方式-选择默认程序提示 windows无法访问指定设备,路经或文件.您可能没有合适的权限访问这个项目
- 安卓中进行基于HTTP协议的网络访问的两种方式
- 如何在Java程序中访问mysql数据库中的数据并进行简单的操作
- PHP PDO方式访问Mysql数据库实例
- 通过MySQL C API界面(mysql自己提供的API方式访问mysql数据库)
- C#访问ACCESS数据库被其他程序独占方式打开无法访问
- PhP访问mysql数据库的基本方式
- 1、打印二进制机器码,程序内存分析,大端序小端序,指针数组,数组指针,数组的三种访问方式,typedef,#if-0-#endif,求数组大小,括号表达式
- Java访问MySQL数据库的SqlHelper类以及测试程序
- Hbase访问 配置信息直接写在程序中的访问方式
- 打印不同的数(编写一个程序,使用指针访问数组方式,读入十个数,输出其中不同的数,即一个数如果出现多次,只打印一次)
- 【IO】程序访问文件的几种方式
- Android studio 通过以servlet搭建的服务器访问 PC端 mysql数据库(二)