Microsoft PowerPoint - aj-lecture4.ppt [호환 모드]

Similar documents
PowerPoint Template

Javascript

중간고사

쉽게 풀어쓴 C 프로그래밍

JAVA Bean & Session - Cookie

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

PowerPoint 프레젠테이션

다른 JSP 페이지호출 forward() 메서드 - 하나의 JSP 페이지실행이끝나고다른 JSP 페이지를호출할때사용한다. 예 ) <% RequestDispatcher dispatcher = request.getrequestdispatcher(" 실행할페이지.jsp");

PowerPoint Presentation

04장

Data Provisioning Services for mobile clients

2009년 상반기 사업계획

INDEX 들어가기 고민하기 HTML(TABLE/FORM) CSS JS

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

PHP & ASP

Data Provisioning Services for mobile clients

제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호

혼자서일을다하는 JSP. 이젠일을 Servlet 과나눠서한다. JSP와서블릿의표현적인차이 - JSP는 <html> 내에서자바를사용할수있는수단을제공한다. - 서블릿은자바내에서 <html> 을작성할수있는수단을제공한다. - JSP나서블릿으로만웹페이지를작성하면자바와다양한코드가

PowerPoint Presentation

작성자 : 김성박\(삼성 SDS 멀티캠퍼스 전임강사\)

쉽게 풀어쓴 C 프로그래밍

Javascript

웹 개발자를 위한 서블릿/JSP

SK Telecom Platform NATE

<4D F736F F F696E74202D2036C0CFC2B05FB0B4C3BCC1F6C7E2C7C1B7CEB1D7B7A1B9D62E707074>

Microsoft PowerPoint - 웹프로그래밍_ ppt [호환 모드]

PowerPoint 프레젠테이션

JSP 의내장객체 response 객체 - response 객체는 JSP 페이지의실행결과를웹프라우저로돌려줄때사용되는객체이다. - 이객체는주로켄텐츠타입이나문자셋등의데이터의부가정보 ( 헤더정보 ) 나쿠키 ( 다음에설명 ) 등을지정할수있다. - 이객체를사용해서출력의방향을다른

Spring Data JPA Many To Many 양방향 관계 예제

PowerPoint 프레젠테이션

<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

PowerPoint Presentation

Microsoft PowerPoint - 4강.pptx

목차 JEUS EJB Session Bean가이드 stateful session bean stateful sample 가이드 sample source 결과확인 http session에

PowerPoint 프레젠테이션

뇌를 자극하는 JSP & Servlet 슬라이드

<3033B0AD D4C5F584D4C5FC0CEC5CDB3DDBAB8C3E6C7D0BDC0C0DAB7E12E687770>

Microsoft PowerPoint - Java7.pptx

제11장 프로세스와 쓰레드

Microsoft PowerPoint 세션.ppt

gnu-lee-oop-kor-lec10-1-chap10

Design Issues

<4D F736F F F696E74202D20B5A5C0CCC5CDBAA3C0CCBDBA5F3130C1D6C2F75F31C2F7BDC32E >

JAVA PROGRAMMING 실습 08.다형성

Microsoft PowerPoint - GUI _DB연동.ppt [호환 모드]

PowerPoint 프레젠테이션

Data Provisioning Services for mobile clients

<C4FBC1EEB7CE20C1A4B8AEC7D5BDC3B4D95FC1A4B4E42E687770>

- JPA를사용하는경우의스프링설정파일에다음을기술한다. <bean id="entitymanagerfactory" class="org.springframework.orm.jpa.localentitymanagerfactorybean" p:persistenceunitname=

PowerPoint 프레젠테이션

chapter6.doc

JAVA PROGRAMMING 실습 02. 표준 입출력

어댑터뷰

Web Service Computing

뇌를 자극하는 JSP & Servlet 슬라이드

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

PowerPoint 프레젠테이션

PowerPoint Template

Microsoft PowerPoint - web-part03-ch20-XMLHttpRequest기본.pptx


Microsoft PowerPoint - CSharp-10-예외처리

PowerPoint 프레젠테이션

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

JavaGeneralProgramming.PDF

Microsoft PowerPoint 웹 연동 기술.pptx

Microsoft PowerPoint - 03-TCP Programming.ppt

Microsoft PowerPoint - hci2-lecture12 [호환 모드]

Microsoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx

Javascript

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

JAVA PROGRAMMING 실습 05. 객체의 활용

PowerPoint Presentation

Microsoft PowerPoint - 04-UDP Programming.ppt

5장.key

웹연동 } 웹 (Web) 환경에서데이터베이스시스템을연동하는방법은다음과같다 } Server Client 구조의통신 (2-Tier) } Server Middleware Client 구조의통신 (3-Tier) 2

