2013-06-10 2 views
0

안녕하세요, ibatis를 사용하여 JSP로 데이터를 표시하려고합니다. 다음 이 다음 내 contentstatisController.java 페이지ibatis를 사용하여 JSP로 데이터 표시

@RequestMapping(value="/contentStatis") 
public String contentStatis(
     HttpServletResponse response, 
     ModelMap model, 
     Condition condition, 
     @RequestParam Map<String, Object> maps) throws Exception { 

    if(!PotSessionUtils.isAdminLogin()) { 
     PotSessionUtils.goAdminMainPage(response); 
    } else { 


logger.debug("=======================================================>"); 
     logger.debug("파라메타 확인(maps) ========> " + maps); 

logger.debug("=======================================================>"); 

List<ContentStatis> result = ContentStatisRepository.statis(maps); 
Pagination<ContentStatis> resultList = PaginationUtil.getPaginationList(result,   
condition, (long)result.size(), Order.DESC); 

model.addAttribute("condition", condition); 
model.addAttribute("resultList", resultList); 

    } 
    return "admin/statisMng/contentStatis"; 
} 

입니다 것은 다음 내 ContentStatisRepository.java

package com.ebsm.pot.repository; 

import groove.spring.data.sqlmap.ibatis.SqlmapRepository; 
import groove.spring.data.sqlmap.ibatis.StatementNamespace; 
import groove.spring.data.sqlmap.ibatis.statement.Statement; 

import java.util.List; 
import java.util.Map; 

import org.springframework.transaction.annotation.Transactional; 

import com.ebsm.pot.domain.ContentStatis; 

@StatementNamespace("ContentStatis") 
@Transactional(readOnly=true) 
public interface ContentStatisRepository extends SqlmapRepository<ContentStatis,  
String> { 

@Statement(id="ContentStatis.statis") 
public List<ContentStatis> statis(Map<String, Object> maps); 
} 

것은 잘 작동 쿼리, 모든 필드가 포함 된 XML 페이지입니다.

<!DOCTYPE sqlMap 
PUBLIC "-//ibatis.apache.org//DTD SQL Map 2.0//EN" 
"http://ibatis.apache.org/dtd/sql-map-2.dtd"> 
<sqlMap namespace="ContentStatis"> 

<typeAlias alias="content"     
type="com.ebsm.pot.domain.ContentStatis"/> 

<resultMap id="ContentStatis"   class="content"> 
    <result property="day"   column="DAY"/> 


<result property="week"  column="WEEK"/> 
<result property="mnotCnt"  column="MNOT_CNT"/> 
<result property="movie500kCnt" column="MOVIE_500K_CNT"/> 
<result property="movie1mCnt" column="MOVIE_1M_CNT"/> 
<result property="movieCnt"  column="MOVIE_CNT"/> 
<result property="examCnt"   column="EXAM_CNT"/> 
<result property="webCnt"   column="WEB_CNT"/> 
<result property="imgCnt"  column="IMG_CNT"/> 
<result property="interractiveCnt" column="INTERRACTIVE_CNT"/> 
<result property="docCnt"   column="DOC_CNT"/> 
<result property="totCnt"   column="TOT_CNT"/> 


</resultMap> 
<select> query comes here </select> 
</sqlmap> 

다시 위의 내용은 JSP 페이지에 표시하려는 필드 이름이있는 XML 페이지입니다.

고마워요. 하지만 ContentStatis.java를 작성하지 않았습니다. 여기서 쿼리에 필요한 모든 속성을 선언합니다. 다음은 ContentStatis.java입니다. package com.ebsm.pot.domain;

import java.io.Serializable; 

import com.ebsm.pot.util.pagination.Sequence; 

