2017 JAVA 교육수료
- request.setAttribute / request.getAttribute 2017.04.17
- 11DAY/ JSP기초 2017.04.17
- 메소드 오버로딩(Method Overloading) 2017.04.14
- 9DAY / 접근제어 메소드 2017.04.13
request.setAttribute / request.getAttribute
request.setParameter() 와 request.getParameter()를 이용하면 String의 값 밖에는 주고 받을 수 없다.
그럼 Action으로 넘어온 값을 변경시킨후 JSP 페이지로 넘겨주기 위해서는 request.setAttribute() 를 써서 넘겨주고 JSP 페이지에서는 request.getAttribute()를 써서 받아야한다.
이때 request.setAttribute() 를 통해 넘겨준 값을 request.getParameter() 를 써서 받으려 해도 받지 못한다.
이때 type이 Object 이기 때문에 반드시 형변환을 해줘야 한다.
* action에서 객체를 request에 담아 보낼경우.
request.setAttribute("객체명", 객체);
ex) request.setAttribute("page",page)
만약 form 의 hidden 값인 page 를 넘겨받았다면 그 값을 변경하여 다시 보낼수 있다.
이때 사용하는 것이 request.setAttribute() 이다.
request.getAttribute() 는 요청된 이름의 Value 를 Object로 넘겨준다.
getAttribute는 특정 요소노드 내에 특정 한 속성값을 가져오는 메소드이다.
setAttribute는 메소드는 속성값을 변경시키는 메소드이다.
사용방법은 객체명.setAttribute("속성노드명",새로운속성값);
Object x = request.getAttribute("객체")
11DAY/ JSP기초
jsp 문법 구조
<% %> : 자바코드 : scriptlet(스크립트릿)
<%@ %> : 하나의 jsp 설정 : Directive(디렉티브)
<%= %> : 변수에 담겨있는 값을 출력 : 표현식
<%! %> : 메서드 선언부 -> 향후에는 자바코드로 빠지면 안쓴다
<%-- --%> : 주석 ( Ctrl + Shift + / )
메소드 오버로딩(Method Overloading)
메서드 오버로딩
한 클래스 내에 이미 사용하려는 이름과 같은 이름을 가진 메서드가 있더라도
매개변수의 개수 또는 타입이 다르면 같은 이름을 사용해서 메서드를 정의할 수 있는데,
이를 메서드 오버로딩이라한다.
메서드 오버로딩을 이용하여 클래스 내에 같은 이름의 메서드를 여러 개 선언 할 수 있는 것이다.
메서드 오버로딩은 매개값을 다양하게 받아 처리할 수 있도록 하기위해 필요하다.
메서드 오버로딩의 조건
1)메서드명이 같아야한다.
2)매개변수의 개수 또는 타입이 달라야한다.
3)매개변수는 같고 리턴타입이 다른 경우는 오버로딩이 성립되지않는다.
4)오버로딩된 메서드 들은 매개변수에 의해서만 구별된다.
9DAY / 접근제어 메소드
여러 클래스에서의 메소드 호출시 접근제어자 범위
JAVA접근제한자
private : 자신의 클래스 내부에서만 접근가능(은닉화)
package : 외부패키지에서 접근 불가능
protect : 패키지가 접근할 수 있는 범위
public : 모든 접근 가능
private로 변수 선언하였을 때 클래스 간의 Setters/Getters 메서드를 선언해야한다.
마우스 우클릭 - Source - Generate Getters and Setters 를 클릭하면 쉽게 메서드선언가능