쉽게 풀어쓴 C 프로그래밍

Spring Boot/JDBC JdbcTemplate/CRUD 예제

<4D F736F F F696E74202D203130C0E52EBFA1B7AF20C3B3B8AE205BC8A3C8AF20B8F0B5E55D>

Microsoft PowerPoint - ÀÚ¹Ù08Àå-2.ppt

Microsoft PowerPoint - web-part02-ch13-기본.pptx

14-Servlet

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

adfasdfasfdasfasfadf

10.ppt

- 이벤트의처리 <input type= button id= button1 value= 확인 /> <input type= button id= button2 value= 확인 /> 자바스크립트인경우 : document.getelementbyid( button1 ).oncl

Microsoft PowerPoint Python-WebDB

Microsoft PowerPoint - Chapter 6.ppt

쉽게 풀어쓴 C 프로그래밍

뇌를 자극하는 JSP & Servlet 슬라이드

교육자료

슬라이드 1

0. 들어가기 전

본 강의에 들어가기 전

오버라이딩 (Overriding)

쉽게

예제 2) Test.java class A intvar= 10; void method() class B extends A intvar= 20; 1"); void method() 2"); void method1() public class Test 3"); args) A

C# Programming Guide - Types

Microsoft PowerPoint - ÀÚ¹Ù08Àå-1.ppt

(Microsoft PowerPoint - 9\300\345.ppt [\310\243\310\257 \270\360\265\345])

Transcription:

JSP 와자바빈즈 524730-1 2019 년봄학기 4/1/2019 박경신 자바빈즈 자바로작성된소프트웨어컴포넌트 Sun Microsystems 에서 " 자바빈즈는빌더형식의개발도구에서가시적으로조작이가능하고또한재사용이가능한소프트웨어컴포넌트이다. 로정의 대부분자바통합개발환경 (IDE) 에서사용 자바빈즈는많은유사성이있으나엔터프라이즈자바빈즈 (EJB) 와혼동하지말아야함 JSP 빈즈 JSP와의연동을위해만들어진자바컴포넌트 Bean 액션을통해 JSP에서손쉽게연동 데이터베이스연동이나뷰데이터교환에사용됨 엔터프라이즈자바빈즈 (EJB) J2EE(Java2 Enterprise Edition) 에서의컴포넌트모델 ( 서버측컴포넌트 ) 분산환경을고려함 J2EE 자체는스펙으로여러회사에서제품을구현함 기업형애플리케이션개발에서비즈니스로직및데이터처리를담당함 JSP 빈즈 자바클래스 멤버변수와 getter, setter 메서드로구성됨 특정기능을수행하는별도의메서드를가질수있음. JSP 모델 2에서는뷰컴포넌트로만활용이권장됨 ( 비즈니스로직 X)

