posted by changhozz 2012. 8. 14. 23:11


비교 항목 

실행 코드 

스크립트 

코드 형태 

컴파일 된 실행 프로그램 

컴파일 되지 않은 스크립트 코드 

실행 방식 

컴파일 된 기계어코드 직접 실행 

스크립트 코드를 해석한 뒤 실행 

코드 변경 

소스 코드를 다시 컴파일 해야함 

 스크립트 코드만 고치면 됨

종류 

C기반 CGI 프로그램 

JSP,ASP,PHP,Ruby등 

실행 코드 방식의 경우 실행 순서
웹 브라우저 요청 전송 -> 웹 서버 요청 받음 -> 프로그램 실행

스크립트 방식의 경우 실행 순서
웹 브라우저 요청 전송 -> 웹 서버 요청 받음 -> 스크립트 코드 번역 -> 번역된 코드 실행


JSP(Java Server Page)는 스크립트 언어이며 다음과 같은 특징을 갖고있음.

-html,xml 등 클라이언트가 요청한 문서를 생성하는데 주로 사용된다.
-http와 같은 프로토콜에 따라 클라이언트의 요청을 처리하고 응답한다.
-표현 언어, 표현식, 스크립트릿 등 다양한 스크립트 요소와 액션 태그 등을 제공함으로써
보다 쉽게 웹 어플리케이션을 프로그래밍함.

'JSP > JSP 정리' 카테고리의 다른 글

웹 어플리케이션  (0) 2012.08.16
Chpater 1. 웹 프로그래밍 기초.  (0) 2012.08.16
웹 서버란  (0) 2012.08.16
JSP란 무엇인가.  (0) 2012.08.16
서블릿(Servlet)  (0) 2012.08.14
posted by changhozz 2012. 8. 14. 21:07

서블릿 ㅡ>

자바언어를 개발한 Sun Microsystems에서 웹 개발을 위해 만든 표준이 서블릿(Servlet)이다. 서블릿 규약에 따라 만든 클래스를 서블릿이라고 부른다.
서블릿을 만들기 위해서는 자바 코드를 작성하고, 코드를 컴파일 해서 클래스 파일을 만들게 된다. 즉,  서블릿은 *실행 코드 방식에 속한다.
따라서 서블릿을 이용하여 웹 어플리케이션을 개발할 경우 화면에 출력되는 데이터를 조금만 바꾸고 싶어도 코드를 수정하고 컴파일하고 클래스를 알맞은 곳에 복사해 주는 작업을 반복해 주어야 했다.
이런 반복 작업은 개발 효율성을 떨어뜨리는 요인이 되었다.

이후, Sun은 서블릿의 단점을 보완하기 위해 스크립트 방식의 표준인 JSP를 만들었다. JSP는 코드를 수정하면 바로 변경 내역이 반영되었기 때문에 2000년 JSP 1.1과 2001년 JSP 1.2가 출시되면서, 웹 어플리케이션을 개발하는 데 사용되는 주요 기술로 자리 잡기 시작했다.


JSP 표준은 서블릿 표준을 기반으로 만들어졌다. 내부적으로 JSP파일이 번역되면 최종 결과물로 서블릿이 만들어 진다. 따라서 이 두 표준은 쌍으로 발전하고 있다. 예를 들어, 서블릿 2.3버전과 JSP 1.2버전이 한 쌍이고,
서블릿 2.4버전과 JSP 2.0버전이 한 쌍이다. 그리고 내가 배우는 책에서 설명하는 JSP2.1버전은 서블릿 2.5버전과 쌍을 이루고 있다.



JSP표준이 서블릿 표준에 의존하고 있기 때문에, JSP의 동작 방식을 완벽하게 이해하기 위해서는 서블릿에 대한 이해가 필요하다.
 하지만, 서블릿을 모르더라도 JSP를 이용해서 어느 수준까지 웹 어플리케이션 을 개발할 수 있다. 
 


-------------------------------------------------------------------

또 다른 설명,


1. 서블릿이란 ?

자바를 이용해서 웹상에 실행되는 프로그램을 작성하는 기술
서블릿은 컴파일 과정이 플요하고 특정 클래스를 상속 받아야만 구현이 가능한 구조.
JSP : 텍스트 파일 구조
서블릿 : 자바 클래스 구조이다

2. JSP란

서블릿이 가진 HTML 표현상의 문제를 해결하기 위함이다.
서블릿은 프로그램 내에서 HTML 을 처리하기 때문에 간단한 태그를 변경할
때조차 재 컴파일 해야하는 문제가 있다. 이러한 이유로 웹 디자이너는
화면을 마음대로 바꿀수 없었고 이러한 문제점을 해결하기 위해 비지니스 로직과
콘텐츠를 분리하기 위한 노력이 있었고 JSP의 탄생이다.

3. 웹 개발시 서블릿을 사용하면 좋은점

1)콘텐츠와 비지니스 로직을 분리할 수 있다.
2)컨트롤러와 뷰의 역할 분담으로 인해 웹 디자이너와 개발자 간의 원할한 작업이 가능하다.
3)유지보수가 수월하다.
4)기능 확장이 용이하다.

----------------------------------------------------------------

또 다른 설명,

▣ 서블릿(Servlet)

서블릿(Servlet)이란 "Server" + "Let"의 합성어로써, 말 그대로 서버에서 실행되는 프로그램을 의미한다.

즉,'Server에 application을 허용(Let) 한다.'라는 의미.

클라이언트의 요청에 따라 서버에서 서블릿을 실행하고 그 결과를 클라이언트에게 전송하는 방식으로 동작된다.

□ 서블릿(Servlet)
◇ Server + Let
◇ 서버에서 실행되는 프로그램

▣ 서블릿의 구성

서블릿은 웹에서 사용 가능한 자바 프로그램을 구현하기 위한 방법으로써,
자바 기반의 확장 CGI 애플리케이션을 구현하기 위해 사용된다.

