meta 태그 (메타태그)
- meta태그는 웹사이트의 안내자이다.
대부분의 포털사이트는 웹 사이트의 제목, 태그의 내용, 본문의 첫 100여 단어등을 검색한 후 사용자의 검색어와 비교해서 검색 결과를 나열해준다.
자바빈 프로젝트 1 : 회원가입페이지만들기
자바빈 프로젝트 2 : 로그인 및 로그아웃페이지만들기
자바빈 프로젝트 3 : 회원정보조회 및 수정페이지만들기
1 | //자바빈 -> 회원정보를 저장해서 이동시키기 위한 객체 |
1 | <fieldset> |
1 | <% |
1 | public class MemberDAO { |
예외처리라고도 부른다.
개발자가 예측하기 어려운 에러들을 예외라고 한다.
이러한 예외를 java 컴파일러가 객체로 만들어서 처리해준다.
우리는 try catch를 만들기만 하면 컴파일러가 알아서 한다.
실무에서 가장 많이 사용하는 방식은 아래 방식이다
ClassNotFoundException과 SQLException은 여러 Exception종류 중에 임의로 작성한 것이고 제외한 나머지 코드들은 통으로 함께 쓰이는 코드이다.
생각할 수 있는 구체적인 Exception을 찾아서 작성한 뒤 그 외에 발생할 수있는 예외를 대비해 catch(Exception e)로 추가 예외처리를 해준다.
catch(Exception e)로 한번에 다 예외처리가 가능한데 왜 따로따로(ClassNotFoundException와 SQLException등등) 먼저 예외처리를 할까?
예외마다 처리방법이 각기 다르다.
따라서 각각 예외처리를 해주고 혹시 모를 또다른 예외를 위해 catch(Exception e)구문으로 예외처리를 해주는 것이다.
1 | try{ |
정리하자면
1 | //1번규칙만족 : 클래스는 public |
파라미터값으로 가져오는 방법과 위의 자바빈사용방법 두가지 총 3가지를 비교해보자.
공통적으로 사용할 페이지는 form.jsp페이지이다
먼저 form페이지이다.
사용자가 id와 pw, 좋아하는 숫자를 입력할 수 있는 페이지 코드이다.
1 | <fieldset> |
1 | <% |
데이터를 한번에 들고 다니기 위해 Javabean.java
객체를 만들어야 자바빈 객체와 자바빈 액션태그를 사용할 수 있다.
자바페이지는 자바빈설계규약에 맞게 작성해야한다.
1 | //1번규칙만족 : 클래스는 public |
자바빈 객체를 사용하여 Form페이지에서 입력받은 값을 화면에 출력하는 코드이다.
1 | //1. javabean타입의 객체생성 -> import생성 |
액션태그방식은 html문법이며 공통으로 사용되는 메뉴들을(주로 페이지) 특정 공간에 추가한다.
해당 페이지가 java파일(서블릿)으로 컴파일 된 후에 include한다. 따라서 컴파일을 두번하게된다.
액션태그방식은 jsp가 java파일이 되고 거기에 include를 하고 class파일이 된다.
jsp:useBean태그의 속성중 하나인 scope를 이용하면 더욱 효과적이다.
id =객체참조변수 class=사용할 클래스파일 경로(객체의 경로)
1 | <jsp:useBean id=객체참조변수 class=사용할 클래스파일 경로(객체의 경로) /> |
3가지 속성이 있다.
1 | jsp:setProperty property=변수명 name=객체생성 id와 동일한 값 param=파라미터값 |
1 | <jsp:useBean id="bean" class="com.itwillbs.bean.Javabean1"/> |
1 | <jsp:getProperty property="set했던변수와 동일한 변수명" name="객체생성 id와 동일한 값"/><br> |
1 | //1. 액션태그만드는 객체 |
캐스팅은 OOP(객체지향프로그래밍) 에서 매우 중요하다.
왜냐하면 캐스팅은 OOP의 다형성과 관련이 있기 때문이다.
java에서 기본형이 아닌 참조형데이터일때, 그리고 상속관계에 있을 때에 한정해서 슈퍼클래스 타입으로 서브클래스 객체를 레퍼런스할 수 있는 성질.
이는 두가지 방법이 있다.
조건문으로 한줄이면 끝난다!
if(rs.getString("id").equals("admin")) continue;
짜잔!
1 | //4. sql구문 & pstmt |
위의 코드에서 if구문을 없애고 sql구문만 변경해주면 된다.
1 | String sql = "select * from itwill_member where id not in('admin')"; |
사용자가 로그인한 뒤 자신의 정보를 수정할 수 있는 마이페이지를 만들어보자.
회원정보를 수정할 수 있는 전제는 로그인이다.
로그인이 되어있지않다면 로그인페이지로 이동시켜야한다.
로그인이 되어있는 사용자는 사용자정보를 DB에서 불러와서 화면에 각 요소를 출력한다 -> 원하는 정보를 수정한 뒤 다시 DB에 업데이트해야한다.
로그인한 사용자에 한하여 DB에 저장되어있는 해당 회원정보를 FORM형식으로 나타내주는 updateForm.jsp
페이지를 만들어보자.
다음은 회원정보수정폼 작성 순서이다.
DB에 저장된 회원정보를 사용해야함으로 드라이브로드 & DB를 연결해야한다.
데이터타입 | 초기화값 |
---|---|
int | 0 |
String | “”(공백) |
배열 | 0 |
참조형(Timestamp등) | null |
updatePro.jsp
에서 진행1 | <%//1. 로그인여부체크 (로그인x->로그인페이지로이동) |
아래는 회원정보폼에 수정을 하면 update구문을 실행하는 updatePro.jsp
코드이다.
변수에 전달된 정보를 저장(아이디,비번,이름,나이,성별,이멜)한다
수정하고자하는 id정보가 DB에 있는지 select구문으로 판단
1 | <%//1.로그인여부체크 ->로그인페이지이동 |