Android studio开发.<大学访客车辆预约管理系统>

Android studio与mysql-jdbc连接,实现登录界面

  1. Android studio 与mysql连接-我用的是jdbc连接.坑很多,谨慎使用.首先我们需要在工程里面导入mysql驱动,我用的是5.1.49.在Ocral官网下载就可以了.链接在下面,我也会放在文末.(https://dev.mysql.com/downloads/connector/j/).最好使用5.1.49版本.mysql8.0也可以用这个驱动.8.0以上的驱动总是有各种各样的问题.反正我是放弃了.有勇气的大佬可以去尝试.
    下载完之后解压1
    将jar文件复制到工程文件libs下路径如下
    ./myAppliation(我的工程名)/app/libs/
    在这里插入图片描述
    然后再添加依靠.复制之后将工程调整到project视图,找到app里面的libs,现在libs里面就已经能看到这个驱动了,不过这个时候还是没有完成依靠添加.
    在这里插入图片描述

右击驱动,然后点击Add AS Library

在这里插入图片描述
选择ok 就添加完成了.

这时候我们已经将驱动完全添加了.

  1. 添加如下目录包,都必须要添加.
    在这里插入图片描述
    创建一个JDBCUtils类
package com.example.myapplication.utils;


import android.util.Log;

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

public class JDBCUtils {



    static {

        try {
            Log.v("MainActivity","222");
            Class.forName("com.mysql.jdbc.Driver");//(1)
            Log.v("MainActivity","333");
        } catch (ClassNotFoundException e) {
            e.printStackTrace();

        }

    }

    public static Connection getConn() {

        String ip = "192.168.206.226";
        int port = 3306;
        String dbName = "test";
        String url = "jdbc:mysql://" + ip + ":" + port + "/" + dbName;
        String user = "1111";
        String password = "1111";
        Connection  conn = null;

        try {
            Log.v("MainActivity",url);

           conn = DriverManager.getConnection(url, user, password);//(2)
            Log.v("MainActivity","连接成功");
        }catch (Exception exception){
            exception.printStackTrace();
            Log.v("MainActivity","连接失败");
        }
        return conn;
    }

    public static void close(Connection conn){
        try {
            conn.close();
        } catch (SQLException throwables) {
            throwables.printStackTrace();
        }
    }

}


其中一些奇奇怪怪的日志输出是我调试用的,可以不用添加.
(1) Class.forName(“com.mysql.jdbc.Driver”);
Class.forName()方法要求JVM查找并加载指定的类到内存中,(JVM是java虚拟机的缩写,是Java运行环境的一部分,它是来解析和运行Java程序的.)告诉jvm去com.mysql.jdbc这个路径下找Drive.
(2)jdbc连接数据库需要使用DriverManager类的getConnection()方法,这里面有很多踩坑的地方,百分之50的坑都是因为这里,第一,ip地址,不要用localhost,如果用真机测试,要查看本机ip地址(只需要win+r然后cmd然后ipconfig得到ipv4地址就是我们要用的IP地址),如果要是用模拟机测试的话需要把IP地址改成10.0.0.1 .端口号就是自己的mysql端口号一般来说是3306.第二,user和password分别是数据库用户名和用户名密码,这里的数据库用户名要给到所有权限,除了常规权限之外.主要是远程访问mysql> grant all privileges on . to 用户名@’%’ identified by “password”;并且最好不要用root因为如果用root的话系统会认为不安全,开通权限失败,所以我们这里创建了一个全新的用户并且赋予所有的权限.密码就是用户密码啦,这个没什么所谓的啦…第三,就是时区处理的问题.这里mysql驱动5.0和8.0有很多区别,我们这里说的就是5.0版本.5.0是可以不做处理的.全部都是博主踩的血坑!!!

  1. 添加网络权限
    完成以上内容之后我们需要添加网络权限,在AndroidManifest.xml里面.
     <uses-permission android:name="android.permission.INTERNET" />
  1. 登录前端
    因为这篇文章不是主要讲前端的,所以我们就用最简单的界面.activity_main.xml
    在这里插入图片描述
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">


    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
 
  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值