□ 서블릿의 구성
◇ 웹에서 사용 가능한 자바 프로그램을 구현하기 위한 프로그래밍 방법
◇ 자바 기반의 확장 CGI 애플리케이션을 구현하기 위한 언어

▣ 서블릿을 실행하기 위한 필요조건

서블릿은 자바 기반이기 때문에 당연히 JDK(Java Development Kit)가 설치되어 있어야 한다.
또한 서블릿을 이용해서 서비스를 제공하기 위해 서블릿이 실행될 수 있는

서블릿 컨테이너(Servlet Container)가 필요하다.

□ 서블릿을 실행하기 위한 필요조건
◇ JDK
◇ 서블릿 컨테이너

대표적인 서블릿 컨테이너로는 Tomcat, Resin, Web Sphere 등이 있다.

-----------------------------------------------------------------------------------


JSP란?(Java Server Page)
동적으로 웹페이지를 생성하기 위한 자바기반의 서버측 기술이다. 즉 , jsp사양은 HTML과 XML 템플릿들 그리고
안전하며 빠른 서버 플랫폼에 독립적인 자바코드를 이용하여 동적으로 클라이언트에게 제공 되어질 페이지를
생성하기 위한 프레임웍을 제공하고 있다.

JSP[제이 에스 피]서블릿의 사용을 통해 웹페이지의 내용이나 모양을 제어하는 기술이다. 자바의 개발자인 썬마이크로시스템즈에서는 JSP 기술이 서블릿 API라고 말하고 있다. JSP는 마이크로소프트의 ASP 기술에 필적한다. JSP가 웹서버에 의해 실행될 자바프로그램을 호출하는데 반하여, ASP는 페이지가 사용자에게 보내지기 전에 스크립트 인터프리터(VBScript 또는 JScript와 같은)에 의해 해석될 스크립트를 포함시킨다.

자바 서블릿으로 가는 링크를 포함한 HTML 페이지는 파일이름 확장자에 .JSP가 붙는다.



Java에서 서블릿이란?
서블릿은 기존의 CGI(Common Gateway Interface) 형태의 동작 프로그램을 대체할 수 있는 자바 프로그램이다. 즉
서블릿은 자바를 이용한 CGI프로그램이라고 할 수 있다. 그러나 서블릿은 기존의 CGI와는 달리 효율적인 면에서
매우 뛰어나다. 기존의 CGI 프로그램(C, C++, Perl 등)은 클라이언트 요청이 있을때 마다 하나의 프로세스(process)
를 생성해서 CGI 프로그램을 수행한다. 이러한 방법은 클라이언트의 요청이 많을 경우 서버에 많은 부하를 주게 되며
성능이 저하된다. 그러나, 서블릿은 클라이언트 요청에 프로세스를 생성하는 것이 아니라 쓰레드를 생성한다.
쓰레드는 프로세스 생성에 비해 서버에 부하를 주지 않아 CGI에 비해 성능면에서 뛰어나다.

서블릿은 서버에서 실행되는 작은 프로그램이다. 이 용어는 웹 페이지와 함께 별도의 파일로 보내지는 작은 프로그램인 자바 애플릿의 맥락에서 만들어진 신조어이다. 자바 애플릿들은 사용자를 위해 간단한 계산업무를 수행하거나 사용자의 반응에 기반하여 이미지를 위치시키는 등과 같은 서비스를 위해 대개 클라이언트에서 실행되도록 만들어진다.

그러나, 사용자의 입력에 따라 데이터베이스와 연계되는 프로그램들은 서버에서 실행될 필요가 있다. 보통, 이러한 것들은 CGI를 이용하여 구현된다. 그러나, 서버에서 실행되는 자바 가상머신을 이용하면, 그러한 프로그램들을 자바 언어로 구현할 수 있다. 서버에 있는 자바 서블릿의 장점은 CGI 응용프로그램보다 더 빠르게 실행될 수 있다는 것이다. 서블릿은 각 사용자의 요청마다 별도의 프로세스가 생기는 대신, 단 하나의 데몬 프로세스 내에서 스레드로 호출되는데, 이는 각 요구에 따른 시스템 오버헤드가 적다는 것을 의미한다.

CGI 응용프로그램의 이름을 지칭하는 URL 대신, 호출되고 있는 자바 서블릿의 결과인 웹 페이지 내의 요청이 URL을 호출하게 되는데, 그 형태는 다음과 같다.

http://www.terms.co.kr:8080/servlet/gotoUrl?http://www.someplace.co.kr

URL 내의 "8080"이라는 포트 번호는 이 요청이 웹 서버 그 자체로 직접 가는 것임을 의미한다.


몇몇 추가적인 모듈들은 자바 서블릿들이 넷스케이프 Enterprise나, 마이크로소프트의 IIS 및 아파치 서버에서 실행될 수 있도록 해준다.


-----------------------------------------------------------
CGI (Common gateWay, interface)  란,

CGI는
웹서버에 있어 사용자의 요구를 응용프로그램에 전달하고 그 결과를 사용자에게 되돌려주기 위한 표준적인 방법이다. 사용자가 하이퍼링크클릭 하거나 웹사이트의 주소를 입력함으로써 웹 페이지를 요청하면, 서버는 요청된 페이지를 보내준다. 그러나, 사용자가 웹페이지의 양식에 내용을 기재하여 보냈을 때, 그것은 보통 응용프로그램에 의해 처리될 필요가 있다. 웹 서버는 으레 그 양식 정보를 조그만 응용프로그램에 전달하는데, 이 프로그램은 데이터를 처리하고 필요에 따라 확인 메시지를 보내주기도 한다. 이렇게 서버와 응용 프로그램간에 데이터를 주고받기 위한 방법이나 규약들을 CGI라고 부른다. 이것은 웹의 HTTP 프로토콜의 일부이다.
 -------------------------------------------------------------------