JSP 빈즈 빈즈클래스작성규칙 자바클래스는 java.io.serializable 인터페이스를구현 기본생성자가있어야함 모든멤버변수는 private 접근지정자로설정 모든멤버변수에대한 getter/setter( ) 메소드가존재해야함 getter( ) 메소드는멤버변수에저장된값을가져올수있는메소드 setter( ) 메소드는멤버변수에값을저장할수있는메소드 JSP 빈즈 빈즈클래스구성예 class PersonBean implements java.io.serializable { // 멤버변수, HTML form 이름, DB 테이블의컬럼명과일치 private String name; private int age; public PersonBean() { // 기본생성자 public PersonBean(String name, int age) {.. // 생성자 // get, set 메서드, 멤버변수와일치 public String getname() { return name; public void setname(string name) { this.name = name; public int getage() { return age; public void setage(int age) { this.age = age; 빈즈클래스 멤버변수 클래스외부에서의접근을막기위해 private 로선언 멤버변수이름, HTML form 이름, DB테이블컬럼명과일치 getter 메서드 멤버변수의값을반환 멤버변수명의첫글자를대문자로해야함 (Bean 액션과연동 ). <jsp:getproperty name= person property= name /> 내부적으로 getname() 메서드를호출 setter 메서드 멤버변수의값을설정 멤버변수명의첫글자를대문자로해야함. <jsp:setproperty name= person property= name value= Park /> 내부적으로 setname(request.getparameter( name )) 과함께호출 usebean 액션 JSP 빈즈사용 usebean 액션태그 <jsp:usebean id= person scope= request class= dto.personbean /> usebean 액션자바코드변환시 PersonBean person = (PersonBean)request.getAttribute( person ); if(person == null) { person = new PersonBean(); request.setattribute( person, person);

usebean 액션 JSP 에서빈즈값설정 setproperty 액션형식 속성값으로빈즈클래스의 setxxx (Xxx 는속성이름 ) 메서드와대응할속성값. * 를지정하면모든 setxxx 에자동으로대응. <jsp:setproperty name= person property= name value= Park /> <jsp:setproperty name= person property= age value= 10 /> <jsp:setproperty name= person property= * /> setproperty 액션을스크립트릿으로대체 <% person.setname(request.getparameter( name )); person.setage(request.getparameter( age )); %> usebean 액션 JSP 에서빈즈값가져오기 getproperty 액션형식 속성값으로빈즈클래스의 setxxx (Xxx 는속성이름 ) 메서드와대응할속성값. * 를지정하면모든 setxxx 에자동으로대응. <% 이름 : <jsp:getproperty name= person property= name /> 나이 : <jsp:getproperty name= person property= age /> %> getproperty 액션을표현식으로대체 이름 : <%= person.getname( ) %> 나이 : <%= person.getage( ) %> HTML Form 처리 폼 (form) 사용자가웹브라우저를통해입력된모든데이터를한번에웹서버로전송하는양식 전송한데이터는웹서버가처리하고처리결과에따라다른웹페이지를보여줌 사용자와웹애플리케이션이상호작용하는중요한기술중하나임 사용자가어떤내용을원하는지, 사용자의요구사항이무엇인지파악할때가장많이사용하는웹애플리케이션의필수적인요소임 HTML Form 태그 폼 (form) 을구성하는태그종류 태그 설명 form 폼을정의하는태그로최상위태그 input 사용자가입력할수있는태그 select 항목을선택할수있는태그 textarea 여러줄을입력할수있는태그

HTML Form 태그 form 태그 사용자가다양한정보를입력하고서로전달할때사용하는태그 단독으로쓰이지않고사용자가다양한정보를입력하는양식을포함하는최상위태그 속성을이용하여폼데이터를전송할때어디로보낼지, 어떤방식으로보낼지설정 HTML Form 태그 form 태그의속성 form 태그의모든속성은필수가아니라선택적으로사용 <form action= /nameaction.jsp method= post > <input type= text name= name value= K > 속성 action 설명폼데이터를받아처리하는웹페이지의 URL 설정 <form attribute1= value1 [attribute2= value2 ]> // 다양한입력양식태그 <input>, <select>, <textarea> method name target enctype accept-charset 폼데이터가전송되는 HTTP 방식설정폼을식별하기위한이름설정폼처리결과의응답을실행할프레임설정폼을전송하는콘텐츠 MIME 유형설정폼전송에사용할문자인코딩설정 HTML Form 의 Input 태그 Form의 input 태그 사용자가텍스트입력이나선택등을다양하게할수있도록공간을만드는태그 종료태그없이단독으로사용할수있음 input 태그의기본속성 type은 text, button 등다양한입력 name은입력양식을식별하는이름설정 value는입력양식의초기값설정 <input type= text name= firstname value= K > HTML Form 의 Input 태그종류 Form의 input type 종류 <input type="button"> 버튼선택입력 <input type="checkbox"> 체크박스버튼선택입력 <input type="color"> <input type="date"> <input type="datetime-local"> <input type="email"> <input type="file"> 파일전송입력 <input type="hidden"> 보이지않게숨겨서값을전송 <input type="image"> <input type="month"> <input type="number">

HTML Form 의 Input 태그종류 Form 의 input type 종류 <input type="password"> 암호입력 <input type="radio"> 라디오버튼선택입력 <input type="range"> <input type="reset"> 폼에입력된값을모두초기화 <input type="search"> <input type="submit"> 폼에입력된값을모두서버에전송 <input type="tel"> <input type="text"> 한줄텍스트입력 <input type="time"> <input type="url"> <input type="week"> HTML Form 의 Select 태그 Form 의 select 태그 여러개의항목이나타나는목록상자에서항목을선택하는태그 시작태그와종료태그가있으며, 리스트박스에여러항목을추가삽입하기위해반드시 option 태그를포함해야함. <select name= itemselect > <option value= item1 > item1 </option> <option value= item2 > item2 </option> <option value= item3 > item3 </option> <option value= item4 > item4 </option> </select> HTML Form 의 Select 태그 select 태그의속성 name은입력양식을식별하는이름설정 size는한번에표시할항목의개수를설정 multiple은다중선택이가능하도록함. CTRL-key를눌러목록상자의항목을다중선택함 option 태그의속성 value는항목의값을설정 selected는해당항목을초기값으로선택 disabled는항목을비활성화 optgroup 태그의속성 Select 태그내에있는 option 태그들을그룹화하는데사용 HTML Form 의 Textarea 태그 Form의 textarea 태그 여러줄의텍스트를입력할수있는태그 기본값은 <textarea> 와 </textarea> 태그사이에설정 입력폼안에사용된태그와띄어쓰기가그대로출력됨 <textarea name= 이름 cols= 너비 rows= 높이 > // 생략 </textarea> 속성 속성값 설명 name 텍스트 텍스트영역의이름설정 cols 숫자 입력할텍스트영역의너비 ( 열크기 ) 설정 rows 숫자 입력할텍스트영역의높이 ( 행크기 ) 설정 wrap off 줄바꿈안함 soft 엔터키를누르지않아도끝에서자동으로행이바뀜 hard soft와비슷하며서버에전송할때캐리지리턴문자를전달

HTML Form & Input 태그 HTML Form & Input 태그 <form action= process.jsp name= member method= post > <p> 아이디 : <input type= text name= id > <input type= button value= 아이디중복검사 > <p> 비밀번호 : <input type= password name= passwd > <p> 이름 : <input type= text name= name > <p> 연락처 : <input type= text maxlength= 4 name= phone1 > - <input type= text maxlength= 4 name= phone2 > - <input type= text maxlength= 4 name= phone3 > <p> 성별 : <input type= radio name= gender value= MEN checked> 남성 <input type= radio name= gender value= WOMEN > 여성 <p> 취미 : 독서 <input type= checkbox name= hobby value= 독서 checked> 운동 <input type= checkbox name= hobby value= 운동 > 영화 <input type= checkbox name= hobby value= 영화 > <p><input type= submit value= 가입하기 > <input type= reset value= 다시쓰기 > <form action= process.jsp name= member method= post > // 중간생략.. <p> 이름 : <input type= text name= name > <p> 연락처 : <select name= phone1 > <option value= 010 >010</option> <option value= 011 >011</option> <option value= 016 >016</option> </select> - <input type= text maxlength= 4 name= phone2 > - <input type= text maxlength= 4 name= phone3 > <p> 성별 : <input type= radio name= gender value= MEN checked> 남성 <input type= radio name= gender value= WOMEN > 여성 // 중간생략.. <p><input type= submit value= 가입하기 > <input type= reset value= 다시쓰기 > HTML Form & Input 태그 <form action= process.jsp name= member method= post > // 중간생략.. <p> 성별 : <input type= radio name= gender value= MEN checked> 남성 <input type= radio name= gender value= WOMEN > 여성 <p> 취미 : 독서 <input type= checkbox name= hobby value= 독서 checked> 운동 <input type= checkbox name= hobby value= 운동 > 영화 <input type= checkbox name= hobby value= 영화 > <p><textarea name= comment cols= 30 rows= 3 placeholder= 가입인사를입력해주세요 ></textarea> <p><input type= submit value= 가입하기 > <input type= reset value= 다시쓰기 > 요청파라미터의값받기 request 내장객체는웹브라우저가서버로보낸요청에대한다양한정보를담고있어 getparameter() 메소드를이용하여요청파라미터의값을얻을수있음 String 변수 = request.getparameter( 요청파라미터이름 );

요청파라미터의전체값받기 요청파라미터를설정하지않아도모든값을전달받을수있음. 또한텍스트박스, 라디오버튼, 드롭다운박스와같은다양한유형에대해한번에폼데이터를전달받을수있음. 폼데이터의일괄처리메소드 메소드 getparameternames() hasmoreelements() nextelement() 설명 모든입력양식의요청파라미터이름을순서에상관없이 Enumeration 형태로전달받음 Enumeration 요소가있으면 true를반환하고그렇지않으면 false를반환 Enumeration 요소를반환 <% request.setcharacterencoding("utf-8"); <p> 아이디 : <%= request.getparameter("id") %> <p> 비밀번호 : <%= request.getparameter("passwd") %> <p> 이름 : <%= request.getparameter("name") %> <p> 연락처 : <%= request.getparameter("phone1") %> - <%= request.getparameter("phone2") %> - <%= request.getparameter("phone3") %> <p> 성별 : <%= request.getparameter("gender") %> <p> 취미 : <% request.setcharacterencoding("utf-8"); String[] hobby = request.getparametervalues("hobby"); if (hobby!= null) { for (int i = 0; i < hobby.length; i++) { out.println(" " + hobby[i]); %> <p> 가입인사 : <%= request.getparameter("comment") %> <table border="1"> <tr> <th> 요청파라미터이름 </th> <th> 요청파라미터값 </th> </tr> <% request.setcharacterencoding("utf-8"); Enumeration<String> paramnames = request.getparameternames(); while (paramnames.hasmoreelements()) { String paramname = (String) paramnames.nextelement(); out.print("<tr><td>" + paramname + " </td>\n"); String paramvalue = request.getparameter(paramname); out.println("<td> " + paramvalue + "</td></tr>\n"); %> </table>