public class ContentStatis implements Serializable, Sequence { 

private static final long serialVersionUID = -6406006154387239376L; 



private int listSeqNo; 


public int getListSeqNo() { 
    return listSeqNo; 
} 





public void setListSeqNo(int listSeqNo) { 
    this.listSeqNo = listSeqNo; 
} 










public String getWeek() { 
    return week; 
} 





public void setWeek(String week) { 
    this.week = week; 
} 





public int getMnotCnt() { 
    return mnotCnt; 
} 





public void setMnotCnt(int mnotCnt) { 
    this.mnotCnt = mnotCnt; 
} 





public int getMovie500kCnt() { 
    return movie500kCnt; 
} 





public void setMovie500kCnt(int movie500kCnt) { 
    this.movie500kCnt = movie500kCnt; 
} 





public int getMovie1mCnt() { 
    return movie1mCnt; 
} 





public void setMovie1mCnt(int movie1mCnt) { 
    this.movie1mCnt = movie1mCnt; 
} 





public int getMovieCnt() { 
    return movieCnt; 
} 





public void setMovieCnt(int movieCnt) { 
    this.movieCnt = movieCnt; 
} 





public int getExamCnt() { 
    return examCnt; 
} 





public void setExamCnt(int examCnt) { 
    this.examCnt = examCnt; 
} 





public int getWebCnt() { 
    return webCnt; 
} 





public void setWebCnt(int webCnt) { 
    this.webCnt = webCnt; 
} 





public int getImgCnt() { 
    return imgCnt; 
} 





public void setImgCnt(int imgCnt) { 
    this.imgCnt = imgCnt; 
} 





public int getInterractiveCnt() { 
    return interractiveCnt; 
} 





public void setInterractiveCnt(int interractiveCnt) { 
    this.interractiveCnt = interractiveCnt; 
} 





public int getDocCnt() { 
    return docCnt; 
} 





public void setDocCnt(int docCnt) { 
    this.docCnt = docCnt; 
} 





public int getTotCnt() { 
    return totCnt; 
} 





public void setTotCnt(int totCnt) { 
    this.totCnt = totCnt; 
} 


public String getDay() { 
    return day; 
} 





public void setDay(String day) { 
    this.day = day; 
} 




private String day; 


private String week; 


private int mnotCnt; 


private int movie500kCnt; 


private int movie1mCnt; 


private int movieCnt; 


private int examCnt; 


private int webCnt; 


private int imgCnt; 


private int interractiveCnt; 


private int docCnt; 


private int totCnt; 

다음은 JSP 페이지입니다.

<%@ page language="java" pageEncoding="UTF-8"%> 
<%@ include file="/WEB-INF/views/include/base.jsp"%> 

<form id="downfrm" name="downfrm"></form> 
<div id="contentBody"> 
    <jsp:include page="/WEB-INF/views/adminNavi.jsp" /> 

<div class="boxA_A"> 
    <div class="boxA_B"> 

     Hello 

     <c:out value="${result.week}" /> 

     <c:out value="${result.webCnt}" /> 

    </div> 
</div> 
</div> 

그러나 어떤 이유

(난 그냥 일주일에 webCnt을 표시 할 공지 사항), JSP 페이지는 텍스트를 표시 '안녕하세요'

어느 쪽도 없습니다 그것들은 JSP에 나타납니다. concole에 오류 메시지도 표시되지 않습니다.

그러나 콜론은 여전히 ​​XML 페이지에 작성한 전체 쿼리를 표시합니다.

누구나 데이터를 표시 할 수 있습니까? 나는

+0

I을 그것을 시도했다. base.jsp가 있습니다. – user2470075

+0

컨트롤러 페이지에서 List result = ContentStatisRepository.statis (maps); 나는 이것을 생각했다. 그게 옳지 않은가? – user2470075

+0

내 대답을 확인하십시오. – NINCOMPOOP

답변

0

당신은 모델을 설정하고이 같은 속성 ... 이제 3 일이에 갇혀 있었어요 :

${condition} 
${resultList} 
:

이 JSP 페이지에서
model.addAttribute("condition", condition); 
model.addAttribute("resultList", resultList); 

, 당신이 그들을 액세스 할 수 있습니다

${resultList.property} // property is a bean-style attribute of class whose object is resultList. 

이 012에 액세스하려면 :

resultList의 속성에 액세스하려면 사용해야합니다result의 :

List<ContentStatis> result = ContentStatisRepository.statis(maps); 

당신은 ModelMap에서 설정해야합니다.

model.addAttribute("result", result); 

그런 다음으로 JSP에서이를 검색 할 수 있습니다

${result} 

그것이 List<ContentStatis>이기 때문에, 당신은 그것을 통해 반복하고 각 ContentStatis 개체를 사용하여 JSTL 얻을 수 있습니다

<c:forEach var="contentStatis" items="${result}" varStatus="i"> 
    Week: ${contentStatis.week} <!-- if contentStatis has week property --> 
    <br>webCnt: ${contentStatis.webCnt} <!-- if contentStatis has webCntproperty --> 
</c:forEach> 
+0

답변 해 주셔서 감사합니다. 하지만 방금 업데이트 한 질문을 확인할 수 있습니까? 제출할 페이지를 놓쳤습니다. – user2470075

+0

방금 ​​질문을 업데이트했습니다. 당신의 도움에 정말 감사드립니다. – user2470075

+0

WHOW !!! 감사합니다 !!!!!!! 그것은 일했다 !!!! – user2470075