在调用以下函数时,控件将转到 try 块内的第一行,即 Class.forName 然后捕获块
Posted
技术标签:
【中文标题】在调用以下函数时,控件将转到 try 块内的第一行,即 Class.forName 然后捕获块【英文标题】:While calling the below function control is going to the first line inside try block i.e to Class.forName then to catch block 【发布时间】:2015-06-06 06:14:01 【问题描述】: package com.java.bean;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Dao
// static Connection con = null;
static ResultSet rs = null;
static String url ="jdbc:mysql://localhost:3306/first";
static String user = "root";
static String passsword = "password";
public static Ex1 login(Ex1 ex)
try
//System.out.println("iam in first line");
Class.forName("com.mysql.jdbc.driver");
Connection con = DriverManager.getConnection(url,user,passsword);
String userName = ex.getUserName();
String password = ex.getPassword();
Statement st = con.createStatement();
rs = st.executeQuery("Select * from employee where username = " +userName +"and password =" +password );
boolean more = rs.next();
if(!more)
System.out.println("you are not a registered user!");
ex.setValid(false);
else if(more)
System.out.println("welcome MR.HImanshu you are Great");
ex.setValid(true);
catch(Exception tex)
System.out.println("hey there is an exception " +ex);
return ex;
【问题讨论】:
你有没有将mysql驱动库添加到你构建的路径中? 是的,我已经将它添加到构建路径中 实际上我试图通过编写其中一个类来检查 class.forname 是否工作正常,在该类中我编写了一个主函数并注册了驱动程序并编写了选择查询并获得了检索结果集 runtime error: java.lang.ClassNotFoundException: com.mysql.jdbc.Driver的可能重复 我用小 d 写过,现在改成 D 了,还是不行 【参考方案1】:是
Class.forName("com.mysql.jdbc.Driver");
不是
Class.forName("com.mysql.jdbc.driver");
带有大写“D”的“驱动程序”。
【讨论】:
以上是关于在调用以下函数时,控件将转到 try 块内的第一行,即 Class.forName 然后捕获块的主要内容,如果未能解决你的问题,请参考以下文章