问题描述
packageJDBC;importjava.sql.*;publicclassDBO{publicstaticvoidregister(){try{Class.forName("com.mysql.jdbc.Driver");System.out.print("success");}catch(ClassNotFoundExceptione){e.printStackTrace();}}publicstaticConnectiongetCon(){Connectioncon=null;try{//Class.forName("com.mysql.jdbc.Driver");con=DriverManager.getConnection("jdbc:mysql://localhost:3306/system","root","root");System.out.print("success");}catch(SQLExceptione){e.printStackTrace();}returncon;}publicstaticStatementgetstatement(Connectioncon){Statementsta=null;try{if(con!=null)sta=con.createStatement();}catch(SQLExceptione){e.printStackTrace();}returnsta;}publicstaticPreparedStatementgetprepared(Connectioncon,Stringsql){PreparedStatementpre=null;try{if(con!=null)pre=con.prepareStatement(sql);}catch(SQLExceptione){e.printStackTrace();}returnpre;}/*publicstaticResultSetgetResult(Statementsta,Stringsql){ResultSetrs=null;try{if(sta!=null)rs=sta.executeQuery(sql);}catch(SQLExceptione){e.printStackTrace();}returnrs;}*/publicstaticResultSetgetResultSet(Statementstmt,Stringsql){ResultSetrs=null;try{if(stmt!=null){rs=stmt.executeQuery(sql);}}catch(SQLExceptione){e.printStackTrace();}returnrs;}@SuppressWarnings("finally")publicstaticbooleanexecuteUpdate(PreparedStatementps){intn=0;try{if(ps!=null){n=ps.executeUpdate();}}catch(SQLExceptione){e.printStackTrace();}finally{if(n!=0)returntrue;elsereturnfalse;}}publicstaticvoidclose(Connectioncon,Statementsta){try{if(sta!=null){sta.close();sta=null;}}catch(SQLExceptione){e.printStackTrace();}finally{try{if(con!=null){con.close();con=null;}}catch(SQLExceptione){e.printStackTrace();}}}publicstaticvoidclose(ResultSetrs){try{if(rs!=null){rs.close();rs=null;}}catch(SQLExceptione){e.printStackTrace();}}publicstaticvoidmain(Stringags0[]){DBO.register();DBO.getCon();}}/*****************************************************************************************************/packageModel;importjava.sql.Connection;importjava.sql.ResultSet;importjava.sql.SQLException;importjava.sql.Statement;importjava.util.ArrayList;importjava.util.List;importJDBC.DBO;publicclassEnterprise{privateStringenterId;privateStringenterName;privateStringenterPassword;privateStringaddress;privateStringenterTel;privateintisPassed;publicStringgetEnterId(){returnenterId;}publicvoidsetEnterId(StringenterId){this.enterId=enterId;}publicStringgetEnterName(){returnenterName;}publicvoidsetEnterName(StringenterName){this.enterName=enterName;}publicStringgetEnterPassword(){returnenterPassword;}publicvoidsetEnterPassword(StringenterPassword){this.enterPassword=enterPassword;}publicStringgetAddress(){returnaddress;}publicvoidsetAddress(Stringaddress){this.address=address;}publicStringgetEnterTel(){returnenterTel;}publicvoidsetEnterTel(StringenterTel){this.enterTel=enterTel;}publicintgetIsPassed(){returnisPassed;}publicvoidsetIsPassed(intisPassed){this.isPassed=isPassed;}publicstaticList<Enterprise>getUsers(){//得到所有未审核用户List<Enterprise>enters=newArrayList<Enterprise>();Connectionconn=DBO.getCon();Stringsql="select*fromenterprisewhereisPassed=0";Statementstmt=DBO.getstatement(conn);ResultSetrs=DBO.getResultSet(stmt,sql);try{while(rs.next()){Enterpriseu=newEnterprise();u.setEnterId(rs.getString(1));u.setEnterName(rs.getString(2));u.setEnterPassword(rs.getString(3));u.setAddress(rs.getString(4));u.setEnterTel(rs.getString(5));u.setIsPassed(rs.getInt(6));enters.add(u);}}catch(SQLExceptione){e.printStackTrace();}finally{DBO.close(rs);DBO.close(conn,stmt);}returnenters;}publicstaticintgetUsers(List<Enterprise>enters,intpageNo,intpageSize){inttotalRecords=-1;Connectioncon=DBO.getCon();Stringsql="select*fromenterpriselimit"+(pageNo-1)*pageSize+","+pageSize;Statementstmt=DBO.getstatement(con);ResultSetrs=DBO.getResultSet(stmt,sql);StatementstmtCount=DBO.getstatement(con);ResultSetrsCount=DBO.getResultSet(stmtCount,"selectcount(*)fromenterprise");try{rsCount.next();totalRecords=rsCount.getInt(1);while(rs.next()){Enterpriseu=newEnterprise();u.setEnterId(rs.getString(1));u.setEnterName(rs.getString(2));u.setEnterPassword(rs.getString(3));u.setAddress(rs.getString(4));u.setEnterTel(rs.getString(5));u.setIsPassed(rs.getInt(6));enters.add(u);}}catch(SQLExceptione){e.printStackTrace();}finally{DBO.close(rs);DBO.close(con,stmt);}returntotalRecords;}publicstaticvoidmain(Stringargs[]){List<Enterprise>enters=getUsers();System.out.print(enters.size());}}/*******************************************************************************/java.sql.SQLException:Nosuitabledriveratjava.sql.DriverManager.getConnection(UnknownSource)atjava.sql.DriverManager.getConnection(UnknownSource)atJDBC.DBO.getCon(DBO.java:19)atModel.Enterprise.getUsers(Enterprise.java:67)atModel.Enterprise.main(Enterprise.java:128)Exceptioninthread"main"java.lang.NullPointerExceptionatModel.Enterprise.getUsers(Enterprise.java:72)atModel.Enterprise.main(Enterprise.java:128)高手给看看怎么回事啊急死了···············第一个测试连接成功呢为什么第二个就报异常了
解决方案
解决方案二:
没有mysql的jdbc驱动吧?到mysql网站上去下载JDBC的JAR文件,放入lib目录或任意目录,在classpath中设置.
解决方案三:
回帖归回帖,不过这个帖子的问题偶不想回答。第一,结贴率0.00%。回帖的人虽然都是好心人不过总要给点动力不是,有人不喜欢会低级问题的帖子,我不介意不过总要给个安慰奖嘛,你都不结帖子回了也白回。第二,代码那么乱看着都头痛。麻烦发帖子是有个“输入源代码”功能的,咱能不能用下。
解决方案四:
没有倒包吧?
解决方案五:
//Class.forName("com.mysql.jdbc.Driver");本来这句就是注册驱动的,你都把这句代码给注释掉了。连接不同的数据库,就需要不同的驱动包;你去下载个mysql的驱动包;然后在你连接数据库的Java类头部import进来。就OK了。
解决方案六:
代码太长而且没有书写格式鬼想去看烦躁自己都不能把问题提炼出来还指望别人告诉你?
解决方案七:
//Class.forName("com.mysql.jdbc.Driver");con=DriverManager.getConnection("jdbc:mysql://localhost:3306/system","root","root");这里正确了不,要加载驱动撒。。。
解决方案八:
Nosuitabledriver意思是没合适的驱动少驱动啊//Class.forName("com.mysql.jdbc.Driver");不该注释掉的