当前位置: 首页 > 知识库问答 >
问题:

试图从java访问MySQL,但不起作用

呼延子安
2023-03-14

我写这个类是为了帮助从我的android项目的MySQL数据库中获取数据,但每次我运行应用程序时,它都会崩溃,有人能告诉我我的代码出了什么问题吗?我对此是新的,所以任何帮助都将非常感谢。

以下是错误消息所说的内容。

04-15 18:46:58.058 158 37-15837/com.example.tomb3.data e/androidruntime:致命异常:main process:com.example.tomb3.data,pid:15837 java.lang.noClassDefFounderRorr:解析失败:ljUnit/runner/version;在com.example.tomb3.data.mysql.getData(Mysql.java:37)在com.example.tomb3.data.mainActivity.oncreate(mainActivity.java:14)在Android.app.activity.performCreate(activity.java:6237)在Android.app.instrumentation.CallActivityonCreate(activity.java:1107)在Android.app.activityThread.performLaunchActivity(activity.java:1107),在java)在Android.app.activityThread$h.handleMessage(activityThread.java:1344)在Android.os.handler.dispatchMessage(handler.java:102)在Android.os.handler.dispatchMessage(handler.java:148)在Android.os.looper.loop(looper.java:148)在Android.app.activityThread.main(activityThread.java:5417)在)由:java.lang.ClassNotFoundException引起:在路径上没有找到类“junit.runner.version”:dexpathlist[[zip文件“/data/app/com.example.tomb3.data-1/base.apk”],nativelibraryDirectories=[/data/app/com.example.tomb3.data-1/lib/x86,/vendor/lib,/system/lib]]在dalvik.system.basedexClassLoader.findclass(basedexClassLoader.java:56)在java.lang.classLoader.loadClass(classLoader.java:511)在在com.example.tomb3.data.mainactivity.oncreate(mainactivity.java:14) 在Android.app.activity.performCreate(activity.java:6237) 在Android.app.instrumentation.callActivityonCreate(instrumentation.java:1107) 在Android.app.activitythread.performLaunchActivity(activitythread.java:2369) 在Android.app.activitythread.HandleLaunchActivity(activitythread.java:2476) 在Android.app.activitythread.-Wrap11(activitythread.java) 在Android.app.activitythread$h.handleMessage(activitythread.java:1344) 在Android.os.handler.DispatchMessage(Handler.java:102) 在Android.os.looper.loop(looper.java:148) 在Android.app.activitythread.main(activitythread.java:5417) 在java.lang.reflect.Method.invoke(本机方法) 在com.android.internal.os.zygoteinit$methodandargscaller.run(zygoteinit.java:726) 在com.android.internal.os.zygoteinit.main(zygoteinit.java:616) 禁止:java.lang.ClassNotFoundException:Junit.runner.version在java.lang.bootClassLoader.FindClass(本机方法)在java.lang.bootClassLoader.FindClass(ClassLoader.java:781)在java.lang.bootClassLoader.LoadClass(ClassLoader.java:841)在java.lang.ClassLoader.LoadClass(ClassLoader.java:504)...15多个原因是:没有可用的堆栈跟踪

public class mySql {
    String url;
    String user;
    String password;


    public mySql(String url, String user, String password){
        this.url=url;
        this.user=user;
        this.password=password;
    }
    public String getData(String table){
        Connection con = null;
        Statement st = null;
        ResultSet rs = null;
        String output="";
        try {
            con = DriverManager.getConnection(url, user, password);
            st = con.createStatement();
            rs = st.executeQuery(table);
            if (rs.next()) {
                output += " " + (rs.getString(1));
            }

        } catch (SQLException ex) {
            Logger lgr = Logger.getLogger(Version.class.getName());
            lgr.log(Level.SEVERE, ex.getMessage(), ex);
        } finally {
            try {
                if (rs != null) {
                    rs.close();
                }
                if (st != null) {
                    st.close();
                }
                if (con != null) {
                    con.close();
                }

            } catch (SQLException ex) {
                Logger lgr = Logger.getLogger(Version.class.getName());
                lgr.log(Level.WARNING, ex.getMessage(), ex);
            }
        }
        return output;
    }
}

共有1个答案

夏景同
2023-03-14

仅供参考

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

public class Main {
  public static void main(String[] argv) throws Exception {
    String driver = "com.mysql.jdbc.Driver";

    Class.forName(driver);
    Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/dbname", "user", "password");

    Statement st = con.createStatement();
    int val = st.executeUpdate("INSERT employee VALUES(" + 13 + "," + "'Aman'" + ")");
    System.out.println("1 row affected");

  }
}
 类似资料:
  • 注意:下面是对类似帖子/问题的编辑/修订,试图更好地识别我的问题/问题,并提供更好的代码示例来演示我的问题。 添加注意:代码示例已修改为包括工作代码。 我在同一个spring reactive应用程序中的两台路由器中有两个endpoint。第一个(/v2/demopojo)似乎可以正常工作。第二个(/v2/democlient/demopojo),使用WebClient委托给/v2/demopoj

  • 问题内容: (在我开始之前,我应该说是的,我已经做了所有的愚蠢检查,是的,该链接在我的历史记录中并且已经被访问过,等等) 我正在使用Chrome版本6.0.472.63,尽管在所有浏览器上都可以正常工作很重要。 它适用于Firefox,IE和Opera。 基本上,我想做的就是更改链接的背景图片(如果已访问该链接)。 我已经进行了大量的试验和错误测试,所以请多举几个例子。 这就是我原来的 .foru

  • 我只是在Windows中安装jdk和jre版本8。环境变量已设置。我尝试在cmd中运行“java-version”,它显示了安装的java版本。但是当我尝试用“javac projectname”编译java项目时,系统说javac不能被识别为内部命令或外部命令。有谁能告诉我怎么修好它吗? 下面是我的环境变量: C:\users\foody>echo%路径%C:\ProgramData\Oracl

  • 从后端获取图片转blob为什么失败?用unit8array转换显示大小为0 但是后端图片资源是获取成功的 可以正常预览 这可能是什么原因?前端是vue3 后端是springboot3.2.2 java版本是21 后端返回代码如下: 前端请求代码如下: 前端网络返回资源如下: 前端打印的信息: 网页和地址栏预览图片不显示: 纠缠了ai几个小时,搜索了与我类似的情况,尝试不使用accept,或者把re

  • 问题内容: 我是Hive,MapReduce和Hadoop的新手。我正在使用Putty连接到配置单元表并访问表中的记录。因此,我要做的是- 打开Putty并输入主机名-然后单击。然后我输入了用户名和密码,然后输入了一些命令来访问Hive sql。以下是我的工作清单 所以我的问题是 还有其他方法可以在任何Sql客户端(例如Sql Developer或Squirel SQL Client)中执行相同的

  • 我正在尝试导入一个新的字体来实现它到我的p元素的css中。但是我导入的字体由于某种原因无法显示。这是我的代码: null null 你知道是什么导致了这个问题吗?