CGI는 Common Gateway Interface의 약자로 특정한 프로그램 언어를 뜻하는 것이 아니라 웹 서버와 프로그램을 연결 시켜주는 protocol(규약, 약속)을 의미한다. 

CGI는 웹 서버의 일부분으로 서버측에서 수행되는 다른 응용프로그램과 통신할 수 있는 기능을 제공한다.

예를 들어 홈페이지의 게시판을 만들 경우 데이터베이스와 접속이 필요하다.(사용자가 기입한 내용을 FORM으로 전달)


CGI는 C, Java등의 언어로 사용하여 작성하게 되는데 자바 CGI의 성능을 개선한 방법을 sevlet이라고 한다.


서블릿은 자바를 이용해서 작성한 CGI 프로그램이지만, 일반 CGI 프로그램과는 다른 특성들을 가지고 있다

일반 CGI는 특성상 클라이언트의 요청이 있을 때마다 프로세스를 생성하여 CGI를 수행한다.

그러한 프로세스 생성은 클라이언트의 요청이 많아질 경우 과부하를 불러오기 때문에 비효율적이다.

이러한 단점을 보완한 것이 서블릿이다. 서블릿은 클라이언트의 요청이 생길 경우 프로세스를 생성하는 것이 아니라 thread를 생성한다. 또한 각 서블릿은 한 번 메모리에 로드되고 계속적으로 사용된다.

서블릿을 실행시키는 자바 가상 머신은 항상 실행되고 있는 상태이고, 사용자가 많은 사이트의 경우 효과적이다.

'JSP > JSP 정리' 카테고리의 다른 글

웹 어플리케이션  (0) 2012.08.16
Chpater 1. 웹 프로그래밍 기초.  (0) 2012.08.16
웹 서버란  (0) 2012.08.16
JSP란 무엇인가.  (0) 2012.08.16
스크립트 방식 & 실행 코드 방식  (0) 2012.08.14
posted by changhozz 2012. 8. 13. 19:03

var ultra =document.getElementById(ultram);

ultram이라는 ID를 갖은element를 불러와서 ultra라는 객체에 저장하겠단뜻. 

'자바스크립트' 카테고리의 다른 글

[HTML] name과 id의 차이점.  (0) 2012.08.27
중요한것들 정리.(1)  (0) 2012.08.17
자바스크립트 정리 <7>  (0) 2012.08.13
자바스크립트 <6>  (0) 2012.08.13
자바스크립트. <4>  (0) 2012.08.10
posted by changhozz 2012. 8. 13. 14:52

타이머 설정과 해체를 위한 setTimeout/clearTimeout 메서드.

setTimeout는 일정한 시간이 지난 후에 "호출함수"를 한번만 실행하는 메소드다.
setTimeout 메서드는 두개의 매개변수를 가진다.

타이버ID = setTimeout("호출함수","지연시간");

첫 번째 매개변수는 지정한 시간이 지난 후 한 번만 실행되는 호출함수이고 두 번째 매개변수는
얼마만에 호출함수를 실행할지를 결정하는 시간 간격이다. 이 간격은 1/1000초 단위로 지정되어 있다.
setTimeout메소드의 결과값은 타이머ID이다. 타이머 ID는 한 프로그램에서 여러 개의 타이머를 설정하였을 경우
이를 구분하기 위해 사용된다.

clearTimeout(타이머ID);

clearTimer() 메서드는 setTimeout()로 설정된 내용을 정지하도록 하는 메서드이다.
clearTimer() 메서드의 매개변수는 setTimeout 메서드의 리턴값인 타이머ID이다.
타이머 ID에 해당되는 타이머 설정을 해제한다.

-----------------------------------------------------------------------------------------------------

타이머 설정과 해제를 위한 setInterval / clearInterval 메서드

setInterval() 메서드는 setTimeout() 메서드와 마찬가지로 일정 시간 간격 후에 명령을 수행한다.
차이점이 있다면 setTimeout() 메서드는 "호출함수"를 한번 실행하는 반면 setInterval()메서드는
주어진 시간 간격동안 "호출함수"를 무한정으로 반복 실행한다. 일정한 간격동안 지속적으로
작업이 일어나기 원할 경우 setInterval 함수를 사용한다. 자바스크립트에서 플래쉬와 같은
애니메이션 효과를 보기 위해서 사용되는 가장 기본이 되는 메서드가 바로
setInterval()이다.

사용법,

타이머ID=setInterval("호출함수","간격");

 

----------------------------------------------------------------------------------------------------

하위 창을 열어준 부모 창을 가리키는 opener

window 객체의 open() 메서드를 사용하면 새로운 창이 열린다. 새로 열린 창에서 이 창을 열어준 부모 창을
접근할 수 있다. opener는 새로 열린 창에서 자기를 열어준 부모창을 가리키는 속성이다.

window.opener.속성
window.opener.메서드

 

 

'자바스크립트' 카테고리의 다른 글

중요한것들 정리.(1)  (0) 2012.08.17
자바스크립트 정리 <9>  (0) 2012.08.13
자바스크립트 <6>  (0) 2012.08.13
자바스크립트. <4>  (0) 2012.08.10
자바스크립트 정리. <3>  (0) 2012.08.10
posted by changhozz 2012. 8. 13. 13:48

브라우저 객체.

자바스크립트에서는 웹 페이지의 구성 요소를 객체로 정의하여 제공한다.

