목록java (27)
today_is
오늘의 목표앞서 MVC패턴의 로직 분리에 대해서 배웠으니, 페이징을 적용한 게시판 목록 및 검색 기능을 구현해보자 BoardDTO idxnumberdefault board2_seq.nextvalprimary keytitlevarchar2(500)not null writervarchar2(100)not null contentvarchar2(4000)not null imagevarchar2(500) ipaddrvarchar2(100)not null viewCountnumberdefault 0 writeDatedatedefault sysdate BoardDAOpackage board2;import java.sql.Connection;import java.sql.PreparedStatement;impor..

오늘의 목표먼저 MVC패턴의 장점을 배우고, 목적에 맞게 로직을 분리해보자 JSP (model 1 의 장단점) 장점1) HTML 과 Java 코드를 함께 사용할 수 있다2) Java 코드를 편리하게 사용하기 위한 라이브러리가 있다: EL 태그 / JSTL 태그3) 개발 로직과 화면 구성을 동시에 수행할 수 있다단점1) 사이트 규모가 커지면, 파일 관리가 어려워진다2) 개발 로직과 화면 구성을 동시에 수행할 수 있다: 유지 보수가 까다로움3) HTML과 Java 코드를 분리하여 처리 및 표현을 별도로 개발하는 편이 더 좋다: MVC패턴을 사용하는 궁극적 이유 !! MVC 패턴 사용이유 1) 모델과 뷰의 분리: 무조건 사용자가 직접 DB에 접근할 수 있으면 안되기 때문모델은 데이터, 뷰는 보이는 화..
오늘의 목표회원, 게시판, 댓글 테이블을 만들어서 게시판을 만들어보자 Reply 테이블컬럼명null 여부데이터 타입참조 IDXNOT NULLNUMBER primary keyBOARD_IDXNOT NULLNUMBERboard 테이블의 idx를 참조 WRITERNOT NULLVARCHAR2(500)member 테이블의 userid 참조 CONTENTNOT NULLVARCHAR2(2000) WRITEDATE DATE ReplyDTO : 컬럼과 getter & setter 만들기 ReplyDAO: 댓글기능과 관련된 함수들package reply;import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;i..
오늘의 목표회원, 게시판 생성하여 게시판 기능을 만들어보자 Member 테이블 컬럼명null 여부데이터 타입 IDXNOT NULLNUMBERprimary keyUSERIDNOT NULLVARCHAR2(100)uniqueUSERPWNOT NULLVARCHAR2(500) USERNAMENOT NULLVARCHAR2(100) EMAILNOT NULLVARCHAR2(100) GENDER VARCHAR2(50) Board 테이블컬럼명null 여부데이터 타입참조 IDX NOT NULL NUMBER primary keyTITLE NOT NULL VARCHAR2(500) WRITER NOT NULLVARCHAR2(100)member 테이블의 userid 참조 CONTENT NOT NULLVARCHAR2(4000..
오늘의 목표회원 수정, 삭제 기능을 구현해보자 MemberDAO( 중략 ... ) // userid를 전달받아서 테이블에서 레코드를 삭제하는 함수 public int delete(String userid) { int row = 0; String sql = "delete from member where userid = ?"; try { conn = ds.getConnection(); pstmt = conn.prepareStatement(sql); pstmt.setString(1, userid); row = pstmt.executeUpdate(); } catch (SQLException e) { e.printStackTrace(); } finally { close(); } ret..
오늘의 목표회원테이블을 만들어서사용자가 사용할 수 있는 회원기능들을 구현해보자! member 테이블varchar2(300) userid;varchar2(300) userpw;varchar2(300) username;varchar2(100) gender;varchar2(500) email; DTO, DAO 생성 DTO: 필드와 getter & setter 생성 DAO: DB와 연결할 수 있도록 DAO 에 connection 객체를 생성해야함 Connection을 미리 생성하여 관리하는 DataSource 객체는 context.xml에 정의되어 있다미리 준비한 DataSource를 자바 객체로 불러오기 위해서는 Context를 객체화해서 불러와야 한다Connection 이후에는 이전 순서대로 Prep..
오늘의 목표 세션의 특성에 대해서 파악하고, 로그인후에 세션 만료시간을 적용해보자. session : 세션에 데이터를 저장 가능함이러한 특성을 이용하여 로그인 지속 기능을 부여할 수 있다 session vs cookie: 세션은 브라우저를 종료할때까지 데이터가 유지된다쿠키는 세션과 다르게, 브라우저 정리와는 별개로 생존기간동안 데이터가 사라지지 않음 GET: 주소창을 통해서 전달하기 때문에 인코딩을 별도로 설정하지 않아도 글자깨짐 현상이 없다 POST: 주소창을 통하지 않아서, 별도의 인코딩 형식을 지정해야 글자를 정상적으로 받을 수 있다 파라미터는 request객체에 담겨서 넘어오기 때문에, request의 인코딩규칙을 지정한 후 파라미터를 꺼내기 ! ex01-form.jsp fo..
오늘의 목표 상속에 대해서 배우고, 상속을 이용하면 어떤 장점이 있는지 직접 코드를 만들어서 확인해보자 java 상속시 유의할점 1) 부모클래스에서 private 필드나 메서드는 상속이 안됨2) 다중상속이 안된다 (물론 인터페이스에서는 가능!) 슈퍼 클래스 vs 서브 클래스 슈퍼클래스 : 부모클래스 서브클래스 : 자식클래스. 부모의 속성과 기능을 그대로 물려받음이미 만들어진 클래스의 재사용을 하기 위함 즉, 서브클래스는 부모클래스의 내용을 상속받아서 + 추가적인 요소를 넣어서 개념을 확장함 서브클래스 선언: extends (확장) 이라는 키워드를 이용함 -> class 자식클래스명 extends 부모클래스명 예시 코드 package inheritance;class Parent1 { ..