beans 활용
작성자 정보
- 웹관리자 작성
- 작성일
컨텐츠 정보
- 6,113 조회
- 0 추천
- 목록
본문


2001-02-03 kenu
| ||||||
점점 생각은 많고 강좌를 올릴 시간은 없네요. 죄송합니다. 오늘은 bean 에 대해서 조금 깊게 들어가보겠습니다. 주민등록번호 13자리를 가지고 가져올 수 있는 정보가 있습니다. 일단 생일을 알 수 있죠. scriptlet은 쉽거든요. bean으로 하자고 하면 괜히 어렵게 느껴집니다. java에 아직 익숙지 않은 탓이죠. 하지만 태산이 높다하되 하늘 아래 뫼이로다 ... 라는 시조 다 아시죠. 일단 시작해 봅시다. | ||||||
입력받는 부분입니다. bean.htm 입니다. 위치는 c:/jsphome/bean.htm 입니다.
정말 어려운 것 없습니다. maxlength는 입력 글자의 최대치를 정해주는 것입니다. 이런 설명은 앞으로 뺄께요. 주의해서 보실 것은 form 태그의 action 속성입니다. 보내기 버튼이 눌려지면 name 과 jumin1, jumin2 라는 3개의 값이 bean.jsp 로 전달됩니다.
| ||||||
다음은 처리해주는 부분입니다. 한 가지 앞서서 이름부터 해결해 보겠습니다.
화면에 에러가 날 것입니다. JuminNumber.class 의 위치가 어디인지 찾지를 못해서 그렇죠. JuminNumber.class 를 빈이라고 말하는데요. 이번엔 이것을 만들어봐야죠. 이것은 순수 자바 코드입니다.
값을 빈으로 불러들이는 것은 setName(String str), setJuminNumber1(String str), setJuminNumber2 (String str). 이렇게 3 개의 메소드입니다. 빈에서 밖으로 값을 내보내는(return) 것은 getName() 하나입니다. 아직 코드를 다 적지 않았습니다. bean을 불러서 bean에서 빼낼 수 있는 것은 계속 추가해서 만들 수 있습니다. 일단 이 코드를 컴파일합니다. 도스 상태에서 javac JuminNumber.java 라고 해 주면 됩니다. 오타가 없다면 특별히 에러가 나지 않을 것입니다. 아! 또 한가지 경우는 필요한 클래스가 classpath 에 잡혀있지 않으면 에러가 납니다. javac 이 아예 실행이 안 되는 경우는 path 에 c:jdk1.3in 디렉토리가 잡혀있지 않아서 그렇습니다. 이 때는 win98의 경우 autoexec.bat 를 수정해서 재부팅하시거나, win2000의 경우 내 컴퓨터 등록정보의 등록정보에서 환경변수 값을 수정한 뒤에 도스창을 다시 띄워서 작업하면 됩니다. | ||||||
컴파일이 다 끝났다면 생성된 JuminNumber.class 파일을 C:/jsphome/WEB-INF/classes/ 에 옮겨 놓습니다. 그리고, 이왕이면 JuminNumber.java 파일도 함께 옮기는 것이 좋습니다. 이제 브라우저에 http://localhost/bean.htm 을 입력하고, 폼에 정보를 입력하면 빈을 사용해서 이름을 받아오는 것을 보실 수 있습니다. 이제 주민번호까지 화면에 출력시키도록 하겠습니다. JuminNumber.java 파일에 주민번호 출력부분을 추가합니다. 에잇! 남,여 구분까지 집어넣겠습니다.
흐흐, ~ 코드를 실행해 보니까 jumin번호가 제대로 안 나오네엽. 문제는 간단한 것이지만 심각한 것이었습니다. bean.htm 에서 bean.jsp 로 값을 넘길 때 <input> 태그의 name 이 중요합니다. setProperty 로 들어갈 때 모두 한꺼번에 값을 빈으로 전달하기 위해 * 를 썼습니다. bean에서 값을 입력받는 부분이 setXXX 부분입니다. 여기서 XXX는 bean.htm의 name과 맞아야 들어갑니다. 상통하는 것는 name과 setName 밖에 없고 나머지 두개는 jumin1과 jumin2 값을 setJuminNumber1과 setJuminNumber2 로 받으려고 했는데, 이것이 오류입니다. 에러는 안 나지만 제대로 된 값이 나오지 않는 아주 고질적인 숨어있는 오류입니다. bean.htm의 jumin1과 jumin2를 juminNumber1과 juminNumber2 로 바꿔줍니다. 페이지를 reload 한 뒤에 실행합니다. <input> 태그의 name 값을 이렇게 수정해주었습니다. 대소문자 주의하세요.
아, bean.jsp는 다음과 같습니다.
다 되었나요? 한글문제가 아마도 걸릴 것입니다. 그것은 다음 페이지에서 해결하겠습니다.
| ||||||
참고 : |
관련자료
-
이전
-
다음