웹 페이지를 작성하는데 가장 기본이 되는 언어가 HTML이다. HTML의 다양한 태그들을 사용하여 웹 페이지를 작성한다. 웹 브라우저는 HTML택로 구성된 웹 페이지를 읽어 들여 분석한다. 그 결과는 바로 우리가 인터넷을
항해하면서 볼 수 있는 많은 페이지로 나타난다. 자바스크립트는 웹 페이지를 구성하는 HTML 태그의 모든
요소와 웹 브라우저를 구성하는 요소들을 객체로 재공한다. 이들 갤체는 웹 브라우저를 대상으로 이루어진 ㄱㄱ체이므로 브라우저 객체라고 한다. 브라우저 객체로 대표되는 객체에는 window 객체, document 객체, history 객체, location 객체, navigator 객체가 있다. 이들 객체들은 많은 속성과 메서드를 갖고 있다.

 

객체 

설명 

window 

창에 대한 전반적인 모든 상황을 제어하는 최상위 객체이다. 자바스크립트에서 사용되는 모든 객체는 window 객체의 하위에 존재한다. 예를들어 상태 바에 메시지를 출력하려면 window 객체로 접근해야 한다. 

document 

문서에 대한정보를 제어하는 객체로, 이미지나 폼을 구현할 경우 웹페이지의 문서에 출력한다.
document 객체는 이미지를 출력하기 위한 image 객체, 입력양식을 구현하기 위한 form 객체 등 다양한 객체들을 하위 객체로 갖고 있다. 

location 

 주소 정보를 제어하는 객체이다. 

history 

웹 브라우저에 기록되어 있는 히스토리 정보를 제어하는 객체이다. 

navigator 

웹 브라우저의 종류를 판별해 주는 객체이다. 

 

이처럼 window가 최 상위 객체이기 때문에 원래대로라면,

window.document.write("출력할 글자");    ㅡㅡ> 이렇게 했었어야했는데,
모든 객체는 당연히 window객체의 하위 객체이므로 window를 생략하여 사용한다.

 

HTML 태그의 <img> 태그를 자바스크립트의 객체로 접근하는 방법.
<img src = "image10.gif" name = "pic">
window.document.pic.src = "image10.gif";
이미지 객체의 이름은 <img> 태그의 name 속성의 값을 사용한다. 위에선 "pic"이 이미지 객체로 사용된다.
이미지는 문서에 나타나므로 이미지 객체는 document객체의 하위 객체로 존재한다.

-----------------------------------------------------------------------------------------------------

상태 표시바에 글자를 표시하는 defaulstatus/status 속성 <브라우저 창 밑에 상태바에 나타내는거임.>

인터넷을 항해하다보면 웹 브라우저의 상태바에 다양한 형태로 메시지가 제공되는 것을 볼수 있다.
메시지가 상태바에 흘러간다든지 타이핑치듯이 글자가 나타나든지 마우스가 움직일 때마다 변하는 마우스의 위치가 상태바에 나타나는 등의 효과를 볼수 있다.  이러한 효과를 연출하기 위해서는 window 객체의 status속성을 사용해야한다.
문자열은 별도의 지시가 없는 한 상태 바에 나타나도록 할 문자열은 defaultstatus 속성에 대입한다.

창 속성을 지정하지 않으면 창의 속성이 'yes' 로 주어진다. 하나의 속성이라도 주면 나머지 속성들은
'no'로 주어진다.

 

창 속성 

속성지정방법 

설명 

toolbar 

yes/no 

도구모임을 보여줄지 설정 

location 

URL을 표시하는 주소 표시줄을 보여줄지를 설정 

status 

상태 바를 보여줄지 설정 

menubar 

메뉴 표시줄을 보여줄지를 설정 

scollbars 

스크롤 바를 보여줄지를 설정 

 directories

디렉토리 바를 보여줄지를 설정 

resizable 

창의 크기 조절 가능하게 할지를 설정 

height 

 픽셀 수

 창의 높이를 픽셀 단위로 지정

width 

창의 너비를 필셀 단위로 지정 

----------------------------------------------------------------------------------------------------

새로운 창을 열어주는 window.open() 메서드.

홈페이지에 접속하자마자 공지 사항을 알려주는 창이 함께 출력되는것을 봤을텐데,
그게 이거다.

사용법,

window.open("연결할 URL", "창 이름" ,"창의 속성");

ex) <body onload = "window.open("news.html", "testwin","width=400, height =300 left=0, top=0, toolbar=no,

location=no, directories=no, status=no, menubar=no, resizable=no, scrollbars=no, copyhistory=no ")>

연결할 URL : 새로 만들어진 창에 로드할 웹 페이지 주소나 HTML 파일을 지정.
창 이름 : 새로 만들어진 창의 이름을 지정.
창 속성: 창의 모양이나 특징을 지정.

두 번째 매개변수인 '창 이름'을 기술하지 않으면, 마우스를 그림에 가져갈 때마다 창이 계속해서 생성됨.

------------------------------------------------------------------------------------------------------

창을 닫는 window.close() 메서드

open() 메서드에 의해 새로운 창이 열렸으면, 창을 닫는 법도 알아보자

window.close();

<form>
<input type = "button" value ="닫 기" onclick = "window.close()">
</form>

 

 

 

 

'자바스크립트' 카테고리의 다른 글

자바스크립트 정리 <9>  (0) 2012.08.13
자바스크립트 정리 <7>  (0) 2012.08.13
자바스크립트. <4>  (0) 2012.08.10
자바스크립트 정리. <3>  (0) 2012.08.10
자바스크립트 정리.<2>  (0) 2012.08.10
posted by changhozz 2012. 8. 10. 19:00

--------------------------------------------------------------------------------------------------------

if 문 ,switch문, for문, while문, do while문, continue, break
모두 내가알던, 자바에서배운 내용과 같다.

다른점이 하나 있다면, 자바스크립트는 자료형을 구분하지 않으므로, 지역변수일 때도
단지 선언만 해주면된다.

★★★★★★★★★★★★자바일 경우★★★★★★★★★★★★
ex) for(int i = 0 ; i < 10 ; i++){}

★★★★★★★★★★★자바스크립트 경우★★★★★★★★★★
ex) for (i = 0; i < 10 ; i++){}

