

상품 리스트를 만드는데 db에 데이터가 1~ 5까지 담겨있는데 리스트에 자꾸 2~5만 출력되어서 당황했다!
consol에 찍힌 log
01-01 doGet() GControllersec GControllersec.java 02 doPro() GControllersec GControllersec.java /OraMVCMG35SEC/Gli/g_list.ksmart_g<-- RequestURI GControllersec.java /OraMVCMG35SEC<-- contextPath GControllersec.java 14<-- contextPath.length() GControllersec.java /Gli/g_list.ksmart_g<-- command GControllersec.java ----------GControllersec.java---------------- 10-03 /Gli/g_list.ksmart_g if 조건문 통과 04_02 execute GListProAction.java javax.naming.InitialContext@51a7dfaf<-- init BoardDAO() 02 gAllSelect Gdaosec.java jdbc:oracle:thin:@localhost:1521:XE, UserName=DEV35ID, Oracle JDBC driver<-- conn oracle.jdbc.driver.T4CPreparedStatement@55984143<-- pstmt org.apache.tomcat.dbcp.dbcp.DelegatingResultSet@109ad594<-- rs true 쿼리실행결과활용 [Goods [g_code=goods_2, ora_id=id002, g_name=2, g_cate=2, g_price=2, g_color=2, g_size=2, g_date=20/05/08, g_desc=2]]<-alg 쿼리실행결과활용 [Goods [g_code=goods_2, ora_id=id002, g_name=2, g_cate=2, g_price=2, g_color=2, g_size=2, g_date=20/05/08, g_desc=2], Goods [g_code=goods_3, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3]]<-alg 쿼리실행결과활용 [Goods [g_code=goods_2, ora_id=id002, g_name=2, g_cate=2, g_price=2, g_color=2, g_size=2, g_date=20/05/08, g_desc=2], Goods [g_code=goods_3, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3], Goods [g_code=goods_4, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3]]<-alg 쿼리실행결과활용 [Goods [g_code=goods_2, ora_id=id002, g_name=2, g_cate=2, g_price=2, g_color=2, g_size=2, g_date=20/05/08, g_desc=2], Goods [g_code=goods_3, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3], Goods [g_code=goods_4, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3], Goods [g_code=goods_5, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3]]<-alg false<-isRedirect MActionForwardsec.java /glist/g_list.jsp<-path MActionForwardsec.java 11-02 forward 조건문 통과 /glist/g_list.jsp<--forward.getPath() [Goods [g_code=goods_2, ora_id=id002, g_name=2, g_cate=2, g_price=2, g_color=2, g_size=2, g_date=20/05/08, g_desc=2], Goods [g_code=goods_3, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3], Goods [g_code=goods_4, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3], Goods [g_code=goods_5, ora_id=id003, g_name=3, g_cate=3, g_price=3, g_color=3, g_size=3, g_date=20/05/08, g_desc=3]]<- get_alg
Gdao.java
//02 리스트 출력 메서드 선언
public ArrayList<Goods> gAllSelect() throws SQLException {
System.out.println("02 gAllSelect Gdaosec.java" );
//db연결
conn = ds.getConnection();
System.out.println(conn + "<-- conn");
//쿼리준비
pstmt = conn.prepareStatement("select * from oracle_goods");
System.out.println(pstmt + "<-- pstmt");
//쿼리실행
rs = pstmt.executeQuery();
System.out.println(rs + "<-- rs");
System.out.println(rs.next());
//쿼리실행결과활용
alg = new ArrayList<Goods>();
while(rs.next()) {
System.out.println("쿼리실행결과활용");
g = new Goods();
g.setG_code(rs.getString("G_CODE"));
g.setOra_id(rs.getString("ORA_ID"));
g.setG_name(rs.getString("G_NAME"));
g.setG_cate(rs.getString("G_CATE"));
g.setG_price(rs.getString("G_PRICE"));
g.setG_color(rs.getString("G_COLOR"));
g.setG_size(rs.getString("G_SIZE"));
g.setG_date(rs.getString("G_DATE"));
g.setG_desc(rs.getString("G_DESC"));
alg.add(g);
System.out.println(alg+"<-alg");
}
//db연결종료
rs.close();
pstmt.close();
conn.close();
return alg;
}
rs.next()를 콘솔에 출력해서 첫번째 줄이 리스트에 안나오는 거였음... 찾아내고 완전 웃겨서 뒤집어졌음
'JSP' 카테고리의 다른 글
[Servlet] Servlet (0) | 2020.05.13 |
---|---|
MVC Pattern / Servlet (0) | 2020.05.13 |
java servlet life cycle (0) | 2020.05.08 |
MVC model2 (2) | 2020.05.07 |