PowerPoint 프레젠테이션
|
|
- 상훈 전
- 6 years ago
- Views:
Transcription
1 발표자윤승환 1
2 XML DOM DOM 의구조 예제및참고자료 2
3 XML XML 개요 XML 문법 XML 파서의종류 (DOM, SAX) DOM 의구조 트리구조도 DOM 인터페이스 DOM DOM 개요 DOM 사용목적 DOM 장점과단점 예제및참고자료 XML 파일 DOM 파싱 DOM 인터페이스추가내용 웹서버에 XML 파일 DOM 파싱 3
4 XML 의개요 extensible Markup Language( 확장가능한마크업언어 ) 의약자 - 확장가능 : 기존에없던것을새롭게만듬 - 마크업 : 문서의논리적인구조와내용기술 데이터구조가정의된텍스트의집합 문서의구조를임의의 DTD 를선언하고 Tag 를정의함으로써문서를표현가능 XML tag 들은문서의구조혹은데이터의의미를표현 4
5 XML 문법 원소 (Element) 원소 (Elements) 는 XML 문서에서핵심구성요소 태그 (Tag) 태그는원소를구성하기위해사용 < 원소이름 > 과같은시작태그가원소의 시작, </ 원소이름 > 같은마침태그가원 소의마지막을표시 속성 (Attribute) 속성은원소 (element) 에대한부가적인 정보를제공 속성은원소의시작태그안에위치 속성은 name/value 쌍으로나타난다. 원소 <go what = name > 라현태 </go> 끝태그 내용 속성 시작태그 5
6 XML 문법 PCDATA(parsed character data) PCDATA 는파서 ( 해석기, parser) 에의해해석이될텍스트 XML 요소의시작태그와마침태그사이에위치한텍스트 CDATA(character data) CDATA 는파서 ( 해석기, parser) 에의해해석이되지않을텍스트 <![CDATA[ 로시작하여, ]]> 로끝나는영역은그대로출력 '<', '>', '&' 같은특수문자를사용할때 CDATA 로감싸면됨 엔터티 (Entities) XML 에서엔터티는변수와비슷한개념으로생각할수있음엔터티는문서내에서참조될수있는문자집합의단위 HTML 문서에서 " 가엔터티참조의한예 예제 )PCDATA 와 CDATA 의차이점 6
7 XML 파서의종류 DOM (Document Object Model) 가장대표적인트리기반 API 다양한분야의응용프로그램에사용가능 XML 문서가큰경우많은시스템자원을사용 SAX (Simple API for XML) 가장대표적인이벤트기반 API DOM에비해간단한구조 시스템자원을적게사용 기능면에서 DOM 만큼강력하지못함 7
8 DOM 의개요 DOM(Document Object Model) 정의 객체지향모델로구조화된문서표현 플랫폼 / 언어중립적사용 W3C 에의해표준화 DOM 의특징 객체모델기반 API 노드 (node) 단위로데이터처리 문서의구조와내용을객체로이용 메모리적재방식 8
9 DOM 의처리과정 XML 문서 DOM 파서 9
10 DOM 의특징 DOM은문서를객체로표현하고처리할수있는방법을제공 문서에서표현되는데이터를노드로표현 새로운내용을삽입, 변경, 삭제작업수월 XML문서의 element, attribute, entity, comment, processing instruction, text 등이 DOM 에서는객체로정의되어있음 / people person DOM 파싱 name TomSmith pet Putty 목적 : 어떠한환경이나애플리케이션에서도사용할수있는표준프로그래밍인터페이스를제공. 10
11 DOM 의장점, 단점 DOM 장점 XML 문서조작을위한인터페이스 XML 모델처리시범프로그램적으로사용될수있는공통적인수단제공공통인터페이스공유를통해프로그래머생산성향상 DOM 단점큰규모의 XML 문서를다루는데는비효율적대안으로 SAX (Simple API for XML) 11
12 DOM 트리구조도 예제 XML 파일 <?xml version="1.0" encoding="utf-8"?> <apps> <app> <title>traveldiary</title> <price format="dollar">5.99</price> <repdate>04/06/2012</repdate> </app> <info> <provider>apple</provider> <version>2</version> </info> </apps> 12
13 DOM 트리구조도 예제 XML 데이터을 DOM 구조로읽어왔을때구조 apps app info title price repdate provider version Format dollar 04/06/ traveldiary 5.99 apple
14 DOM 인터페이스 DOM 파서속성 (Attribute) childnodes : 현재요소의자식을배열로표현 firstchild : 현재요소의첫번째자식 lastchild : 현재요소의마지막자식 previoussibling : 현재요소의바로이전요소를의미 nextsibling : 현재요소의바로다음의요소를의미 nodevalue : 해당요소의값을읽고쓸수있는속성정의 (=data) parentnode : 해당요소의부모노드 14
15 DOM 인터페이스 DOM 파서메소드 ( 문서 ) getelementbyid(id) - 도큐먼트에서특정한 id 속성값을가지고있는요소를리턴 getelementsbytagname(name) - 특정한태그이름을가지고있는자식요소로구성된배열을리턴 haschildnodes() - 해당요소가자식요소를포함유무판단 (Boolean 값리턴 ) getattribute(name) - 특정한 name 에해당하는요소의속성값을리턴 document.createelement(tagname) -tagname 으로된엘리먼트를생성 document.createtextnode(text) - 정적텍스트를담고있는노드를생성 15
16 DOM 인터페이스 DOM 파서메소드 (element) <element>.appendchild(childnode) - 특정노드를현재엘리먼트의자식노드에추가 <element>.getattribute(name) - 속성명이 name 인속성값을반환 <element>.setattribute(name, value) - 속성값 value 를속성명이 name 인곳에저장 <element>.insertbefore(newnode, tartgetnode) -newnode 를 tartgetnode 전에삽입 16
17 DOM 인터페이스 DOM 파서메소드 (element) <element>.removeattribute(name) - 엘리먼트에서 name 속성을제거 <element>.removechild(childnode) - 자식엘리먼트를제거 <element>.replacechild(newnode, oldnode) -oldnode 를 newnode 로치환 <element>.haschildnodes() - 자식노드가존재하는지여부를판단 ( 리턴 Boolean) 17
18 예제 Test.xml 이라는 xml 파일을 domparsing 하여 화면에필요한구성을출력한다. 파일구성 DOMEx.java test.xml 18
19 test.xml파일생성하여 XML파일을 DOM파싱 1. DOMEx 이라는프로젝트를생성 2. DOMEx/res/raw폴더에 test.xml파일을생성 3. DOMEx/src/te.exam/DOMEX.java파일에 DOM파싱소스추가 4. AVD manager를통해출력이제대로되는지확인 19
20 1.DOMEx 이라는프로젝트를생성합니다. 20
21 21
22 22
23 23
24 2. DOMEx/res/raw 폴더에 test.xml 파일을생성합니다. 24
25 2. DOMEx/res/raw 폴더에 test.xml 파일을생성합니다. 25
26 26
27 27
28 Item 노드속성의 Value Item 노드의 firstchild <?xml version="1.0" encoding="utf-8"?> <status> <item studentid=" " name=" 윤승환 "> 컴퓨터공학과 </item> <item studentid=" " name=" 라현태 "> 컴퓨터공학과 </item> <item studentid=" " name=" 제갈민재 "> 컴퓨터공학과 </item> <item studentid=" " name=" 배동혁 "> 컴퓨터공학과 </item> </ status > Item 노드속성의 Name Item 노드리스트 28
29 3. DOMEx/src/te.exam/DOMEX.java 파일에 DOM 파싱소스를추가합니다. 29
30 import java.io.inputstream; import javax.xml.parsers.documentbuilder; import javax.xml.parsers.documentbuilderfactory; import org.w3c.dom.document; import org.w3c.dom.element; import org.w3c.dom.namednodemap; import org.w3c.dom.node; import org.w3c.dom.nodelist; import org.w3c.dom.text; import javax.xml.parsers.*; import org.w3c.dom.*; 30
31 Dom 파서생성 try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder b = factory.newdocumentbuilder(); InputStream is = getresources().openrawresource(r.raw.test); Document doc = b.parse(is); Element root = doc.getdocumentelement(); 리소스파일가져오기 31
32 NodeList items = root.getelementsbytagname("item"); String result = ""; for ( int i = 0 ; i < items.getlength() ; i++ ) { 동일한태그이름에 Node item = items.item(i); 해당하는 Node 가져오기 Text data = (Text) item.getfirstchild(); result += data.getdata() + "\n"; 32
33 NamedNodeMap attrs = item.getattributes(); for ( int j = 0 ; j < attrs.getlength(); j++ ) { 각 item 노드가가지고 Node attr = attrs.item(j); 있는속성가져오기 result += attr.getnodename(); result += "="; result += attr.getnodevalue() + "\n"; } result += "\n"; } 33
34 et.settext(result); } catch (Exception e) { Log.d("TAG", e+"dom fail"); } 예외처리 } }); } } 34
35 35
36 36
37 1)DOM 인터페이스프로퍼티, 함수설명 2) 트위터 xml 으로 dom 파싱하여출력하기 37
38 Property ( 프로퍼티 ) 객체의정보에접근하는메소드 대괄호 [ ] 를사용하지않고객체의정보에접근 요소의정보, 속성에대한구체적인값, 속성값 참고 38
39 DOM 인터페이스 - Node DOM 객체가만들어지는기본인터페이스 프로퍼티타입설명 nodename DOMString(Read) 노드의이름, 타입에따라다른이름반환 nodevalue DOMString 노드의값, 타입에따라다른값을반환 nodetype unsingned short (Read) 노드의타입 parentnode Node(Read) 이노드의부모노드 childnode NodeList(Read) 이노드의자식노드를포함하는 NodeList 자식노드가없으면빈 NodeList 반환 firstchild Node(Read) 이노드의첫번째자식노드 lastchild Node(Read) 이노드의마지막자식노드 previoussibling Node(Read) 이노드의바로앞노드 nextsibling Node(Read) 이노드의바로뒤노드 39
40 DOM 인터페이스 - Node 프로퍼티타입설명 attributes NamedNodeMap (Read) 이노드의어트리뷰트를포함하는 NamedNodeMap ownerdocument DOMStirng(Read) 이노드가속한도큐먼트 namespaceuri DOMString(Read) 이노드의네임스페이스 URI prefix DOMString 네임스페이스접두어 localname DOMString(Read) 노드의 Qname 부분이름을반환 프로퍼티참고 40
41 DOM 인터페이스 - Node 함수 Node insertbefore(node newchild, Node refchild) Node replacechild(node newchild, Node oldchild) Node removechild(node oldchild) Node appendchild(node newchild) boolean haschildnodes() Node clonenode(boolean deep) void normlize() boolean supports(domstring feature, DOMString version) 설명 존재하는 refchild 앞에 newchild 를삽입 refchild 가 NULL 이면리스트끝에삽입 oldchild 를 newchild 로대체 oldchild 를반환 리스트에서 oldchild 를제거하고그것을반환 리스트끝에 newchild 를추가하고그것을반환 노드에자식이있으면 true, 없으면 false 이노드를반환, 파라미터가 true 이면노드의하위트리까지복사하고그렇지않으면그노드만복사 복수의근접한 Text 자식노드가있으면그것을합침 DOM 구현체가넘겨받은특징을지원하는지여부검사, 지원하면 true, 아니면 false 41
42 DOM 인터페이스 Document 전체 XML 문서를표현 Node 인터페이스상속 프로퍼티타입설명 DocType DocumentType(Read) 이문서와연결된문서형식을표현하는 Document Type 객체반환 정의된문서형식이없다면 NULL반환 Implementation DOMImplementation (Read) 이문서에사용된 DOMImplementation 객체 DocumentElement Element(Read) 이문서의루트엘리먼트 42
43 DOM 인터페이스 Document 함수 Element createelement(domstring tagname) DocumentFragment createdocumentfragment() Text create TextNode(DOMString data) Comment createcomment(domstring data) 설명 지정된이름으로엘리먼트를생성빈 DocumentFragment 객체를생성 data에텍스트를포함하는 Text 노드를생성 data에텍스트를포함하는 Comment 노드를생성 CDATASection createcdatasection(domstring data) ProcessingInstruction createprocessinginstruction(domstring target, DOMString data) Attr createattribute(domstring name) EntityReference createentityreference(domstring name) data 에텍스트를포함하는 CDATASection 노드를생성 지정된 target 과 data 를가지는 ProcessingInstruction 노드를생성 지정된 name 을가지는어트리뷰트를생성 지정된 name 으로엔티티참조생성 43
44 DOM 인터페이스 Document 함수 NodeList getelementsbytagname(domstringtagname) Node importnode(node importednode, boolean deep) 설명 문서에서이 tagname 을가진모든엘리먼트를 NodeList 로반환, 엘리멘트문서에있는순서로반환 다른문서에서 importednode 를가져옴. 이전문서에서원래노드지원하지않고복제 Element createelementns(domstringanmespaceuri, DOMStringqualifiedName) Attr createattributens(domstringnamespaceuri, DOMStringqualifiedName) NodeList getelementsbytagnamens(domstring namespaceuri, DOMString localname) Element getelementbyld(domstringelementid) 지정된네임스페이스와 Qname 로엘리먼트를생성 지정된네임스페이스와 Qname 로어트리뷰트를생성 지정된부분이름을가지고 namespaceuri 에의해서정해지는네임스페이스안에있는모든엘리먼트 NodeList 로반환 elementid 를가진엘리먼트를반환 44
45 DOM 인터페이스 DOMImplementation 특정문서에종속적이지않은어떤문서라도사용할수있는함수제공 함수 boolean hasfeature(domstring feature, DOMString version) DocumentType createdocumenttype(domstring qualifiedname, DOMString publicid, DOMString systemid, DOMString internalsubset) Document createdocument(domstring namespaceuri, DOMString qulifiedname, DocumentType doctype) 설명 이 DOM 구현체가요청받은 feature 를지원하는지여부를반환 version 은테스트할이특징의버전 지정된어트리뷰트를가지고 Document Type 객체를만듬 지정된 qualifiedname 을가지고 Document 객체를만듬 45
46 DOM 인터페이스 NodeList 인덱스로접근이가능한노드그룹을포함 프로퍼티타입설명 Length unsigned long(read) 리스트에포함된노드의수. 유요 숫자는 0 부터 length-1까지 함수 설명 boolean hasfeature(domstring feature, 이 DOM 구현체가요청받은 feature를 DOMString version) 지원하는지여부를반환함수 version설명은테스트할이특징의버전 DocumentType Node item(unsigned createdocumenttype(domstring long 인덱스에해당하는지정된노드를어트리뷰트를반환. 인덱스가가지고길이와 Document qualifiedname, index) DOMString publicid, 같거나 DOMString 더크면 NULL Type 을객체를반환만듬 systemid, DOMString internalsubset) Document createdocument(domstring namespaceuri, DOMString qulifiedname, DocumentType doctype) 지정된 qualifiedname 을가지고 Document 객체를만듬 46
47 DOM 인터페이스 - Element Element 관련된함수제공 Node 인터페이스에서상속 프로퍼티타입설명 agname DOMString(Read) 엘리먼트이름 함수 OMString getattribute(domstring name) void setattribute(domstring name, DOMString value) void removeattribute(domstring name) void getattributenode(domstring name) 설명 지정된 name 으로어트리뷰트값을반환, 어트리뷰트가값을가지고있지않으면빈문자열반환 특정어트리뷰트에새로운값할당. 해당어트리뷰트가존재하지않으면새롭게생성 어트리뷰트제거, 어트리뷰트가기본값을가지고있으면이기본값을가진동일어트리뷰트로대체 name 을가진 Attr 노드를반환, 어트리뷰트가존재하지않으면 NULL 반환 47
48 DOM 인터페이스 - Element 함수 Attr setattributenode (Attr newattr) Attr removeattributenode(attr oldattr) 설명 새로운어트리뷰트노드추가. 동일한이름을가진것이이미있으면치환 지정한 Attr 노드를제거하고반환 NodeList getelementsbytagname(domstring name) 주어진노드이름을가진모든자손들을 NodeList 로반환 DOMString getattributens(domstring namespaceuri, DOMString localname) void setattributens(domstring namespaceuri, DOMStirng qualifiedname, DOMString value) void removeattributens(domstring namespaceuri, DOMString localname) Attr getattributenodens(domstring namespaceuri, DOMString locarname) Attr setattributenodens(attr newattr) 지정된어트리뷰트값을반환, 어트리뷰트가지정되지않거나값이없으면빈문자열을반환 지정된어트리뷰트에새로운값을할당 지정된어트리뷰트제거 지정된어트리뷰트를가진 Attr 노드를반환 리스트에 Attr 노드를추가 48
49 DOM 인터페이스 - NamedNodeMap 노드의집합을순서없이제공 노드들은이름으로추출가능 프로퍼티타입설명 length unsigned long(read) 이맵에있는노드의개수 함수 설명 Node getnameditem(domstring name) 지정된 name 을 nodename 으로가진 Node 를반환 Node setnameitem(node arg) Node removenameditem(domstirng name) Node item(unsigned long index) Node setnameditmens(node arg) arg 파라미터는추가될 Node 객체. nodename 프로퍼티가이름을위해사용 지정된이름을가진 Node 가제거되고그것을반환 지정된인덱스를가진노드반환 arg 파라메터는추가될 Node 객체 49
50 DOM 인터페이스 - Attr Attribute 를다루는데필요한프로퍼티제공 Node 인터페이스상속 프로퍼티타입설명 Name DOMStirng(Read) 어트리뷰트이름 Specified boolean(read) 어트리뷰트가지정되었는지여부를 알려줌 Value DOMString 어트리뷰트값 owerelement Element(Read) 어트리뷰트가속한엘리먼트를표현 50
51 DOM 인터페이스 - CharacterData 문자데이터를다루는데필요한프로퍼티, 함수제공 Node 인터페이스상속 프로퍼티타입설명 Data DOMString CharacterData 노드의 텍스트 length Unsigned long(read) 이노드에있는문자수 함수 DOMString substringdata(unsigned long offset, unsigned long count) void appenddata(domstring arg) void insertdata(unsigned long offset, unsigned long count) void deletedata(unsigned long offset, unsigned long count) 설명 offset 으로시작하는부분의문자열을반환, count 만큼문자열반환 문자열뒤에 arg 를붙임 문자열의가운데 offset 으로시작하는부분에 arg 문자열삽입 offser부터문자열부분을제거, count만큼문자열제거 51
52 DOM 인터페이스 - Text 텍스트노드를다루는데필요한함수제공 CharacterData 인터페이스를상속 함수 Text splittext(unsigned long offset) 설명 하나의 Text 노드를인접한두개의 Text 노드로나눔 offset 까지첫번째노드, 그이후가두번째노드 52
53 예제 2-1 Yoonseunghwan 이라는 Twiter 사용자의최근게시물 3 개의내용을출력한다. URL: 파일구성 Twiter_parsingtest.java main.xml 53
54 54
55 55
56 56
57 Element statuses = doc.getdocumentelement(); statuses NodeList statuslist = statuses.getelementsbytagname("status"); status id text user Value Value id name Value Value NodeList textlist = ((Element)statusList.item(i)).getElementsByTagName("text"); Node text = textlist.item(0); text.getfirstchild().getnodevalue() 참고 57
58 statuses status NodeList userlist = ((Element)statusList.item(i)).getElementsByTagName("user"); id text user Value Value text id text name Value Value Node username = userlist.item(0).getfirstchild().getnextsibling().getnextsibling().getnextsibling(); username.getfirstchild().getnodevalue(); 58
59 twitter_parsingtest.java package exam.twiter; import java.net.*; import javax.xml.parsers.*; import org.w3c.dom.*; import android.app.*; import android.os.*; import android.view.*; import android.widget.*; public class twitter_parsingtest extends Activity { public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.downxml); Button btn = (Button) findviewbyid(r.id.down); btn.setonclicklistener(new Button.OnClickListener() { HTML addr을사용하여 URL 객체생성 public void onclick(view v) { String xml; String url; String name = correct05"; String output = ""; int count = 3; url = " + name + "&count=" + count; xml = DownloadHtml(url); EditText result = (EditText) findviewbyid(r.id.result); 59
60 try { DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance(); DocumentBuilder builder = factory.newdocumentbuilder(); InputStream istream = new ByteArrayInputStream(xml.getBytes("utf-8")); Document doc = builder.parse(istream); Stream 형태로입력을받아 parsing Element statuses = doc.getdocumentelement(); twitter_parsingtest.java Dom 파서생성 root 엘리먼트 NodeList statuslist = statuses.getelementsbytagname("status"); statuses child 엘리먼트중 status 의 List status status status 60
61 twitter_parsingtest.java statuses status status status for (int i = 0; i < statuslist.getlength(); i++) { NodeList textlist = ((Element)statusList.item(i)).getElementsByTagName("text"); NodeList userlist = ((Element)statusList.item(i)).getElementsByTagName("user"); Node username = userlist.item(0).getfirstchild().getnextsibling().getnextsibling().getnextsibling(); Node text = textlist.item(0); String uname = username.getfirstchild().getnodevalue(); output += uname + " : "; output += text.getfirstchild().getnodevalue() + "\n\n"; } } catch (Exception e) { Toast.makeText(v.getContext(), e.getmessage(), 0).show(); } result.settext(output); }}); 61
62 twitter_parsingtest.java statuses status for (int i = 0; i < statuslist.getlength(); i++) { NodeList textlist = ((Element)statusList.item(i)).getElementsByTagName("text"); NodeList userlist = ((Element)statusList.item(i)).getElementsByTagName("user"); Node username = userlist.item(0).getfirstchild().getnextsibling().getnextsibling().getnextsibling(); Node text = textlist.item(0); String uname = username.getfirstchild().getnodevalue(); output += uname + " : "; output += text.getfirstchild().getnodevalue() + "\n\n"; } } catch (Exception e) { Toast.makeText(v.getContext(), e.getmessage(), 0).show(); } result.settext(output); }}); text 62
63 twitter_parsingtest.java statuses status user user for (int i = 0; i < statuslist.getlength(); i++) { NodeList textlist = ((Element)statusList.item(i)).getElementsByTagName("text"); NodeList userlist = ((Element)statusList.item(i)).getElementsByTagName("user"); Node username = userlist.item(0).getfirstchild().getnextsibling().getnextsibling().getnextsibling(); Node text = textlist.item(0); String uname = username.getfirstchild().getnodevalue(); output += uname + " : "; output += text.getfirstchild().getnodevalue() + "\n\n"; } } catch (Exception e) { Toast.makeText(v.getContext(), e.getmessage(), 0).show(); } result.settext(output); }}); 63
64 twitter_parsingtest.java user text id text name Value Value for (int i = 0; i < statuslist.getlength(); i++) { NodeList textlist = ((Element)statusList.item(i)).getElementsByTagName("text"); NodeList userlist = ((Element)statusList.item(i)).getElementsByTagName("user"); Node username = userlist.item(0).getfirstchild().getnextsibling().getnextsibling().getnextsibling(); Node text = textlist.item(0); String uname = username.getfirstchild().getnodevalue(); output += uname + " : "; output += text.getfirstchild().getnodevalue() + "\n\n"; } } catch (Exception e) { Toast.makeText(v.getContext(), e.getmessage(), 0).show(); } result.settext(output); }}); 64
65 twitter_parsingtest.java user #text id #text name Value Value for (int i = 0; i < statuslist.getlength(); i++) { NodeList textlist = ((Element)statusList.item(i)).getElementsByTagName("text"); NodeList userlist = ((Element)statusList.item(i)).getElementsByTagName("user"); Node username = userlist.item(0).getfirstchild().getnextsibling().getnextsibling().getnextsibling(); Node text = textlist.item(0); String uname = username.getfirstchild().getnodevalue(); output += uname + " : "; output += text.getfirstchild().getnodevalue() + "\n\n"; } } catch (Exception e) { Toast.makeText(v.getContext(), e.getmessage(), 0).show(); } result.settext(output); }}); 65
66 } twitter_parsingtest.java String DownloadHtml(String addr) { StringBuilder html = new StringBuilder(); try { URL url = new URL(addr); HttpURLConnection conn = (HttpURLConnection) url.openconnection(); } if (conn!= null) { conn.setconnecttimeout(10000); conn.setusecaches(false); if (conn.getresponsecode() == HttpURLConnection.HTTP_OK) { BufferedReader br = new BufferedReader( new InputStreamReader(conn.getInputStream())); for (;;) { String line = br.readline(); if (line == null) break; html.append(line + '\n'); } br.close(); } conn.disconnect(); } } catch (Exception ex) {;} return html.tostring(); 연결속성설정 getreponse 메소드로요청을보내고요청이정상적으로리턴되면입력스트림으로부터 HTML 문서를읽어들인다. 66
67 결과 Yoonseunghwan 이라는 Twiter 사용자의최 근게시물 3 개의내용을출력한다. 파일구성 Twiter_parsingtest.java main.xml 67
XML DTD
XML DOM (Document Object Model) 2017. 9. 27 Content XML 문서처리 DOM 개요 DOM Tree DOM Core Interfaces Node Document Element Attr DOM 사용예 1 XML 문서처리 XML 문서처리과정 XML Parser 2 XML 문서처리 XML Parsing XML 문서를읽고해석하여구성요소,
More information웹 프로그래밍
XML 프로세서 배재대학교 김창수 sungu@markup.paichai.ac.kr XML 프로세서개요 정의 XML 문서를읽어문서내용및구조에대한접근을제공하는소프트웨어 지원기능 엘리먼트, 속성, 엔티티정보생성 문서의정확성검증 XML 문서처리를수행하도록지원 2 XML 프로세서역할 XML 브라우저 XML 응용 SAX 범용 XML 프로세서 DOM Level 3 DOM
More informationPowerPoint 프레젠테이션
Elements and attributes 조윤상 ( 과편협기획운영위원 ) 1 Table of Contents 1. Elements( 요소 )? 2. Attributes( 속성 ), PCDATA, CDATA? 3. Elements 선언방법 4. Attributes 속성 2 15 th KCSE Editor s Workshop, Seoul 2015 Elements
More information2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 2 xmlns:tools="http://schemas.android.
10 차시파일처리 1 학습목표 내장메모리의파일을처리하는방법을배운다. SD 카드의파일을처리하는방법을배운다. 2 확인해볼까? 3 내장메모리파일처리 1) 학습하기 [ 그림 10-1] 내장메모리를사용한파일처리 2) 활동하기 활동개요 활동과정 [ 예제 10-1]main.xml 1
More informationJava XPath API (한글)
XML : Elliotte Rusty Harold, Adjunct Professor, Polytechnic University 2006 9 04 2006 10 17 문서옵션 제안및의견 XPath Document Object Model (DOM). XML XPath. Java 5 XPath XML - javax.xml.xpath.,? "?"? ".... 4.
More informationadfasdfasfdasfasfadf
C 4.5 Source code Pt.3 ISL / 강한솔 2019-04-10 Index Tree structure Build.h Tree.h St-thresh.h 2 Tree structure *Concpets : Node, Branch, Leaf, Subtree, Attribute, Attribute Value, Class Play, Don't Play.
More informationMicrosoft PowerPoint - web-part01-ch10-문서객체모델.pptx
과목명 : 웹프로그래밍응용교재 : 모던웹을위한 JavaScript Jquery 입문, 한빛미디어 Part1. JavaScript / Ch10. 문서객체모델 2014년 1학기 Professor Seung-Hoon Choi 10 문서객체모델 문서객체모델 (Document Object Model, DOM) 웹브라우저가 HTML 페이지를인식하는방식 document
More informationPowerPoint Template
JavaScript 회원정보 입력양식만들기 HTML & JavaScript Contents 1. Form 객체 2. 일반적인입력양식 3. 선택입력양식 4. 회원정보입력양식만들기 2 Form 객체 Form 객체 입력양식의틀이되는 태그에접근할수있도록지원 Document 객체의하위에위치 속성들은모두 태그의속성들의정보에관련된것
More information제이쿼리 (JQuery) 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호
제이쿼리 () 정의 자바스크립트함수를쉽게사용하기위해만든자바스크립트라이브러리. 웹페이지를즉석에서변경하는기능에특화된자바스크립트라이브러리. 사용법 $( 제이쿼리객체 ) 혹은 $( 엘리먼트 ) 참고 ) $() 이기호를제이쿼리래퍼라고한다. 즉, 제이쿼리를호출하는기호 CSS와마찬가지로, 문서에존재하는여러엘리먼트를접근할수있다. 엘리먼트접근방법 $( 엘리먼트 ) : 일반적인접근방법
More informationchap 5: Trees
5. Threaded Binary Tree 기본개념 n 개의노드를갖는이진트리에는 2n 개의링크가존재 2n 개의링크중에 n + 1 개의링크값은 null Null 링크를다른노드에대한포인터로대체 Threads Thread 의이용 ptr left_child = NULL 일경우, ptr left_child 를 ptr 의 inorder predecessor 를가리키도록변경
More information( )부록
A ppendix 1 2010 5 21 SDK 2.2. 2.1 SDK. DevGuide SDK. 2.2 Frozen Yoghurt Froyo. Donut, Cupcake, Eclair 1. Froyo (Ginger Bread) 2010. Froyo Eclair 0.1.. 2.2. UI,... 2.2. PC 850 CPU Froyo......... 2. 2.1.
More information[ 그림 8-1] XML 을이용한옵션메뉴설정방법 <menu> <item 항목ID" android:title=" 항목제목 "/> </menu> public boolean oncreateoptionsmenu(menu menu) { getme
8 차시메뉴와대화상자 1 학습목표 안드로이드에서메뉴를작성하고사용하는방법을배운다. 안드로이드에서대화상자를만들고사용하는방법을배운다. 2 확인해볼까? 3 메뉴 1) 학습하기 [ 그림 8-1] XML 을이용한옵션메뉴설정방법 public boolean
More informationMicrosoft PowerPoint 웹 연동 기술.pptx
웹프로그래밍및실습 ( g & Practice) 문양세강원대학교 IT 대학컴퓨터과학전공 URL 분석 (1/2) URL (Uniform Resource Locator) 프로토콜, 호스트, 포트, 경로, 비밀번호, User 등의정보를포함 예. http://kim:3759@www.hostname.com:80/doc/index.html URL 을속성별로분리하고자할경우
More informationA Hierarchical Approach to Interactive Motion Editing for Human-like Figures
단일연결리스트 (Singly Linked List) 신찬수 연결리스트 (linked list)? tail 서울부산수원용인 null item next 구조체복습 struct name_card { char name[20]; int date; } struct name_card a; // 구조체변수 a 선언 a.name 또는 a.date // 구조체 a의멤버접근 struct
More information어댑터뷰
04 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adapter View) 커스텀어댑터뷰 (Custom Adatper View) 란? u 어댑터뷰의항목하나는단순한문자열이나이미지뿐만아니라, 임의의뷰가될수 있음 이미지뷰 u 커스텀어댑터뷰설정절차 1 2 항목을위한 XML 레이아웃정의 어댑터정의 3 어댑터를생성하고어댑터뷰객체에연결
More information안드로이드기본 11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 -
11 차시어댑터뷰 1 학습목표 어댑터뷰가무엇인지알수있다. 리스트뷰와스피너를사용하여데이터를출력할수있다. 2 확인해볼까? 3 어댑터뷰 1) 학습하기 어댑터뷰 - 1 - ArrayAdapter ArrayAdapter adapter = new ArrayAdapter(this, android.r.layout.simple_list_item_1,
More information기술문서 작성 XXE Attacks 작성자 : 인천대학교 OneScore 김영성 I. 소개 2 II. 본문 2 가. XML external entities 2 나. XXE Attack 3 다. 점검방법 3 라.
기술문서 14. 11. 10. 작성 XXE Attacks 작성자 : 인천대학교 OneScore 김영성 dokymania@naver.com I. 소개 2 II. 본문 2 가. XML external entities 2 나. XXE Attack 3 다. 점검방법 3 라. Exploit 5 마. 피해 6 III. 결론 6 가. 권고사항 6 I. 소개 가. 역자 본문서는
More information제8장 자바 GUI 프로그래밍 II
제8장 MVC Model 8.1 MVC 모델 (1/7) MVC (Model, View, Controller) 모델 스윙은 MVC 모델에기초를두고있다. MVC란 Xerox의연구소에서 Smalltalk 언어를바탕으로사용자인터페이스를개발하기위한방법 MVC는 3개의구성요소로구성 Model : 응용프로그램의자료를표현하기위한모델 View : 자료를시각적으로 (GUI 방식으로
More informationPowerPoint Presentation
Package Class 3 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section
More informationMicrosoft PowerPoint - Ajax
박태정 [akasha.park@gmail.com] 1 Ajax(Asynchronous JavaScript) JavaScript 에의한비동기적인통신으로 XML 기반의데이터를클라이언트인웹브라우저와서버사이에서교환 페이지의이동없이웹브라우저화면을동적변경 Ajax 장점 서버측의부담중일부를웹클라이언트에게넘겨주게되어서버어플리케이션성능향상 웹브라우저는요청을송신하면응답을기다리지않는다
More informationMicrosoft PowerPoint - ch09 - 연결형리스트, Stack, Queue와 응용 pm0100
2015-1 프로그래밍언어 9. 연결형리스트, Stack, Queue 2015 년 5 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) 연결리스트 (Linked List) 연결리스트연산 Stack
More informationMicrosoft PowerPoint - hci2-lecture12 [호환 모드]
Serialization C# Serialization 321190 2012 년가을학기 11/28/2012 박경신 Serializaiton( 직렬화 ) 란객체상태를지속시키거나전송할수있는형식으로변환하는과정으로, Serialization 반대로다시객체로변환하는것을 Deserialization 임 Serialization i 을사용하는이유 객체의상태를저장소에보존했다가나중에똑같은복사본을다시만들기위하거나,
More information17장 클래스와 메소드
17 장클래스와메소드 박창이 서울시립대학교통계학과 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 1 / 18 학습내용 객체지향특징들객체출력 init 메소드 str 메소드연산자재정의타입기반의버전다형성 (polymorphism) 박창이 ( 서울시립대학교통계학과 ) 17 장클래스와메소드 2 / 18 객체지향특징들 객체지향프로그래밍의특징 프로그램은객체와함수정의로구성되며대부분의계산은객체에대한연산으로표현됨객체의정의는
More informationJUNIT 실습및발표
JUNIT 실습및발표 JUNIT 접속 www.junit.org DownLoad JUnit JavaDoc API Document 를참조 JUNIT 4.8.1 다운로드 설치파일 (jar 파일 ) 을다운로드 CLASSPATH 를설정 환경변수에서설정 실행할클래스에서 import JUnit 설치하기 테스트실행주석 @Test Test 를실행할 method 앞에붙임 expected
More informationPowerPoint Presentation
객체지향프로그래밍 클래스, 객체, 메소드 ( 실습 ) 손시운 ssw5176@kangwon.ac.kr 예제 1. 필드만있는클래스 텔레비젼 2 예제 1. 필드만있는클래스 3 예제 2. 여러개의객체생성하기 4 5 예제 3. 메소드가추가된클래스 public class Television { int channel; // 채널번호 int volume; // 볼륨 boolean
More informationMicrosoft PowerPoint - web-part02-ch15-문서객체조작.pptx
과목명 : 웹프로그래밍응용교재 : 모던웹을위한 JavaScript Jquery 입문, 한빛미디어 Part2. jquery Ch15. 문서객체조작 2014년 1학기 Professor Seung-Hoon Choi 15 문서객체조작 문서객체조작 자바스크립트만으로문서객체모델을다루려면복잡함 jquery를이용하면쉽게다룰수있다. 이책에서가장중요한부분 15.1 문서객체의클래스속성추가
More informationChapter 4. LISTS
C 언어에서리스트구현 리스트의생성 struct node { int data; struct node *link; ; struct node *ptr = NULL; ptr = (struct node *) malloc(sizeof(struct node)); Self-referential structure NULL: defined in stdio.h(k&r C) or
More informationMicrosoft PowerPoint - 04-UDP Programming.ppt
Chapter 4. UDP Dongwon Jeong djeong@kunsan.ac.kr http://ist.kunsan.ac.kr/ Dept. of Informatics & Statistics 목차 UDP 1 1 UDP 개념 자바 UDP 프로그램작성 클라이언트와서버모두 DatagramSocket 클래스로생성 상호간통신은 DatagramPacket 클래스를이용하여
More information9 차시고급위젯다루기 1 학습목표 날짜 / 시간과관련된위젯을배운다. 웹뷰를사용하여간단한웹브라우저기능을구현한다. 매니패스트파일의설정법을배운다. 2 확인해볼까? 3 날짜 / 시간위젯 1) 활동하기 활동개요
9 차시고급위젯다루기 1 학습목표 날짜 / 시간과관련된위젯을배운다. 웹뷰를사용하여간단한웹브라우저기능을구현한다. 매니패스트파일의설정법을배운다. 2 확인해볼까? 3 날짜 / 시간위젯 1) 활동하기 활동개요 [ 그림 9-1] 시간예약앱 활동과정 - 2 - [ 그림 9-2] 안드로이드 SDK Manager [ 예제 9-1]main.xml 1
More informationPowerPoint Presentation
Class - Property Jo, Heeseung 목차 section 1 클래스의일반구조 section 2 클래스선언 section 3 객체의생성 section 4 멤버변수 4-1 객체변수 4-2 클래스변수 4-3 종단 (final) 변수 4-4 멤버변수접근방법 section 5 멤버변수접근한정자 5-1 public 5-2 private 5-3 한정자없음
More informationC# Programming Guide - Types
C# Programming Guide - Types 최도경 lifeisforu@wemade.com 이문서는 MSDN 의 Types 를요약하고보충한것입니다. http://msdn.microsoft.com/enus/library/ms173104(v=vs.100).aspx Types, Variables, and Values C# 은 type 에민감한언어이다. 모든
More informationPowerPoint 프레젠테이션
@ Lesson 2... ( ). ( ). @ vs. logic data method variable behavior attribute method field Flow (Type), ( ) member @ () : C program Method A ( ) Method B ( ) Method C () program : Java, C++, C# data @ Program
More informationJAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각
JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( http://java.sun.com/javase/6/docs/api ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각선의길이를계산하는메소드들을작성하라. 직사각형의가로와세로의길이는주어진다. 대각선의길이는 Math클래스의적절한메소드를이용하여구하라.
More information12-file.key
11 (String).. java.lang.stringbuffer. s String s = "abcd"; s = s + "e"; a b c d e a b c d e ,., "910359,, " "910359" " " " " (token) (token),, (delimiter). java.util.stringtokenizer String s = "910359,,
More informationNetwork Programming
Part 5 확장된 Network Programming 기술 1. Remote Procedure Call 2. Remote Method Invocation 3. Object Request Broker 2. Java RMI
More information목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper 클래스작성 - JSONParser 클래스작성 공공
메신저의새로운혁신 채팅로봇 챗봇 (Chatbot) 입문하기 소 이 메 속 : 시엠아이코리아 름 : 임채문 일 : soulgx@naver.com 1 목차 INDEX JSON? - JSON 개요 - JSONObject - JSONArray 서울시공공데이터 API 살펴보기 - 요청인자살펴보기 - Result Code - 출력값 HttpClient - HttpHelper
More informationMicrosoft PowerPoint - web-part03-ch20-XMLHttpRequest기본.pptx
과목명 : 웹프로그래밍응용교재 : 모던웹을위한 JavaScript Jquery 입문, 한빛미디어 Part3. Ajax Ch20. XMLHttpRequest 2014년 1학기 Professor Seung-Hoon Choi 20 XMLHttpRequest XMLHttpRequest 객체 자바스크립트로 Ajax를이용할때사용하는객체 간단하게 xhr 이라고도부름 서버
More informationMobile Service > IAP > Android SDK [ ] IAP SDK TOAST SDK. IAP SDK. Android Studio IDE Android SDK Version (API Level 10). Name Reference V
Mobile Service > IAP > Android SDK IAP SDK TOAST SDK. IAP SDK. Android Studio IDE 2.3.3 Android SDK Version 2.3.3 (API Level 10). Name Reference Version License okhttp http://square.github.io/okhttp/ 1.5.4
More informationDocsPin_Korean.pages
Unity Localize Script Service, Page 1 Unity Localize Script Service Introduction Application Game. Unity. Google Drive Unity.. Application Game. -? ( ) -? -?.. 준비사항 Google Drive. Google Drive.,.. - Google
More informationMasoJava4_Dongbin.PDF
JSTORM http://wwwjstormpekr Issued by: < > Revision: Document Information Document title: Document file name: MasoJava4_Dongbindoc Revision number: Issued by: < > SI, dbin@handysoftcokr
More information쉽게 풀어쓴 C 프로그래밊
Power Java 제 27 장데이터베이스 프로그래밍 이번장에서학습할내용 자바와데이터베이스 데이터베이스의기초 SQL JDBC 를이용한프로그래밍 변경가능한결과집합 자바를통하여데이터베이스를사용하는방법을학습합니다. 자바와데이터베이스 JDBC(Java Database Connectivity) 는자바 API 의하나로서데이터베이스에연결하여서데이터베이스안의데이터에대하여검색하고데이터를변경할수있게한다.
More informationJMF2_심빈구.PDF
JMF JSTORM http://wwwjstormpekr Issued by: < > Document Information Document title: Document file name: Revision number: Issued by: JMF2_ doc Issue Date: Status: < > raica@nownurinet
More informationrmi_박준용_final.PDF
(RMI) - JSTORM http://wwwjstormpekr (RMI)- Document title: Document file name: Revision number: Issued by: Document Information (RMI)- rmi finaldoc Issue Date: Status:
More informationSpring Data JPA Many To Many 양방향 관계 예제
Spring Data JPA Many To Many 양방향관계예제 오라클자바커뮤니티 (ojc.asia, ojcedu.com) 엔티티매핑 (Entity Mapping) M : N 연관관계 사원 (Sawon), 취미 (Hobby) 는다 : 다관계이다. 사원은여러취미를가질수있고, 하나의취미역시여러사원에할당될수있기때문이다. 보통관계형 DB 에서는다 : 다관계는 1
More information한국학 온라인 디지털 자원 소개
XSL 의이해 김현한국학중앙연구원인문정보학교실 hyeon@aks.ac.kr 이저작물 (PPT) 의인용표시방법 : 김현, XSL 의이해, 전자문서와하이퍼텍스트 수업자료 (2018) 1. XSL 이란? 2. XSL Elements 3. XSL 에의한문서표현 1. XSL이란? XSL 관련개념 XSL (extensible Stylesheet Language) 문서의스타일을정의하기위한언어
More information03장
CHAPTER3 ( ) Gallery 67 68 CHAPTER 3 Intent ACTION_PICK URI android provier MediaStore Images Media EXTERNAL_CONTENT_URI URI SD MediaStore Intent choosepictureintent = new Intent(Intent.ACTION_PICK, ë
More information슬라이드 1
UNIT 6 배열 로봇 SW 교육원 3 기 학습목표 2 배열을사용핛수있다. 배열 3 배열 (Array) 이란? 같은타입 ( 자료형 ) 의여러변수를하나의묶음으로다루는것을배열이라고함 같은타입의많은양의데이터를다룰때효과적임 // 학생 30 명의점수를저장하기위해.. int student_score1; int student_score2; int student_score3;...
More informationConnection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET
135-080 679-4 13 02-3430-1200 1 2 11 2 12 2 2 8 21 Connection 8 22 UniSQLConnection 8 23 8 24 / / 9 3 UniSQL 11 31 OID 11 311 11 312 14 313 16 314 17 32 SET 19 321 20 322 23 323 24 33 GLO 26 331 GLO 26
More informationMicrosoft PowerPoint - ch07 - 포인터 pm0415
2015-1 프로그래밍언어 7. 포인터 (Pointer), 동적메모리할당 2015 년 4 월 4 일 교수김영탁 영남대학교공과대학정보통신공학과 (Tel : +82-53-810-2497; Fax : +82-53-810-4742 http://antl.yu.ac.kr/; E-mail : ytkim@yu.ac.kr) Outline 포인터 (pointer) 란? 간접참조연산자
More informationMicrosoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]
- Socket Programming in Java - 목차 소켓소개 자바에서의 TCP 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 Q/A 에코프로그램 - EchoServer 에코프로그램 - EchoClient TCP Programming 1 소켓소개 IP, Port, and Socket 포트 (Port): 전송계층에서통신을수행하는응용프로그램을찾기위한주소
More information강의 개요
DDL TABLE 을만들자 웹데이터베이스 TABLE 자료가저장되는공간 문자자료의경우 DB 생성시지정한 Character Set 대로저장 Table 생성시 Table 의구조를결정짓는열속성지정 열 (Clumn, Attribute) 은이름과자료형을갖는다. 자료형 : http://dev.mysql.cm/dc/refman/5.1/en/data-types.html TABLE
More information임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과
임베디드시스템설계강의자료 6 system call 2/2 (2014 년도 1 학기 ) 김영진 아주대학교전자공학과 System call table and linkage v Ref. http://www.ibm.com/developerworks/linux/library/l-system-calls/ - 2 - Young-Jin Kim SYSCALL_DEFINE 함수
More information@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a
1 대 1 단방향, 주테이블에외래키실습 http://ojcedu.com, http://ojc.asia STS -> Spring Stater Project name : onetoone-1 SQL : JPA, MySQL 선택 http://ojc.asia/bbs/board.php?bo_table=lecspring&wr_id=524 ( 마리아 DB 설치는위 URL
More informationJAVA PROGRAMMING 실습 08.다형성
2015 학년도 2 학기 1. 추상메소드 선언은되어있으나코드구현되어있지않은메소드 abstract 키워드사용 메소드타입, 이름, 매개변수리스트만선언 public abstract String getname(); public abstract void setname(string s); 2. 추상클래스 abstract 키워드로선언한클래스 종류 추상메소드를포함하는클래스
More information(Microsoft PowerPoint - java1-lecture11.ppt [\310\243\310\257 \270\360\265\345])
예외와예외클래스 예외처리 514760-1 2016 년가을학기 12/08/2016 박경신 오류의종류 에러 (Error) 하드웨어의잘못된동작또는고장으로인한오류 에러가발생되면 JVM실행에문제가있으므로프로그램종료 정상실행상태로돌아갈수없음 예외 (Exception) 사용자의잘못된조작또는개발자의잘못된코딩으로인한오류 예외가발생되면프로그램종료 예외처리 추가하면정상실행상태로돌아갈수있음
More informationPowerPoint Presentation
Package Class 1 Heeseung Jo 목차 section 1 패키지개요와패키지의사용 section 2 java.lang 패키지의개요 section 3 Object 클래스 section 4 포장 (Wrapper) 클래스 section 5 문자열의개요 section 6 String 클래스 section 7 StringBuffer 클래스 section
More information교육자료
THE SYS4U DODUMENT Java Reflection & Introspection 2012.08.21 김진아사원 2012 SYS4U I&C All rights reserved. 목차 I. 개념 1. Reflection 이란? 2. Introspection 이란? 3. Reflection 과 Introspection 의차이점 II. 실제사용예 1. Instance의생성
More informationMicrosoft PowerPoint - 03-TCP Programming.ppt
Chapter 3. - Socket in Java - 목차 소켓소개 자바에서의 프로그램작성방법 주요클래스와메소드 HTTP 프로토콜을이용한예제 에코프로그램 에코프로그램 - EchoServer 에코프로그램 - EchoClient Q/A 1 1 소켓소개 IP,, and Socket 포트 (): 전송계층에서통신을수행하는응용프로그램을찾기위한주소 소켓 (Socket):
More informationC++ Programming
C++ Programming 예외처리 Seo, Doo-okok clickseo@gmail.com http://www.clickseo.com 목 차 예외처리 2 예외처리 예외처리 C++ 의예외처리 예외클래스와객체 3 예외처리 예외를처리하지않는프로그램 int main() int a, b; cout > a >> b; cout
More informationXML Parser
XML Parser 6 조 20080945 이성훈 20081005 이재환 20111519 김기순 목차 1. Parsing의정의, 필요성 2. DOM Parser 3. SAX Parser 4. XML Pull Parser 1. Parsing 의정의, 필요성 Parsing 이란? 주어진문장을분석하거나문법적관계를해석하는것 Parsing 의필요성 프로그래밍이간편 플랫폼독립적프로그래밍언어에구애받지않음
More information리스트 (list), 선형리스트 (linear list): 순서를가진항목들의모임 집합 : 항목간의순서의개념이없음 L = n ( item0, item1,..., item -1) l 리스트의예 l 요일 : ( 일요일, 월요일,, 토요일 ) l 한글자음의모임 : ( ㄱ, ㄴ
00. 리스트 자료구조 01. 링크드 리스트 02. 더블 링크드 리스트 03. 환형 링크드 리스트 리스트 (list), 선형리스트 (linear list): 순서를가진항목들의모임 집합 : 항목간의순서의개념이없음 L = n ( item0, item1,..., item -1) l 리스트의예 l 요일 : ( 일요일, 월요일,, 토요일 ) l 한글자음의모임 : (
More informationPowerPoint 프레젠테이션
@ Lesson 3 if, if else, if else if, switch case for, while, do while break, continue : System.in, args, JOptionPane for (,, ) @ vs. logic data method variable Data Data Flow (Type), ( ) @ Member field
More information<443A5C4C C4B48555C B3E25C32C7D0B1E25CBCB3B0E8C7C1B7CEC1A7C6AE425CBED0C3E0C7C1B7CEB1D7B7A55C D616E2E637070>
#include "stdafx.h" #include "Huffman.h" 1 /* 비트의부분을뽑아내는함수 */ unsigned HF::bits(unsigned x, int k, int j) return (x >> k) & ~(~0
More information제11장 프로세스와 쓰레드
제9장자바쓰레드 9.1 Thread 기초 (1/5) 프로그램 명령어들의연속 (a sequence of instruction) 프로세스 / Thread 실행중인프로그램 (program in execution) 프로세스생성과실행을위한함수들 자바 Thread 2 9.1 Thread 기초 (2/5) 프로세스단위작업의문제점 프로세스생성시오버헤드 컨텍스트스위치오버헤드
More informationWeek13
Week 13 Social Data Mining 02 Joonhwan Lee human-computer interaction + design lab. Crawling Twitter Data OAuth Crawling Data using OpenAPI Advanced Web Crawling 1. Crawling Twitter Data Twitter API API
More information1장. 리스트
01. 링크드리스트 02. 더블링크드리스트 03. 환형링크드리스트 배열과는달리유연하게크기를바꿀수있는자료구조 각노드는다음노드를가리키는포인터를가짐. 각노드를다음노드를가리키는포인터로연결하여만든리스트. Single Linked List 라고도함. 링크드리스트의첫번째노드를헤드 (Head), 마지막노드를테일 (Tail) 이라고한다. C 언어로표현하는링크드리스트의노드 typedef
More information02 C h a p t e r Java
02 C h a p t e r Java Bioinformatics in J a va,, 2 1,,,, C++, Python, (Java),,, (http://wwwbiojavaorg),, 13, 3D GUI,,, (Java programming language) (Sun Microsystems) 1995 1990 (green project) TV 22 CHAPTER
More information원형연결리스트에대한설명중틀린것은 모든노드들이연결되어있다 마지막에삽입하기가간단한다 헤더노드를가질수있다 최종노드포인터가 NULL이다 리스트의 번째요소를가장빠르게찾을수있는구현방법은무엇인가 배열 단순연결리스트 원형연결리스트 이중연결리스트 단순연결리스트의노드포인터 가마지막노드를
리스트에대한설명중틀린것은 구조체도리스트의요소가될수있다 리스트의요소간에는순서가있다 리스트는여러가지방법으로구현될수있다 리스트는집합과동일하다 다음은순차적표현과연결된표현을비교한것이다 설명이틀린것은 연결된표현은포인터를가지고있어상대적으로크기가작아진다 연결된표현은삽입이용이하다 순차적표현은연결된표현보다액세스시간이많이걸린다 연결된표현으로작성된리스트를 개로분리하기가쉽다 다음은연결리스트에서있을수있는여러가지경우를설명했는데잘못된항목은
More information<322EBCF8C8AF28BFACBDC0B9AEC1A6292E687770>
연습문제해답 5 4 3 2 1 0 함수의반환값 =15 5 4 3 2 1 0 함수의반환값 =95 10 7 4 1-2 함수의반환값 =3 1 2 3 4 5 연습문제해답 1. C 언어에서의배열에대하여다음중맞는것은? (1) 3차원이상의배열은불가능하다. (2) 배열의이름은포인터와같은역할을한다. (3) 배열의인덱스는 1에서부터시작한다. (4) 선언한다음, 실행도중에배열의크기를변경하는것이가능하다.
More information학습목표 메뉴를추가하는방법을이해하고실습할수있다. 프로그램의기본설정 (settings) 을정의하는방법을알고실습할수있다. 대화상자를여는방법을알고실습할수있다. 로그메시지로디버깅하는방법을이해한다. 디버거로디버깅하는방법을이해한다.
헬로, 안드로이드 4 주차 사용자인터페이스디자인하기 (2) 강대기동서대학교컴퓨터정보공학부 학습목표 메뉴를추가하는방법을이해하고실습할수있다. 프로그램의기본설정 (settings) 을정의하는방법을알고실습할수있다. 대화상자를여는방법을알고실습할수있다. 로그메시지로디버깅하는방법을이해한다. 디버거로디버깅하는방법을이해한다. 차례 메뉴추가하기 Settings 추가하기 새게임시작하기
More informationFrama-C/JESSIS 사용법 소개
Frama-C 프로그램검증시스템소개 박종현 @ POSTECH PL Frama-C? C 프로그램대상정적분석도구 플러그인구조 JESSIE Wp Aorai Frama-C 커널 2 ROSAEC 2011 동계워크샵 @ 통영 JESSIE? Frama-C 연역검증플러그인 프로그램분석 검증조건추출 증명 Hoare 논리에기초한프로그램검증도구 사용법 $ frama-c jessie
More informationAnalytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Cras
Analytics > Log & Crash Search > Unity ios SDK [Deprecated] Log & Crash Unity ios SDK. TOAST SDK. Log & Crash Unity SDK Log & Crash Search. Log & Crash Unity SDK... Log & Crash Search. - Unity3D v4.0 ios
More information<4D F736F F F696E74202D20C1A63038C0E520C5ACB7A1BDBABFCD20B0B4C3BC4928B0ADC0C729205BC8A3C8AF20B8F0B5E55D>
Power Java 제 8 장클래스와객체 I 이번장에서학습할내용 클래스와객체 객체의일생직접 메소드클래스를 필드작성해 UML 봅시다. QUIZ 1. 객체는 속성과 동작을가지고있다. 2. 자동차가객체라면클래스는 설계도이다. 먼저앞장에서학습한클래스와객체의개념을복습해봅시다. 클래스의구성 클래스 (class) 는객체의설계도라할수있다. 클래스는필드와메소드로이루어진다.
More information2 Application Name: Day10_yhg <LinearLayout android:layout_weight="3" > /> an
1 Application Name: Day10_yhg 예제 10-9 activity_main.xml
More information금오공대 컴퓨터공학전공 강의자료
C 프로그래밍프로젝트 Chap 14. 포인터와함수에대한이해 2013.10.09. 오병우 컴퓨터공학과 14-1 함수의인자로배열전달 기본적인인자의전달방식 값의복사에의한전달 val 10 a 10 11 Department of Computer Engineering 2 14-1 함수의인자로배열전달 배열의함수인자전달방식 배열이름 ( 배열주소, 포인터 ) 에의한전달 #include
More information슬라이드 1
Pairwise Tool & Pairwise Test NuSRS 200511305 김성규 200511306 김성훈 200614164 김효석 200611124 유성배 200518036 곡진화 2 PICT Pairwise Tool - PICT Microsoft 의 Command-line 기반의 Free Software www.pairwise.org 에서다운로드후설치
More information3장
C H A P T E R 03 CHAPTER 03 03-01 03-01-01 Win m1 f1 e4 e5 e6 o8 Mac m1 f1 s1.2 o8 Linux m1 f1 k3 o8 AJAX
More informationPowerPoint 프레젠테이션
System Software Experiment 1 Lecture 5 - Array Spring 2019 Hwansoo Han (hhan@skku.edu) Advanced Research on Compilers and Systems, ARCS LAB Sungkyunkwan University http://arcs.skku.edu/ 1 배열 (Array) 동일한타입의데이터가여러개저장되어있는저장장소
More information슬라이드 1
6-1 리스트 (list) 란순서를가진항목들을표현하는자료구조 리스트를구현하는두가지방법 배열 (array) 을이용하는방법 구현간단 삽입, 삭제시오버헤드 항목의개수제한 연결리스트 (linked list) 를이용하는방법 구현복잡 삽입, 삭제가효율적 크기가제한되지않음 6-2 객체 : n 개의 element 형으로구성된순서있는모임 연산 : add_last(list,
More informationMicrosoft PowerPoint - 11주차_Android_GoogleMap.ppt [호환 모드]
Google Map View 구현 학습목표 교육목표 Google Map View 구현 Google Map 지원 Emulator 생성 Google Map API Key 위도 / 경도구하기 위도 / 경도에따른 Google Map View 구현 Zoom Controller 구현 Google Map View (1) () Google g Map View 기능 Google
More information예제 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
제 10 장상속 예제 1) ConstructorTest.java class Parent public Parent() super - default"); public Parent(int i) this("hello"); super(int) constructor" + i); public Parent(char c) this(); super(char) constructor
More informationPowerPoint Presentation
자바프로그래밍 1 배열 손시운 ssw5176@kangwon.ac.kr 배열이필요한이유 예를들어서학생이 10 명이있고성적의평균을계산한다고가정하자. 학생 이 10 명이므로 10 개의변수가필요하다. int s0, s1, s2, s3, s4, s5, s6, s7, s8, s9; 하지만만약학생이 100 명이라면어떻게해야하는가? int s0, s1, s2, s3, s4,
More informationMicrosoft PowerPoint 자바-기본문법(Ch2).pptx
자바기본문법 1. 기본사항 2. 자료형 3. 변수와상수 4. 연산자 1 주석 (Comments) 이해를돕기위한설명문 종류 // /* */ /** */ 활용예 javadoc HelloApplication.java 2 주석 (Comments) /* File name: HelloApplication.java Created by: Jung Created on: March
More informationJAVA PROGRAMMING 실습 09. 예외처리
2015 학년도 2 학기 예외? 프로그램실행중에발생하는예기치않은사건 예외가발생하는경우 정수를 0으로나누는경우 배열의크기보다큰인덱스로배열의원소를접근하는경우 파일의마지막부분에서데이터를읽으려고하는경우 예외처리 프로그램에문제를발생시키지않고프로그램을실행할수있게적절한조치를취하는것 자바는예외처리기를이용하여예외처리를할수있는기법제공 자바는예외를객체로취급!! 나뉨수를입력하시오
More informationchap 5: Trees
Chapter 5. TREES 목차 1. Introduction 2. 이진트리 (Binary Trees) 3. 이진트리의순회 (Binary Tree Traversals) 4. 이진트리의추가연산 5. 스레드이진트리 (Threaded Binary Trees) 6. 히프 (Heaps) 7. 이진탐색트리 (Binary Search Trees) 8. 선택트리 (Selection
More information슬라이드 1
UNIT 16 예외처리 로봇 SW 교육원 3 기 최상훈 학습목표 2 예외처리구문 try-catch-finally 문을사용핛수있다. 프로그램오류 3 프로그램오류의종류 컴파일에러 (compile-time error) : 컴파일실행시발생 럮타임에러 (runtime error) : 프로그램실행시발생 에러 (error) 프로그램코드에의해서해결될수없는심각핚오류 ex)
More information04장
20..29 1: PM ` 199 ntech4 C9600 2400DPI 175LPI T CHAPTER 4 20..29 1: PM ` 200 ntech4 C9600 2400DPI 175LPI T CHAPTER 4.1 JSP (Comment) HTML JSP 3 home index jsp HTML JSP 15 16 17 18 19 20
More informationNetwork Programming
XML 문서처리 (extensible Markup Language) 김덕태 (deogtae@yahoo.co.kr) Bi Consulting. Co., Ltd. 2000년 4월 1 목차 XML(eXtensible Markup Language) 소개 XML 문법의개요 XML 이름공간 : 서로다른규격의 XML 문서들을통합할수있는표준 XML 링킹표준 : XML 문서들을서로연결시킬수있는확장된링킹표준
More informationMicrosoft PowerPoint - java1-lab5-ImageProcessorTestOOP.pptx
2018 학년도 1 학기 JAVA 프로그래밍 II 514760-1 2018 년봄학기 5/10/2018 박경신 Lab#1 (ImageTest) Lab#1 은영상파일 (Image) 을읽어서정보를출력 Java Tutorials Lesson: Working with Images https://docs.oracle.com/javase/tutorial/2d/images/index.html
More informationLab 3. 실습문제 (Single linked list)_해답.hwp
Lab 3. Singly-linked list 의구현 실험실습일시 : 2009. 3. 30. 담당교수 : 정진우 담당조교 : 곽문상 보고서제출기한 : 2009. 4. 5. 학과 : 학번 : 성명 : 실습과제목적 : 이론시간에배운 Singly-linked list를실제로구현할수있다. 실습과제내용 : 주어진소스를이용해 Singly-linked list의각함수를구현한다.
More informationEclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 11 년 10 월 26 일수요일
Eclipse 와 Firefox 를이용한 Javascript 개발 발표자 : 문경대 Introduce Me!!! Job Jeju National University Student Ubuntu Korean Jeju Community Owner E-Mail: ned3y2k@hanmail.net Blog: http://ned3y2k.wo.tc Facebook: http://www.facebook.com/gyeongdae
More informationPowerPoint 프레젠테이션
실습 1 배효철 th1g@nate.com 1 목차 조건문 반복문 System.out 구구단 모양만들기 Up & Down 2 조건문 조건문의종류 If, switch If 문 조건식결과따라중괄호 { 블록을실행할지여부결정할때사용 조건식 true 또는 false값을산출할수있는연산식 boolean 변수 조건식이 true이면블록실행하고 false 이면블록실행하지않음 3
More information09-interface.key
9 Database insert(record r): boolean find(key k): Record 1 Record getkey(): Key * Record Key Database.? Key equals(key y): boolean Database insert(record r): boolean find(key k): Record * Database OK 1
More information01-OOPConcepts(2).PDF
Object-Oriented Programming Concepts Tel: 02-824-5768 E-mail: hhcho@selabsoongsilackr? OOP (Object) (Encapsulation) (Message) (Class) (Inheritance) (Polymorphism) (Abstract Class) (Interface) 2 1 + = (Dependency)
More informationPowerPoint 프레젠테이션
Application Framework 어플리케이션프레임워크 발표자 : 김준섭 이문서는나눔글꼴로작성되었습니다. 다운받기 목차 Application Framework. 1. 통지관리자 (Notification Manager) 2. 리소스관리자 (resource manager) 3. 레이아웃인플레이터매니저 (Layout Inflater Manager) Notification
More information작성자 : 김성박\(삼성 SDS 멀티캠퍼스 전임강사\)
Session 을이용한현재로그인한사용자의 숫자구하기 작성자 : 김성박 ( 삼성 SDS 멀티캠퍼스전임강사 ) email : urstory@nownuri.net homepage : http://sunny.sarang.net - 본문서는http://sunny.sarang.net JAVA강좌란 혹은 http://www.javastudy.co.kr 의 칼럼 란에서만배포합니다.
More informationI 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
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 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 Jakarta is a Project of the Apache
More information11장 포인터
누구나즐기는 C 언어콘서트 제 9 장포인터 이번장에서학습할내용 포인터이란? 변수의주소 포인터의선언 간접참조연산자 포인터연산 포인터와배열 포인터와함수 이번장에서는포인터의기초적인지식을학습한다. 포인터란? 포인터 (pointer): 주소를가지고있는변수 메모리의구조 변수는메모리에저장된다. 메모리는바이트단위로액세스된다. 첫번째바이트의주소는 0, 두번째바이트는 1, 변수와메모리
More information리니어레이아웃 - 2 -
4 차시레이아웃 1 학습목표 레이아웃의개념을이해한다. 중복리니어레이아웃의개념이해한다. 2 확인해볼까? 3 레이아웃개념익히기 1) 학습하기 [ 그림 4-1] ViewGroup 클래스계층도 리니어레이아웃 - 2 - [ 예제 4-1]orientation 속성-horizontal 1
More information