이런식으로 된다.

---------------------------------------------------------------------------------------------------------

자바스크립트만의 API ( 자주 필요로 하는 함수들의 모임.)

 

함수명 

설명 

 eval(string)

문자열을 수식으로 바꿔준다. 

parse(string) 

문자열을 정수로 바꿔준다. 

pasefloat(string) 

문자열을 실수로 바꿔준다.

isFinite(number) 

 number이 유한의 수이면 true, 아니면 false를 리턴. 

isNaN(testValue) 

testValue가 순수한 문자이면 true, 숫자형태의 문자이면 false를 리턴 

 number(objRef)

 objRef를 숫자로 변환하여 반환 

string(objRef) 

  objRef를 문자로 변환하여 반환  

 escape(string) 

 ISO-Larin-1 문자셋을 아스키값으로 바꿔준다. 

 unescape(string) 

 아스키값을 ISO-Larin-1 문자셋으로 바꿔준다. 

 

문자열을 정수로 변환하는 parseInt 함수.

사용법,
parseInt(문자열,[진수]);

첫번째 매개변수로 주어진 문자열을 두번째 매개변수로 지정한 진법의 정수값으로 변환한다.
만일 두번째 매개변수를 생략하면 10진수로 인삭하여 정수값으로 변환한다.

 

ex)

<html>
 <head>
  <script language = "javascript">
  <!--
   document.write("<center>");
   str1 = "1000";
   str2 = "2000";
   document.write(str1+str2);
   document.write("<br><hr>");
   
   document.write("parseInt 함수를 사용한 경우 <br><br>");
   val=parseInt(str1) + parseInt(str2);
   document.write(val);
   document.write("</center>")
   //-->
   </script>
 </head>
</html> 

 

'자바스크립트' 카테고리의 다른 글

자바스크립트 정리 <7>  (0) 2012.08.13
자바스크립트 <6>  (0) 2012.08.13
자바스크립트 정리. <3>  (0) 2012.08.10
자바스크립트 정리.<2>  (0) 2012.08.10
자바 스크립트 정리.<1>  (0) 2012.08.08
posted by changhozz 2012. 8. 10. 13:49

--------------------------------------------------------------------------------------------------------
자바스크립트에 내장된 대화 상자를 이용한 인터페이스.

 

함수 

설명 

 alert

경고 메시지를 전달하기 위한 대화상자를 표시. 

 confirm 

사용자의 확인을 받기 위한 대화 상자를 표시.

 prompt 

사용자에게 내용을 입력받을 수 있는 대화 상자를 표시. 

-------------------------------------------------------------------------------------------------------alert  사용법,

alert("출력할 메시지");
ex) alert("단순히 전달사항을 출력할 때, \n 사용하는 함수는 alert입니다.");

여기서 짱나는게, \n대신 <br>로는 또 못띄어, 뭐이래

document.write("단순히 <br> 입니다.");
출력결과 : 단순히   
                입니다.

이렇게 document.write()에서는 저렇게 <br>을 써도 가능한데,
alert() 에서는 <br> 저렇게 쓰면 같이 출력되버림.
대신 좆같은건, document.write("단순히 \n 입니다."); 해도 안돼.
그냥 띄지도않고 비워진상태로 '단순히 입니다' 라고 출력된다.

----------------------------------------------------------------------------------------------------
confrim함수는 alert처럼 창이 뜨면서 [확인] [취소] 버튼이 같이뜬다.
이때 [확인]은 true이고 [취소]는 false이다. 

confirm 사용법,

반환값 = confirm(출력할 메시지);
ex)
answer = confirm("[확인]  [취소]중 선택 : 수강 신청을 하시겠습니까?")
if(answer ==true)
document.wirte("등록되었습니다.");
else
document.write("취소되었습니다. 다시 신청해 주세요.")

----------------------------------------------------------------------------------------------------------
prompt 함수는 원하는 데이터를 키보드에서 입력받고 싶을 때 prompt 함수를 사용한다.
prompt 함수는 입력 대화 상자가 나타나도록 한다.

 

내용 

설명 

 메시지

대화상자에 나타날 설명. 

초기값 

텍스트 박스에 기본적으로 나타나는 문자열이나 숫자를 설정한다.
텍스트 박스에 아무런 내용이 없도록 하려면 [초기값]을 " "로 한다. 

반환값 

텍스트 박스에 입력된 내용이 [반환값]에 들어간다. 반환값을 문자열로 처리한다. 

ex)

<html>
 <head>
    <title>
     메시지 박스
    </title>
  </head>
  <body>
   <h1> prompt 함수를 사용하는 예제</h1><br>
   <script language = "javascript">
    <!--
    name = prompt("이름을 입력하세요!" , "");
    document.write(name + "씨 홈페이지를 찾아주셔서 감사합니다.")  
     //-->
   </script>
  </body> 
</html>

요딴식으로
prompt("창에띄울 내용"," 입력창에 띄울 내용");

이런식으로 문자열을 콤마로 연결하여 쓰는데,
뒤에 있는 문자열엔 보통 "" 이런식으로 내용없이 선언만해주고,
입력창에 아무내용이 써있지 않도록 한다.

------------------------------------------------------------------------------------------

 

 

 

 

 

 

 

 

 

 

 

 

 

'자바스크립트' 카테고리의 다른 글

자바스크립트 정리 <7>  (0) 2012.08.13
자바스크립트 <6>  (0) 2012.08.13
자바스크립트. <4>  (0) 2012.08.10
자바스크립트 정리.<2>  (0) 2012.08.10
자바 스크립트 정리.<1>  (0) 2012.08.08
posted by changhozz 2012. 8. 10. 12:14

-------------------------------------------------변수--------------------------------------------------

자바에서의 변수 사용법과 거의 동일하다.

