@ 답변게시판

답변 게시판은 전에 남겼던 글과 글사이에 껴들어가야 되는

문제가 발생한다.

물리적으로는 최근 작성한 답글이 맨 밑으로 들어가지만

조회할때 어떤 조건에 의해 정렬이 답글이 밑에 있는것처럼

만들어 줘야 한다.


1. 원글과 그에 해당하는 답글을 같은 그룹으로 묶을수 있는

    team이라는 컬럼도 필요하다. 보통 원글의 고유값을 따라간다.


2. 그러기 위해 레코드 정렬기준을 위한 컬럼이 하나 필요하다

   보통 step이라고 명칭하는 컬럼이 필요하다. 원하는 위치에 가져다

   놓을 수 있는..... 원글은 0 답글은 1


3. 원글보다 답글은 들여쓰기가 되어야 되고 답변이 깊어질수록

    들여쓰기도 되어야 한다. 그러한 값을 저장할 depth라는 컬럼도 필요
 
    원글은 0 답글은 1

select * from reboard
order by team desc,step asc

-- 최근 원글이 위여야 하기 때문에 team은 desc로 한다

테이블 예제

create table reboard(
idx number primary key
,writer varchar(20)
,title varchar(20)
,regdate date default sysdate
,hit number default 0
,ip varchar(15) -- 작성자의 ip
,detail clob
,team number -- 같은 그룹으로 묶어서 보여질 기준컬럼
,step number default 0 -- 같은 그룹내에서의 순위정렬 기준 컬럼
,depth number default 0 -- 답변의 깊이를 알 수 있는 컬럼
)

게시판 공식

-블럭당 시작 페이지
firstPage=currentPage-((currentPage-1)%blockSize)
-블럭당 마지막 페이지
lastPage=firstPage+blockSize-1
-페이지당 시작 index(List 계열의 컬렉션의 인덱스)
curPos=(currentPage-1)*recordSize
-페이지당 시작 번호
num=totalRecord-curPos

@
insert into reboard(idx,writer,title,ip,detail,team values(seq_reboard.nextval,?,?,?,?,seq_reboard.nextval);

오라클의 하나의 쿼리문내에서 nextval은 한번만 수행된다.

@ 민선생님 블로그에서 퍼온 JSP내장 객체


내장 객체 명

객체 타입

설 명

 request

 javax.servlet.ServletRequest

 javax.servelt.http.HttpServletRequest

 클라이언트의 요청 정보를 가진 객체
 response  

 javax.servlet.ServletResponse

 javax.servlet.http.HttpServletResponse

 클라이언트에 보낼 응답 정보를 가진 객체
 pageContext  javax.servlet.jsp.PageContext

 컨텍스트 정보를 가진 객체

 session  javax.servlet.HttpSession  클라이언트의 세션 정보를 가진 객체
 application  javax.servlet.ServletContext

 해당 어플리케이션 정보 및 공유 정보를

 가진 객체

 out  javax.servlet.jsp.JspWriter  응답을 전송하기 위한 출력 스트림
 config  javax.servlet.ServletConfig

 해당 페이지에 대한 서블릿 초기 파라미터

 정보를 가진  객체

 page

 java.lang.Object

 javax.servelt.jsp.HttpJspPage

 해당 페이지 서블릿 인스턴스

 

 exception

 

 java.lang.Throwable  해당 페이지 서블릿에 대한 예외 객체

[출처] JSP의 내장 객체|작성자 zino1187


Posted by Taoist
,