##ROWID를 사용하여 중복된 데이터를 제거 할 수 있다. #첫번째. DELETE FROM 테이블명 WHERE ROWID IN ( SELECT ROWID FROM ( SELECT * FROM ( SELECT ROW_NUMBER() OVER(PARTITION BY 컬럼명 ORDER BY 컬럼명) AS num FROM 테이블명 ) WHERE num > 1 (-> num의 값이 1초과인 데이터들만 삭제) ) ); #두번째. (중복된 데이터들 중에서 나중에 등록된 데이터 제거) DELETE FROM 테이블명 별칭a WHERE ROWID > (SELECT MIN(ROWID) FROM 테이블명 별청b WHERE b.컬럼명 = a.컬럼명); #세번째. (중복된 데이터들 중에서 나중에 등록된 데이터를 살리고 나머지를..
현재 Ajax, json을 사용하고 있다. Ajax를 이용하여 데이터를 추출 한 후, 화면에 데이터를 출력해줄때 화면에서 한글 데이터들이 물음표(?)로 출력이 된다. 해당 문제점을 해결하기 위해서는 1) RequestMapping 어노테이션의 produces 라는 속성값을 이용하면 된다. 예시 2가지 - GET방식 / POST방식) -> @RequestMapping(value = "URL", method = "RequestMethod.POST", produces = "text/json; charset=UTF-8") -> @RequestMapping(value = "URL", method = "RequestMethod.GET", produces = "text/json; charset=UTF-8") 2) 스..
list.jsp 수정했다. 일부러 jstl을 사용하지 않았다. 차근차근 하나하나 바꿔나가면서 jstl의 편리함을 보여줄 예정이다. HTML도 TABLE을 사용하였고 DIV로 바꿔나갈 예정이다. CSS부분도 TABLE태그 안에 인라인 방식으로 작성했다. CSS부분만 따로 분리하여 바꿔나갈 예정. 디자인 감각은 엄청나게 없으므로 지금은 그냥 게시글 목록들을 정상적으로 출력해주는구나 정도로만 봐주길 바란다. allPage)toPageBlock = allPage; //게시글 목록 갖고오기 ArrayList sjBoardDto = sjBoardDao.boardList(curPage, start, end, strFs, strSs); %> 번호 제목 작성자 작성일 조회수 //작성일에 대해서는 Date클래스를 이용하여..
하는 일 때문에 수정이 좀 늦었다. 수정된 내용들은 아래와 같다. 1. 지난번 버전의 SQL문을 사용시 ORA-00936: missing expression 에러 발생. - 띄어쓰기를 제대로 안하고 괄호를 닫아주지 않아서 발생하였다... 눈이 침침했나보다...핳핳헿ㅎ헤 2. 동적쿼리 수정 - 지난번 버전에는 동적쿼리 함수인 dynamicSql()이 존재했고, boardList()함수에는 SQL문이 두개나 존재했었다. 동적쿼리의 의미와 존재이유에 알맞지 않았기 때문에 수정했다. (하나의 SQL문장과 동적쿼리 담당 함수 하나로 해결) 사용자가 검색조건 및 검색어 입력의 여부를 판단하여 그때에 알맞은 게시글 목록들을 갖고 올 수 있도록 수정했다. 간단하게 말해서 fs변수(검색조건)가 null이면(덩달아 ss변..
package sjb.board.dao; import java.util.Date; public class SJBoardDTO { /////////////////////////게시글관련///////////////////////// private int no; //게시물번호 private String name; //작성자 private String email; //이메일 private String subject; //제목 private String content; //내용 private String pwd; //비밀번호 private Date regdate; //작성일 private int readnum; //조회수 /////////////////////////출력용///////////////////////..