뭐 변수명은 숫자가 맨첨에 올수없다. 정해진 예약어는 변수로 쓸수 없다.
ex) abstract , boolean, throw등

이딴것들은 똑같으므로 넘어가자.

이때, 좋은 점 하나를 발견했다.
자바스크립트는 변수를 명시적으로 선언한 후 사용할 경우에는 특별히 자료형을 구분하지 않기 때문에
'var'라는 예약어를 사용하여 선언한다.

사용법,
var 변수명 ;
e) var birthday ;

또한 자바와 마찬가지로 한꺼번에  콤마로 연결하여 여러 개의 변수를 선언할 수도있다.

사용법,
var 변수명1, 변수명2,.....
ex) var sum, sub, mul, div;

게다가 변수 선언 시 초기값을 부여할수있다.

사용법,
var 변수명 = 값;
ex) var total = 0;

★★★★★★★★★★★★ 근데 여기서 웃긴거 ★★★★★★★★★★★★

document.write(""); 안에다 내용이나 태그를 기술할때, 변수는 "큰따옴표"안에 들어가면 안된다.

당연한거긴한테, 태그는 되니까....

하튼 변수는 따로 써줘야 값이나오게된다.

ex) var test =  20;
document.wirte("변수의 값을 출력한다." + test);
요딴식으로 해야함.

----------------------------------------------연산자--------------------------------------------------

 뭐 사칙연산자 비교연산자 논리연산자 다 자바랑 똑같다.

여기서도 만약 (20==10) 을 쓰게되면 false가 뜬다.

 

 

'자바스크립트' 카테고리의 다른 글

자바스크립트 정리 <7>  (0) 2012.08.13
자바스크립트 <6>  (0) 2012.08.13
자바스크립트. <4>  (0) 2012.08.10
자바스크립트 정리. <3>  (0) 2012.08.10
자바 스크립트 정리.<1>  (0) 2012.08.08
posted by changhozz 2012. 8. 8. 20:32

웹 페이지에 작은 꽃(눈)들이 흩날리는 효과를 만들 수 있고, 마우스를 따라 다니는 글자 효과를 만들 수 있다. 이러한 다양하고 생동감 있는 효과들은 HTML이 아닌 자바스크립트로 구현된 것이다.

HTML에서 작성한 입력 상자에 입력받은 사용자의 정보를 서버 측으로 넘겨주기 위해[보내기]버튼을 누른다.
이때 버튼을 누르는 사건을 사용자가 브라우저에 발생시킨 이벤트로 보고 이를 처리한다.
이벤트의 발생이 일어났을 때 이를 알아내어 처리할 수 있도록 하는 활동들이 자바스크립트를 통하여 가능하다.

조금 어려운 이야기처럼 들릴지 모르겠지만 특정 사이트의 웹 페이지에 접속한 후 일어나는 모든 일들은 서버가 모두 처리하는 것이 아니다. 해당 사이트 서버의 부하를 줄이기 위해서 대화 상자를 통해서 인사말을 하거나,
경고 메시지를 보내는 등의 간단한 작업은 스크립트언어를 통해서 사용자(클라이언트)들의 컴퓨터에서 직접
실행한다.

사용자들의 컴퓨터의 성능이 빠른 속도로 발전하면서 대화상자의 처리나 자료 검증과 같은 간단한 처리들은
사용자(클라이언트)들의 컴퓨터에서 직접 실행한다. 자바스크립트를 사용하는 이유도 서버가 아닌 클라이언트에서 간단한 작업이 이루어지도록 하기 위한 것이다.

 

서버와 클라이언트 

서버와 클라이언트는 웹 환경에서 사용되는 언어이다. 어원적으로 해석하면 서버는 정보를 제공하는
측이고 클라이언트는 서버에 요청하는 측이다. 홈페이지를 제작하여 사용자에게 정보를 제공하는 측을
서버로 볼 수 있으며, 클라이언트는 웹 브라우저를 이용하여 해당 사이트의 홈페이지 정보들을
제공받는 쪽이라고 할 수 있다.

-----------------------------------------------------------------------------------------------------------자바스크립트의 기본 구조.

자바스크립트는 html 문서에 <script> 태그를 삽입한 후 작성한다. <script> 태그는 자바스크립트 전용 태그가
아니므로 language 속성에 "javascript"를 지정해야 한다.

사용법,

<script language = "javascript">
     자바스크립트 코드
</script>

 

자바 스크립트는 3가지 방법으로 기술한다.

1. html의 <head>. . .</head>사이에 작성.

2. html <body> . . . </body> 사이에 작성.

3.외부 파일(js형식)로 작성하여 source 속성을 이용하여 삽입한다.

1) head 부분에 자바스크립트 포함하기---------------------------------------------------------------------

html 문서의 여러부분에 자바스크립트를 삽입할 수 있지만 가장 안전하고 일반적인 형태는 head부분에 삽입하는 것이다. head부분에  삽입하면 다른 문장들에 비해 먼저 해석되어 처리된다는 장점이 있다.
head부분에 변수의 초기화나 사용자 정의함수를 기술한다.
페이지를 읽는 도중 중단되었을 경우 에러를 발생하므로 페이지가 읽혀지기 전에 수행되는 영역인 head부분에 자바스크립트를 기술한다. 그러므로특별한 경우가 아니면 head에 포함하는 것이 바람직하다.

ex)

<html>
 <head>
  <title>
   자바스크립트의 기본구조
  </title>
  <script language ="javascript">
   document.write("head 부분에 자바스크립트 문장을 기술합니다.");
  </script>
 </head>
 <body>
 <hr> 본문이 여기서부터 시작됩니다.
 </body>
</html>

★★★★★★★꼭 세미콜론 찍자!!★★★★★★★

이렇게 웹 브라우저에 출력하고 싶은 내용은 document.write("쓰고픈내용");
이렇게 쓴다!!


2)body 부분에 자바스크립트 포함하기-------------------------------------------------------------------

