annotation(애노테이션)과 generic(제네릭)에 대해 정리해봤다.
annotation(애노테이션)과 generic(제네릭)에 대해 정리해봤다.
기본 로직 :
추가할 로직 :
위와 같은 두 개의 로직은 요구사항분석이라고도 부른다
writeForm.jsp
작성writePro.jsp
작성BoardBean.java
생성BoardDAO.java
에서 getCon() DB연결메서드 구현BoardDAO.java
에서 insertBoard() 글쓰기메서드 구현테이블생성 테이블명 itwill_board을 생성한 뒤 아래처럼 컬럼을 작성한다.
bno
)writeForm.jsp
작성1 | <fieldset> |
writePro.jsp
작성글쓰기를 처리하는 페이지이다.
입력창에서 받은 데이터를 DB로 이동시킨 뒤 사용자는 글목록페이지로 이동
jsp:setProperty 의 동작방식
전달정보 확인위한 출력
로그인한사람만 글쓸수있게 처리
1 | <%//1. 한글처리 |
BoardBean.java
생성1 | //1번규칙만족 : 클래스는 public |
BoardDAO.java
에서 getCon() DB연결메서드 구현드라이브로드, DB연결 메서드인 getCon()구현
getCon() 작성순서 : 리턴값없이 진행
예외처리 throws 방법 : 메서드를 호출하는 시점에 예외처리를 함
1 | public class BoardDAO { |
BoardDAO.java
에서 insertBoard() 글쓰기 메서드 구현insertBoard()메서드 구현
1 | //글쓰기 메서드 구현 |
자바 예외처리(try catch, throws)
try catch는 예외를 직접 처리하기 때문에 메서드를 호출해도 더 이상 예외처리를 할 필요가 없습니다.
하지만 throws같은 경우는 호출하는 쪽에다가 예외처리를 맡겨버리는(?) 느낌?
그래서 호출하는 메소드에 throws가 있으면
호출하는 쪽에서도 예외처리를 다시 해줘야되요!
1 | enum Season{ |
enum타입들은 java.lang.Enum 클래스를 기본적으로 상속받고 있기 때문에 java.lang.Enum 클래스에 선언된 메서드들을 사용가능하다.
메서드명 | 선언부 | 설명 |
---|---|---|
name() | public final String name() | enum상수의 이름을 문자열로 리턴한다 |
ordinal() | public final int ordinal() | 0부터 시작하는 enum 상수의 순서를 리턴한다 |
comparedTo() | public final int com[aredTo(E o) | enum상수의 ordinal 차이를 리턴한다 |
values() | public static T[] values() | enum타입에 선언된 enum상수를 배열로 리턴한다 |
valueOf() | public static T<extends Enum<T>> T valueOf(Class<T> enumType, String name) | 문자열로 매핑된 enum상수 객체를 리턴한다 |
enum을 사용하여 계절별로 다른 출력값을 나타내는 코드를 작성해보자.
1 | enum Season{ |
1 | Stack st = new Stack(); |
출력값을 보면 데이터가 빠져나가는 순서가 LIFO이다.
1 | Queue que = new LinkedList(); //업캐스팅(LinkedList클래스->Queue인터페이스) |
출력값을 보면 빠져나가는 순서가 FIFO이다.
1 | Map m = new Hashtable(); //업캐스팅 |