第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

for循環(huán)報錯,代碼和視頻里都是一樣的

package?com.imooc.dao;

import?com.imooc.domain.Student;
import?org.junit.Test;
import?java.util.List;

public?class?StudentDAOImplTest?{

????@Test
????public?void?testQuery()?{
????????StudentDAO?studentDAO?=?new?StudentDAOImpl();
????????List<Student>?students?=?studentDAO.query();
????????for?(Student?student?:?students){
????????????System.out.println("id:"?+?student.getId()
????????????????????????????????+?",name:"?+?student.getName()
????????????????????????????????+?",age:"?+?student.getAge());
????????}
????}
}



package?com.imooc.dao;
import?com.imooc.domain.Student;

import?java.util.List;

/*
StudengDAO訪問接口
*/
public?interface?StudentDAO?{
?????/*
????查詢所有學(xué)生
?????*/
????public?List<Student>?query();
}



package?com.imooc.dao;

import?com.imooc.domain.Student;
import?com.imooc.util.JDBCUtil;

import?java.sql.Connection;
import?java.sql.PreparedStatement;
import?java.sql.ResultSet;
import?java.util.ArrayList;
import?java.util.List;

/*
StudentDAO訪問接口實現(xiàn)類
?*/
public?class?StudentDAOImpl?implements?StudentDAO{
????@Override
????public?List<Student>?query()?{
????????List<Student>?students?=?new?ArrayList<Student>?();
????????Connection?connection?=?null;
????????PreparedStatement?preparedStatement?=?null;
????????ResultSet?resultSet?=?null;
????????String?sql="select?*?from?student";
????????try?{
????????????connection?=?JDBCUtil.getConnection();
????????????preparedStatement?=?connection.prepareStatement(sql);
????????????resultSet?=?preparedStatement.executeQuery();

????????????Student?student?=?null;
????????????while?(resultSet.next())?{
????????????????int?id?=?resultSet.getInt("id");
????????????????String?name?=?resultSet.getString("name");
????????????????int?age?=?resultSet.getInt("age");

????????????????student?=?new?Student();
????????????????student.setId(id);
????????????????student.setName(name);
????????????????student.setAge(age);

????????????????students.add(student);
????????????}
????????}?catch?(Exception?e)?{
????????????e.printStackTrace();
????????}finally?{
????????????JDBCUtil.release(resultSet,preparedStatement,connection);
????????}
????????return?null;
????}
}

java.lang.NullPointerException	at?com.imooc.dao.StudentDAOImplTest.testQuery(StudentDAOImplTest.java:14)	
at?sun.reflect.NativeMethodAccessorImpl.invoke0(Native?Method)	
at?sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)	
at?sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)	
at?java.lang.reflect.Method.invoke(Method.java:498)	
at?org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)	
at?org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)	
at?org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)	
at?org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)	
at?org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)	
at?org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)	
at?org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)	
at?org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)	
at?org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)	
at?org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)	
at?org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)	
at?org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)	
at?org.junit.runners.ParentRunner.run(ParentRunner.java:309)	
at?org.junit.runner.JUnitCore.run(JUnitCore.java:160)	
at?com.intellij.junit4.JUnit4IdeaTestRunner.startRunnerWithArgs(JUnit4IdeaTestRunner.java:68)	
at?com.intellij.rt.execution.junit.IdeaTestRunner$Repeater.startRunnerWithArgs(IdeaTestRunner.java:47)	
at?com.intellij.rt.execution.junit.JUnitStarter.prepareStreamsAndStart(JUnitStarter.java:242)	
at?com.intellij.rt.execution.junit.JUnitStarter.main(JUnitStarter.java:70)

報錯的是第一段代碼的for循環(huán),懷疑是賦值沒賦進(jìn)去,有沒有大佬幫我看一下


正在回答

4 回答

????????????????String?name?=?resultSet.getString("name");
????????????????int?age?=?resultSet.getInt("age");

????????????????student?=?new?Student();
????????????????student.setId(id);
????????????????student.setName(name);
????????????????student.setAge(age);

????????????????students.add(student);
????????????}
????????}?catch?(Exception?e)?{
????????????e.printStackTrace();
????????}finally?{
????????????JDBCUtil.release(resultSet,preparedStatement,connection);
????????}
????????return?null;
????}
}

不好意思,看錯了,你這個最后返回的是null,在foreach的時候?qū)ο鬄閚ull,所以報錯了

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

慕九州6528401 提問者

非常感謝!
2018-08-01 回復(fù) 有任何疑惑可以回復(fù)我~
public?class?StudentDAOImplTest?{}這個方法里main少了實現(xiàn)接口,


0 回復(fù) 有任何疑惑可以回復(fù)我~

https://img1.sycdn.imooc.com//5b5fffc40001312119200925.jpg

可以看一下圈紅的地方

0 回復(fù) 有任何疑惑可以回復(fù)我~
public?class?StudentDAOImplTest?{

????@Test
????public?void?testQuery()?{
????????StudentDAO?studentDAO?=?new?StudentDAOImpl();

你這段類沒有實現(xiàn)接口啊,怎么使用多態(tài)調(diào)用方法的

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消

for循環(huán)報錯,代碼和視頻里都是一樣的

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號