일반적이지는 않지만 body 부분의 문장이 수행되는 도중에 자바스크립트 문장들이 반드시 기술되어야 하는
경우에  사용한다. 자바스크립트 문장을<body>태그에 추가한다.

ex)

<html>
<head>
<title>
자바스크립트의 기본구조
</title>
</head>
<body>
 본문이 여기서부터 시작됩니다.
<hr>
<script language ="javascript">
document.write("head 부분에 자바스크립트 문장을 기술합니다.")
</script>
</body>
</html>

3) 자바스크립트 외부에서 불러들이기---------------------------------------------------------------------

자바스크립트로 구성된 내용을 완전히 독립된 다른 파일로 작성한다. 이 때 파일의 확장자는 "js"로 지정!!
작성된 자바스크립트 파일을 html문서에 삽입하는 방법은 <script>태그의 src 속성에 해당 자바스크립트
파일을 지정한다.

"js" 확장자를 붙인 파일은 순수하게 자바스크립트로만 구성되어야 한다.
<script>는 html문서 내에서 스크립트 구문이 시작되는 위치를 알려주기 위한 html태그이므로 자바스크립트
파일에서는 제외되어야한다.

ex)

ㅡ> 외부 파일로 자바스크립트 작성 (파일명 : js01-03.js)

document.write("여기는 자바스크립트 파일 내부입니다.<br>");
document.write("html 파일에서 이 자바스크립트 파일을 삽입하면 <br>");
document.write("html 파일에 의해 이 부분이 실행됩니다.<br>");

ㅡ>외부 자바스크립트 파일을 포함하기 (파일명 js01-03.html)

<html>
 <head>
  <title>
   자바스크립트의 기본구조
  </title>
  html 파일이 시작됩니다.<hr>
  <script language="javascript" src="C:\Users\김창호\Desktop\js01-03.js">
  </script>
  </head>
 <body>
  본문이 여기서부터 시작됩니다.
 </body>
</html>

 

★★★★★★★★★★★★여기서 주의할점!!★★★★★★★★★★★★★
document.write("여기는 자바스크립트 파일 내부입니다.");

여기서 이 줄 다음에 한 줄을 띄우려고 <br>을 쓸때,
내용 끝나는 지점에 써야함 꼭!!
document.write("여기는 자바스크립트 파일 내부입니다.<br>"); 

-----------------------------------------------------------------------------------------------------------

자바스크립트 부분을 주석 문으로 처리하기

브라우저의 종류나 버전에 따라서 자바스크립트를 지원하지 않는 경우가 있다.
지원되지 않는 브라우저에서는 자바스크립트 소스가 그대로 노출이 된다. 
자바스크립트를 지원 받지 못하는 브라우저에서는 <script> 태그 다음에 나오는
 <!--     주석      //-->  태그 사이의 내용들을 읽을 수 없도록 한다.
자바스크립트를 지원하는 브라우저의 경우에는 <!-- //--> 기호의 영향을 받지 않고 정상적으로 동작한다.

따라서 <script> 태그를 시작 한 이후에 주석문으로 처리하고 </script> 태그를 끝내기 전까지 주석처리한다.

ex)

<html>
 <head>
  <title> 자바스크립트의 기본구조</title>
   <script language = "javascript">
    <!--
      document.write("자바스크립트 부분을 주석 문으로 처리하였습니다.");
    //-->
   </script>
 </head>
 <body> 
 </body>
</html>

 

참고로, html에서의 주석은 <!-- 주석 --> 이거였는데 //(슬러쉬)만 추가되었다.

---------------------------------------------------------------------------------------------------------

★★★★★★★★★★★★★★지금까지 정리★★★★★★★★★★★★★★

지금까지 느낀 걸 말하자면, 자바랑은 약간 다른점이 있다.

원래 내 생각대로라면 문법(태그)은 "큰따옴표" 안에 있으면 안되는데,

 얘넨 안에다가 넣는다. 그래서 막 출력하고픈 내용이랑 문법이랑 큰따옴표안에 섞어쓴다.

이상하지만 외워야지뭐

System.out.print(); 얘와 같은것은 document.write(" "); 이것이다.

주의할점은, println이 아니라는것,  <br>을 써서 직접 띄어줘야함!!

그것도 "큰따옴표" 안에다가!!!

'자바스크립트' 카테고리의 다른 글

자바스크립트 정리 <7>  (0) 2012.08.13
자바스크립트 <6>  (0) 2012.08.13
자바스크립트. <4>  (0) 2012.08.10
자바스크립트 정리. <3>  (0) 2012.08.10
자바스크립트 정리.<2>  (0) 2012.08.10
css
posted by changhozz 2012. 8. 8. 14:34

글꼴 꾸밈 관련 스타일 시트

 

속성 

값 

설명 

color 

색 이름, RGB값 

글자색 

font-family 

글꼴이름 

글꼴(글씨체) 

font-size 

절대값, 상대값, 길이, 퍼센트 

글자크기 

font-style 

normal, italic, oblique 

글자모양 

font-variant 

normal,small-caps 

작은 크기의 대문자로 지정하기 

font-weight 

normal,bold,bolder,lighter,100~900 

글자의 굵기 

 

-----------------------------------------------------------------------------------------------------------

텍스트관련 스타일 시트

 

속성 

값 

설명 

text-indent 

길이, 퍼센트 (ex) 3cm)

들여쓰기 

text-align 

left, right, center 

문자열 정렬 

line-height 

normal, 숫자, 길이, 퍼센트 

줄간격(행간격)
*행의 높이가 아님. 

vertical-align 

top,bottom,middle 

수직 정렬 

letter-spacing 

normal,auto, 길이 

문자 간격 

word-spacing 

normal, 길이 

단어 간격 

white-spacing 

normal,pre,nowrap 

빈칸 및 줄바꿈 처리 

text-decoration 

none, underline, overline, line-through, blink 

문자열 처리 

text-transform 

none,capitalize, uppercase,lowercase 

 문자열 대소문자 변경

-----------------------------------------------------------------------------------------------------------

배경 관련 스타일 시트

 

속성 

값 

설명 

background 

대표속성 

 

background-color 

색이름,RGB값,transparent 

배경색 지정 

background-image 

url,none 

배경이미지 경로/파일 지정 

background-repeat

repeat, repeat-x , repeat-y , no-repeat 

배경이미지의 반복여부,
반복방법 

background-attachment 

scroll,fixed 

배경이미지의 스크롤 여부 

background-position

(퍼센트,길이), (top,center,bottom= 세로위치),
 (left,center,right = 가로위치)

배경이미지의 시작위치 설정 

1. 이 중 background-image / background-repeat 속성--------------------------------------------------------

배경에 이미지를 설정하려면 background-image속성을 사용하는데,
삽입할 이미지의 파일명을 기술하려면 url을 기술하여 지정한다.
문서는 물론이고 테이블이나 박스에도 이미지를 설정할 수 있다.

사용법,

selector{ background-image : url("경로") }

 

타일 효과를 주기 위해서는 background-repeat 속성을 사용하는데, 속성 값은 다음과 같다.

 

 

속성 값 

설명 

 no-repeat

배경이미지를 반복하지 않고 한번만 나타낸다. 

repeat-x 

배경이미지를 가로 방향으로 반복하여 나타낸다. 

repeat-y 

배경이미지를 세로 방향으로 반복하여 나타낸다. 

repeat 

배경이미지를 바둑판식 배열로 나타낸다. 

기본값은 repeat 임.

 

2. 이 중 background-position 속성-------------------------------------------------------

background-position 속성에 비율로 위치를 지정하거나 키워드로 설정할 수 있다.
특정 위치를 지정하지 않으면 기본적을 왼쪽 상단에 나타낸다.

사용법,

selector{ background-position : 속성값 }

 왼쪽 상단을 "0%0%"로 보고 오른쪽 하단을 "100%100%"으로 보고 원하는 위치에 계산하여
이미지를 나타낼 수 있다.    

 속성값

설명 

0%0% = left top 

왼쪽 상단에 배경이미지를 나타냄. 

100%100% = right bottom 

오른쪽 하단에 배경이미지를 나태냄 .

 50%50% = center center

문서 가운데에 배경 이미지를 나타냄. 

 

3. 이 중 background-attachment 속성 ------------------------------------------------------

스크롤을 이동하면 문서내의 내용들이 스크롤 된다. 일반적으로는 배경 이미지도 내용들과 함께
스크롤이 된다. 하지만 background-attachment 속성을 fixed로 지정하면 배경그림은 그대로 멈춰 있고
문서내의 내용들만 스크롤 된다. 기본적으로는 속성값이 scroll 지정되어 있으므로 다른 내용들과 함께
배경이미지가 스크롤되는 것이다.

사용법,

selector { background-attachment : 속성값 }

 

속성 값 

설명 

fixed 

배경이미지가 현재 위치에 고정되어 나타남. 

scroll 

배경이미지가 HTML 문서의 스크롤 크기에 따라
함께 스크롤 됨. 

 

4. 배경 스타일 한꺼번에 설정하기------------------------------------------------------------

배경에 관련된 속성을 한꺼번에 지정할 수 있다.  background 속성 다음에 적용하고자 하는 속성들에
대한 값들을 나열하면 된다.

body { color : white ; 
           background : black url("mulan2.gif") center no-repeat fixed; 
        }

 

-----------------------------------------------------------------------------------------------------------

목록 관련 스타일 시트

 

list-style 

대표 속성 

설명 

list-style-type 

disc, circle, square, decimal,
lower-roman, upper-roman,
lower-alpha, upper-alpha, none 

목록표시의 형태 

list-style-position 

inside,outside 

목록표시의 위치 

list-style-image 

URL,none 

목록표시에 이미지를 사용할 수 있다. 

 

----------------------------------------------------------------------------------------------------------

하이퍼링크 관련 스타일 시트

보통 우리가 홈페이지의 링크된 부분에 마우스를 가져다 대면 색이 바뀌면서 밑줄이 생기기도 하고
한번 클릭한 링크부분은 다른 색으로 달라지기도 한다. 이것을 사용하는 것이 <a> 태그이므로
앞에 a가 붙게 되고 그 다음 link는 아직 방문을 하지 않은 링크부분, visited는 한 번 이상 방문한 부분,
active는 마우스로 클릭하는 순간의 스타일을 지정해주는 것이다.
마지막으로 hover의 경우는 마우스를 링크위에 올려놨을 때의 스타일을 지정하는 것이다.

 

설명 

a : link 

하이퍼링크에 대한 모든 설정 

a : visited 

방문한 적이 있는 링크 속성 설정 

a : active 

링크를 클릭하려는 순간의 속성 설정 

a : hover 

마우스가 링크 위에 올라가 있을 때 속성 설정. 

ex)

<html>
 <head>
  <STYLE TYPE = "text/css">
   a:link {text-decoration : none; color : green}
   a:visited{ text-decoration : none; color : blue}
   a:active{text-decoration : none; color : red}
   a:hover{ text-decoration : underline; color:purple}
  </STYLE>
 </head>
 <body>
  <h3>방문전 스타일 : <a href = "http://www.daum.net"> 다음 </a> <br>
    방문후 스타일 : <a href = "http://www.naver.com">네이버</a> <br>
    마우스 올린 스타일 : <a href = "http://www.yahoo.com">야후</a> <br>
  </h3>     
 </body>
</html>

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

-----------------------------------------------------------------------------------------------------------

 

 

 

 

 

 

 

'css' 카테고리의 다른 글

css 정리 <1>  (0) 2012.08.03