twilight_teatime의 등록된 링크

키자드에 등록된 총 511개의 포스트를 확인하실 수 있습니다.

Naver Blog

[ Mac ] 맥에서 Parallels 를 통해 리눅스 ( CentOS ) 설치하기. [ su: Authentication failure 에러 해결. ]

패러럴즈로 Linux 가상 OS 를 설치해 보겠습니다. 패러럴즈는 버튼만 딱딱 누르면 자동으로 CentOS를 설치해주는데요. 우선 새로운 가상머신을 만들어 봅시다. 이때 설치할수 있는 가상 운영체제는 여러개를 지원해 줍니다. 그중에 설치할 운영체제를 선택해 줍니다. 그리고 계속을 누르면 설치가 됩니다. 다운로드가 끝나고 압축을 풀게 되면 일단 설치 완료입니다.! 부팅이 되면 사용자를 등록하게 되는데 이때 비밀번호를 설정해줍니다. 기본적인 포맷 , 언어를 설정해 줍니다. 키보드의 경우 CentOS 7에서는 한글 키보드 설정이 지원됩니다. 패러럴즈로 설치할 경우 디스플레이 등등의 세팅이 자동으로 이루어지며 설치가 완료됩니다. CentOS 7 에는 Java 가 기본적으로 제공되는걸 볼 수 있습니다. (하지만, 삭제하고 다시 설치를 해야....) 이제 Mac의 Parallels 설정으로 돌아와 가상 OS 의 하드웨어를 설정해 줍니다. 네트워크 브릿지로 설정하여 아이피를 할당받습니다. 설치완

Naver Blog

[ jquery confirm ] 웹 프로그래밍, 페이지 이동전 물어보기. [ 소스코드 ]

웹 페이지를 이동할 때, 사용자에게 페이지의 처리에 대해 알려주기 위해 alert(); 를 많이 사용해 왔다. 요청에 따른 페이지 이동 시에 사용자에게 이동 여부를 묻고 싶었다. 이때 confirm() 이 유용하게 쓰인다 아래는 예제 소스 코드이다. 1 2 3 4 5 6 7 8 $(function)(){ if(confirm("마이페이지로 이동하시겠습니까?") == true){ location.href="myPage.do"; }else{ location.href="index.do"; } } Colored by Color Scripter cs 스크립트 안에서 사용하면 되겠다.

Naver Blog

[ Mybatis ] Mybatis 동적 SQL 질의문, 게시판 검색어 기능 ( 소스코드 )

웹프로그래밍 [ Mybatis ] Mybatis 동적 SQL 질의문, 게시판 검색어 기능 ( 소스코드 ) 사진찍는 개발자 2018. 1. 11. 0:30 이웃추가 본문 기타 기능 Mybatis MVC 패턴의 간단한 게시판 웹 프로그래밍 예제 소스 코드입니다. 웹 서비스에서의 요청과 데이터베이스 사이의 알고리즘 순서는 웹 - Servlet - Controller - dao - manager - mapper 단계입니다. << 게시판의 리스트를 가져오는 Controller >> ** searchField 와 keyword로 제목 및 작성자에 대한 키워드 검색이 가능합니다. @RequestMapping("list.do") public ModelAndView list(String searchField, String keyword) { if (keyword != null && keyword.equals("")) { keyword = null; } ModelAndView view = new Mo

Naver Blog

[ Mybatis ] Mybatis 를 이용하여 CRUD 사용해보기. ( 소스코드 )

데이터베이스의 CRUD를 간단하게 Mybatis로 경험해보겠습니다. << Controller >> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 @Controller public class DeptController { private DeptDao dao; public void setDao(DeptDao dao) { this.dao = dao; } @RequestMapping("listDept.do") public ModelAndView list() { ModelAndView view = new ModelA

Naver Blog

Java 와 R 연동하기, 간단한 예제. 이클립스 ( Eclipse ) [소스코드]

빅데이터 분석도구인 R 을 Java 와 연결해 보겠습니다. 자바에서 프로그램 R 을 호출하기 위해서는 아래와 같은 패키지들이 필요합니다. JRI - http://www.rforge.net/JRI/ Rserve - http://rforge.net/Rserve/ RSession (Rserve wrapper) - https://code.google.com/p/rsession/ RCaller - https://code.google.com/p/rcaller/ Renjin - https://code.google.com/p/renjin/ RCaller 의 패키지를 사용하려면 R 에서 R Package : Runiversal 를 설치하여야합니다. 1 2 install.packages("Runiversal") cs 라이브러리는 해당 링크를 통하여 xxx.jar 파일을 받아 이클립스에 추가하여 줍니다. meven 을 이용할 경우에는 pom.xml 에 추가해 줍니다.! 1 2 3 4 5 6 <depen

Naver Blog

Java 와 R 연동하기, R 차트를 Spring 웹으로 서비스하기. ( STS ) [소스코드]

Spring 프레임워크로, R을 프로그래밍하여 생성된 차트를 웹 페이지에 출력하겠습니다. Rserve 패키지를 사용하는 방법은 https://blog.naver.com/twilight_teatime/221185099354 Java 와 R 연동하기, 간단한 예제. 이클립스 ( Eclipse ) [소스코드] 빅데이터 분석도구인 R 을 Java 와 연결해 보겠습니다. 자바에서 프로그램 R 을 호출하기 위해서는 아래... blog.naver.com 에서 참고하여 주세요. viewPage 의 jsp 는 생략하겠습니다. < 예제 소스코드 > 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 /** * Handles requests for the application h

Naver Blog

R document 사이트 링크 [ 라이브러리 ]

R R document 사이트 링크 [ 라이브러리 ] 사진찍는 개발자 2018. 1. 15. 0:56 이웃추가 본문 기타 기능 R 의 패키지들의 클래스를 정리한 사이트이다. http://rforge.net/org/doc/ Generated Documentation (Untitled) rforge.net Rserve 패키지의 클래스를 정리한 사이트이다. http://www.rforge.net/Rserve/ Rserve - Binary R server - RForge.net Rserve is a TCP/IP server which allows other programs to use facilities of R (see www.r-project.org ) from various languages without the need to initialize R or link against R library. Every connection has a separate workspace and wor

Naver Blog

Pic #1

사진 Pic #1 사진찍는 개발자 2018. 1. 15. 1:51 이웃추가 본문 기타 기능

Naver Blog

Pic #2

사진 Pic #2 사진찍는 개발자 2018. 1. 15. 1:56 이웃추가 본문 기타 기능

Naver Blog

( OS X ) Mac 에서 R 한글깨짐 해결하기. #1 [ wordcloud 한글깨짐 , R 그래프 라이브러리 한글적용 ]

Window 환경에서의 R 의 한글 깨짐 현상은 드문 일이지만, Mac의 환경에서는 너무나 빈번하게 맞닥뜨린다. 그래프의 ㅁ 으로 한글 깨짐.. 을 만나게 되었다. R 의 wordcloud 패키지를 사용하는데 결과물이 이렇게 나왔습니다.. 첫 번째 방법. wordcloud 와 같은 그래프 라이브러리 R 명령어에 family="AppleGothic" 인자를 추가해주는 방법입니다. 하지만 이 방법으로는 적용되지 않는 라이브러리들이 있습니다. treemap.. 1 2 3 wordcloud(names(wordcount),freq=wordcount,scale=c(5,1),rot.per=0.25,min.freq=1, random.order=F,random.color=T,colors=palete ,family="AppleGothic") Colored by Color Scripter cs legend로 제목을 지정할 때에는 함수 사용 전에 명령어를 추가해 줍니다. 1 2 par(family="Ap

Naver Blog

( OS X ) Mac 에서 R 한글깨짐 해결하기. #2 [ 한글폰트사용 , R 기본인코딩설정 , read.csv 한글깨짐 ]

R Quartz 에서 한글들이 ㅁ 으로 표시되는 문제를, R 의 한글깨짐 해결 #1 에서 family="AppleGothic" 을 함수안에 추가하여 한글깨짐을 해결하셨나요? 맥 환경의 R에서는 기본폰트가 한글을 지원하지 않기 때문인데요. 한글을 적용할 수 있는 폰트를 찾아보는 방법을 우선 설명해 드리겠습니다. R 콘솔에서 아래 명령어를 입력해 줍니다. 1 2 3 4 5 6 install.packages('extrafont') library('extrafont') font_import() #맥에 설치된 폰트를 R로 가져옴. fonts() #가져온 폰트목록 Colored by Color Scripter cs 폰트를 확인했다면 AppleGothic 말고도 다른 폰트를 사용해보실 수 있습니다 !. < R 한글 깨짐 해결하기 > 1. R 기본 인코딩 설정. Mac에 R을 설치하면 언어가 한글로 나와야 하는데 경고가 뜨기도 하고, 한글이 \123\245\1552 이런 식으로 나오진 않았나요?

Naver Blog

Mac 터미널을 이용하여 파일의 인코딩을 UTF-8으로 변경하기.

R을 이용할 때. txt .csv를 가져와 데이터를 다룰 때가 있습니다. 그런데 파일을 열어보면 << "도큐멘트을 열 수 없습니다. 유니코드(UTF-8) 텍스트 인코딩이 적용되지 않습니다." >> 라는 에러 메시지가 나오며 파일이 열리지 않거나, R에서 텍스트 한글이 깨져 보이게 됩니다. 이때 Mac 의 터미널로 인코딩하는 방법이 있습니다. 1 2 iconv -c -f euc-kr -t utf-8 abc.txt > abc_UTF8.txt Colored by Color Scripter cs 터미널에서 위의 명령어를 입력하여 줍니다. abc.txt 의 파일을 abc_UTF8.txt 로 인코딩 설정하여 저장하는 명령어입니다.

Naver Blog

[ 게시판 ] 답글의 처리.

etc. [ 게시판 ] 답글의 처리. 사진찍는 개발자 2018. 1. 21. 23:01 이웃추가 본문 기타 기능 << 답글의 처리 >> b_ref : 서로 관련있는 글 임을 묶어 주기 위한 그룹 b_level : 답글의 계층(깊이)을 위한 변수 b_step : 답글의 순서를 위한 변수 새글일때 b_ref는 글번호 no와 동일하게 하고 b_level, b_step은 0으로 설정한다. 답글일때 b_ref는 부모글의 b_ref와 동일하게한다. b_level은 부모글의 b_level보다 1증가한 값을 설정한다. 이미 달려 있는 답글들의 b_step을 1씩증가한다. 부모글의 b_step보다 1증가한 값을 설정한다.

Naver Blog

[ 게시판 구현하기 ] Java 스트러츠(서블릿) 방식의 웹 게시판 만들기 ( 검색기능, 페이징처리, 파일업로드 )

게시판 웹페이지의 기본적인 템플릿 틀. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 <body> <table border="1" width="100%" height="100%" cellpadding="0" cellspacing="0"> <tr> <td colspan="2"> <jsp:include page="top.jsp"/> </td> </tr> <tr> <td width="200"> <jsp:include page="left.jsp"/> </td> <td> <jsp:include page="${viewPage }"/> </td> </tr> <tr> <td colspan="2"> <jsp:include page="bottom.jsp"/> </td> </tr> </table> </body> Colored by Color Scripter cs 스트러츠방식의 java 웹 프로그래밍은 @WebServlet에 의하여

Naver Blog

[ Mybatis ] Spring 회원가입에서 이메일 인증을 받아 가입승인 받기. ( 소스코드 ) _ Java Mail API

Spring으로 회원가입 웹 프로그래밍을 하고, 이메일 인증을 받는 예제 소스 코드입니다. << pom.xml 추가 >> Java Mail API를 사용하기 위해 추가할 dependency입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 <!-- 메일발송 지원 기능 --> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context-support</artifactId> <version>${org.springframework-version}</version> </dependency> <!-- Java Mail API --> <dependency> <groupId>javax.mail</groupId> <artifactId>mail</artifactId> <version>1.4.7</version> </dependency> Colored by Color Scripter cs 승인 키를 보낼

Naver Blog

[ jQuery ] 지정 태그의 값과 속성 변경 및 내용 변경하기.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 <body> <input type="text" name="text01" value="value01" /> <input type="text" name="text02" value="value02" style="color:red;"> <a href="http://www.naver.com" id="aTag">네이버</a> <table id="tableTag"> <tr class="hello"> <td>안녕</td> </tr> </table> <textarea name="txtarea" rows="8" cols="80"> content </textarea> </body> Colored by Color Scripter cs <script type="text/javascript"> </script> 스크립트 태그 안에는 jQuery 문법이 올수 있습니다. $(document).ready(function(){ }) == $

Naver Blog

[ jQuery Moblie ] 나의 아이콘 이미지로 jquerymobile 버튼에 아이콘 지정하기. ( 모바일 웹 앱 )

jQuery Mobile에서는 표준 아이콘 클래스를 지정해두고 있습니다. 표준 아이콘 클래스의 아이콘 이미지 말고, 나의 아이콘 이미지를 가지고 버튼을 만들려고 합니다. 주의할 점은 css 가 형성된 다음에 아이콘 style을 생성해줘야 한다는 점입니다. 그리고 style에서 아이콘의 이미지 클래스 지정은. ui-icon-[나만의 아이콘 이름]{ } 형식입니다. 1 2 3 4 5 6 7 8 9 <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.min.css" /> <style type="text/css"> .ui-icon-contract1{ background-image: url("../resources/icon/contract.png") } </style> <script src="http://code.jquery.com/jquery-1.9.1.min.js"></script> <sc

Naver Blog

[ jQuery Moblie ] listview ajax 통신하기.( 소스코드 )

jQuery Moblie 의 data-role="listview" 을 이용하여, 리스트를 표현하고자 한다. 리스트의 값은, Ajax 통신을 통해 데이터베이스( Oracle )에서 List를 가져오고자 한다. 하지만, jQuery Moblie ui를 적용하기 위해 해야 할 것이 있다. 모바일-ui가 적용되지 않았던 문제를 해결하기 위해선, listview("refresh");을 스크립트에서 할 필요가 있다. < 예시 소스 코드 .jsp> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 <%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>

Naver Blog

[ Mac & iPhone ] Mac과 아이폰의 Handoff 기능과 핫스팟 연결 문제 해결하기.

MacOS [ Mac & iPhone ] Mac과 아이폰의 Handoff 기능과 핫스팟 연결 문제 해결하기. 사진찍는 개발자 2018. 1. 22. 19:54 이웃추가 본문 기타 기능 아이폰을 초기화하고 나니, 그동안 잘 되던 맥과 아이폰의 클립보드 공유 기능에 문제가 생겼다. 그리고 확인을 해보니 사파리를 양 기기 간 공유하는 기능도 먹통이더라, 이는 두기기간의 Handoff 기능의 문제인데, 네이버 카페 ' 맥 쓰는 사람들 '의 emong 님의 해결 방법으로 해결하였다. 1. Mac iPhone & iPad 간의 클립보드 공유 문제. 2. Mac iPhone & iPad 간의 사파리 공유 문제. 3. iPhone의 핫스팟 연결 문제. 아래는 emong 님의 해결 방법이다. 반드시 아래 순서대로 아이클라우드 계정을 로그아웃-로그인 해보시기 바랍니다. I. 디바이스가 2대일 때 (ex: 아이맥/맥북/아이패드 + 아이폰) 1) 아이맥/맥북/아이패드에서 로그아웃 2) 아이폰 로그아웃 3

Naver Blog

[ jQuery Mobile ] jQuery Mobile의 기본 버튼에 대해서 알아보자.

jQueryMobile 에서는 <a> 태그를 사용하여 기본 버튼을 만들수 있습니다. ------- 1 2 <a href="#" data-role="button">버튼글자</a> Colored by Color Scripter cs ** 버튼을 포함하고있는 컨테이너의 폭 만큼 확장되어 버튼이 나옵니다. ------- ------- 1 2 <a href="#" data-role="button" data-inline="true">버튼글자</a> Colored by Color Scripter cs ** 버튼의 크기가 버튼 글자의 크기만큼 작아지게 됩니다. ------- ------- 1 2 <a href="#" data-role="button" style="width:200px">버튼글자</a> Colored by Color Scripter cs ** 버튼 크기에 강제적으로 크기를 지정하였다. ------- ------- data-iconpos로 버튼의 icon 위치를 지정할 수 있으며, 버

Naver Blog

[ jQuery Mobile ] jQuery Mobile의 Collapsible 블록 사용하기. ( 소스 코드 )

jQuery Mobile 의 Collapsible를 이용하면 콘텐츠 영역을 접었다 펼 칠 수 있는 UI를 제공받을 수 있다. 콘텐츠를 감싸고 있는 <div> 태그에 data-role="collapsible" 속성을 지정함으로 사용할 수 있으며, <div> 태그 안에 처음 정의된 <h> 태그가 Collapsible 블록의 타이틀로 지정된다. 해당 블록은 기본적으로 접혀진 상태로 나타내지지만, data-collapsed="false" 속성을 추가한다면, 펼쳐진 상태로 나타낼 수 있다. 여러 개의 Collapsible 블록을 하나의 그룹으로 구성하고, 그룹화된 블록들은 상호작용을 하여 그룹의 하나의 블록만 펼쳐지게 된다. 그룹화하기 위해서는 data-role="collapsible-set" 속성을 준 <div>로 블록들을 감싸주면 된다. < 예제 소스 코드 > 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

Naver Blog

[ jQuery Mobile ] jQuery Mobile의 모바일 환경에 더욱 최적화된 폼 양식 사용하기. ( 소스 코드 )

모바일에서 접근할 모바일 웹에서, 디바이스의 터치로 접근될 최적화된 form 양식이 있다. <div data-role="fieldcontain"> 태그를 이용하면 된다. 이때, 폼 양식을 설명하는 <label> 태그의 for 속성에다가 input 태그의 id와 값을 매칭해줘야, 두 태그가 서로 연결된다. < 예제 소스 코드 > 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 <div data-role="page"> <div data-role="header"> <h1>Field Container</h1> </div> <div data-role="content"> <form id="joinForm" method="post" action="#"> <div data-role="fieldcontain"> <label for="name">Name:</label> <input id="name" type="text" name="

Naver Blog

[ API ] 도로명주소 오픈 API를 활용하여 도로명주소 검색기능, JSP로 구현하기.

웹 프로그래밍 개발 시에는 회원가입이 있고, 회원가입에는 회원의 주소 정보를 입력받을 경우가 있습니다. 이때 주소를, 미래의 회원에게 직접 입력받기보다 도로명주소 검색을 통해 보다 정확하게 받으려고 합니다. 이때 도로명주소 오픈 API가 있습니다. 오픈 API는 도로명주소 에서 제공됩니다. API 체험하기 | 도로명주소 개발자센터 팝업 API 활용 - 팝업 API 화면 예시 닫기 검색어 예 : 도로명(반포대로 58), 건물명(독립기념관), 지번(삼성동 25) 도로명주소 표기방법 서울특별시 마포구 성암로 301, 105동 123호(상암동) 주소입력화면 소스보기 팝업API 호출 소스보기 API정보/요청변수/출력결과 보기 가이드 및 소스 다운로드 ( JSP | ASP | PHP ) - 팝업 API 출력유형 선택하기 (검색결과를 출력유형에 따라 다르게 조회하실 수 있습니다.) 출력유형 선택 도로명주소 + 지번 + 상세건물명(기본) 도로명주소 + 상... www.juso.go.kr 서비스는

Naver Blog

[ App ] 스마트폰을 PC의 마우스, 트랙 패드로 사용하기.

후기 [ App ] 스마트폰을 PC의 마우스, 트랙 패드로 사용하기. 사진찍는 개발자 2018. 1. 27. 14:38 이웃추가 본문 기타 기능 아이폰을 맥의 트랙패드처럼 쓸 수 없을까? 하며, 어플을 찾아보았습니다. 소개해 드릴 어플의 이름은 [ WiFi Mouse ] 입니다. 설치 링크 : http://wifimouse.necta.us/#setup WiFi Mouse - use your phone control computer Amazing Features Besides basic input, one to four fingers could make multitouch getures control computer. Voice input replace typing text on Keyboard. With media controller you can relax on the sofa and control Netflix, Hulu, Spotify or YouTube in the comfo

Naver Blog

[ 공공데이터 ] 공공데이터 (JSON) 을 R 로 가공하고, data.frame 을 이용하여 웹 프로그래밍하기. (JSP) [ mobile web , 데이터 list , googleMap , 전화걸기 ]

[서울시 공공데이터] 서울시의 공공 데이터, 안심 먹거리 JSON을 가져와서 모바일 웹으로 안심 먹거리 식당을 출력하는 서비스를 만들어 보겠습니다. 안심 먹거리 식당의 리스트는 링크 에서 다운로드 받을 수 있습니다. 데이터 이용하기> 데이터셋 | 서울열린데이터광장 서울안심먹거리 목록 정보 평가 활용갤러리등록 URL복사 상세정보 닫기 목록 분류 보건 원본시스템 바로가기 서울시 식품안전정보 홈페이지 저작권자 서울특별시 (02-2133-4704) 제공기관 서울특별시 제3저작권자 없음 담당자 안준혁 (02-2133-4704) 원본형태 DB 데이터공개일자 2012.07.25 갱신주기 수시 제공부서 시민건강국 식품정책과 태그 맛집 , 추천 음식점 , 안심업소 , 안심정보 , 통합인증 , 안심먹을거리 , 인증업소 , 서울 , 안심 , 먹거리 이용허락조건 저작권자표시(BY) 이용이나 변경 및 ... data.seoul.go.kr .ajax 통신으로 json 파일을 직접 연결하여 리스트를 출력해

Naver Blog

[ JSON ] R에서 json 파일 다루기.

R 에서 json을 data.frame 과 백터로, 다시 data.frame을 json으로 변환하는 방법입니다. jsonlite 라이브러리 사용. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 library(jsonlite) library(rjson) #json 형식 파일을 읽어오는 라이브러리 #json 파일 가져오기 fromJSON("list.json") data <- fromJSON('listTest.json') #data를 data.frame 으로 가져옵니다. data <- data$DATA ; data #"$"를 이용해서 특정 값을 벡터값으로 가져오게됩니다. #특정 키워드가 포함된 주소들을 가져옵니다. key <- grep('마포' , data$ctf_addr , value=T) #검색한 키워드의 주소들과 매치되는 data만을 출력합니다. result <- subset(data, select = c(ctf_name , ctf_

Naver Blog

scanf 스캔 에프에 공백이 들어가는 이유.

C 언어 scanf 스캔 에프에 공백이 들어가는 이유. 사진찍는 개발자 2018. 1. 29. 13:00 이웃추가 본문 기타 기능 scanf 함수는 어떤 사용자가 입력한 데이터를 변수에 담아주는 기능을 합니다. int input; scanf("%d", &input); 이런 식으로 쓰면 input 변소 안에 사용자가 입력한 수가 들어가죠 10을 입력했다면 10 이 들어갑니다. 그런데 여기서 사용자가 콘솔 입력창에 1과 0을 누르고 '엔터키'를 누른 순간 값이 들어가는데 엔터키는 곧 공백(scanf 입장에서 값의 경계)이라고도 볼 수 있고요 엔터키(\n)를 기준으로 값이 아 10까지 구나고 판단하는 겁니다. 추가적으로 엔터키는 줄바꿈 값 \n 값이 버퍼에 남아있는 문제가 있긴 합니다.... 확장해서 scnaf("%d %d", &input1, &input2) 이렇게 두 개라면 사용자가 10 쓰고 '스페이스' 누르고 11을 입력했따면 10과 11이 들어가게 되는데 이 둘의 구분 또한 '스페

Naver Blog

[ jQuery Moblie ] swipe 이벤트로 모바일 웹페이지 이동하기. ( 예제 소스코드 )

swipe는 모바일 기기에서의 쓸어넘기는 터치 기능입니다. 쓸어넘기기 동작으로 페이지가 이동되는 예제입니다. < 실행 화면 > ** jquery 버전과 jquery Mobile 의 버전은 낮은 버전으로 해야 제대로 된 동작을 합니다. < head & script 소스코드 > 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no" /> <link rel="stylesheet" href="http://code.jquery.com/mobile/1.3.2/jquery.mobile-1.3.2.mi

Naver Blog

[ node.js ] Error: 'app.router' is deprecated! 해결하기.

Node.js [ node.js ] Error: 'app.router' is deprecated! 해결하기. 사진찍는 개발자 2018. 1. 30. 13:07 이웃추가 본문 기타 기능 app.use(app.router); 라우터 미들웨어를 사용하려고 했지만 이런 에러를 만나게 되었다. Please see the 3.x to 4.x migration guide for details on how to update your app. 3.x 버전에서 4.x 버전으로 업데이트 되면서 사용할 수 없다고 한다. app.router를 이제 사용하지 말고 바로 app.get을 사용해보자, app.get("/update.do" , function(request, response){ response.send("<h2>글 수정하기</h2>"); });

Naver Blog

[ node.js ] 외부모듈 express 를 이용하여, 서버구동 및 (json, xml, html)페이지 접근하기. ( 간단 예제 소스코드 )

node.js 가 설치가 완료되었다고 가정하고. npm 을 이용해서 외부 모듈 [ express ]를 설치해 줍니다. cmd , terminal에서 명령어를 입력합니다. 1 2 npm install express --save cs package.json 을 초기 정의하지 않았다면, 경고문이 나타날 수 있습니다. .js 확장자로 가동할 서버를 코딩해 줍니다. < server.js 소스코드> 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 var http = require("http"); var express = require("express"); var app = express(); var items

Naver Blog

[ Node.js ] node 서버를 MongoDB와 연결하기. ( 간단 예제 소스코드 ) _Node.js 와 MongoDB연동.

Node.js로 서버를 손쉽게 가동 할 수 있습니다. DB와 연동한다면 데이터베이스의 값들을 node 서버로 가져올 수 있을 것입니다. ** 데이터베이스 MongoDB와 연결하기 위해 npm mongodb 버전은 2.2 버전을 기준으로 작성하였습니다. 우선 필요한 외부 모듈부터 설치해 줍니다. CMD 혹은 terminal에 명령어를 입력해 줍니다. 1 2 3 4 npm install express --save npm install co --save npm install [email protected] --save cs mongodb와 연동된 node서버를 구동시켜줍니다. 1 2 node server.js cs < server.js 소스코드 > 몽고디비와 Node.js를 연동하는 CRUD 심플 예제는 공식 MongoDB사이트에서 볼 수 있습니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31

Naver Blog

[ Node.js ] MongoDB 와 Node.js을 연동하여 게시판 만들어보기. ( 소스코드 )

Node.js [ Node.js ] MongoDB 와 Node.js을 연동하여 게시판 만들어보기. ( 소스코드 ) 사진찍는 개발자 2018. 1. 31. 17:56 이웃추가 본문 기타 기능 Node.js 의 express 모듈을 통해 서버를 가동하고, 데이터베이스는 MongoDB인 게시판을 만들어 보겠습니다. 우선 필요한 모듈을 다운로드합니다. npm install [email protected] --save npm install co --save npm install [email protected] --save express에서 express.bodyParser() 을 사용하기 위해 버전을 @3.4.7로 설치하였습니다. bodyParser 미들웨어는 JSON을 POST 하고 또는 다른 데이터 (JSON)를 파싱하고 바디에 반환하는 방법입니다. app.router(옵션)는 애플리케이션의 라우팅을 마운트 하는데 사용됩니다. 이것을 사용하지 않으면 첫 번째 app.get()과 app.post() 등의 호

Naver Blog

[ Node.js ] ObjectID로 MongoDB에 '_id' 값 실어주기. ( BSON & npm( objectid ))

Node.js [ Node.js ] ObjectID로 MongoDB에 '_id' 값 실어주기. ( BSON & npm( objectid )) 사진찍는 개발자 2018. 1. 31. 18:20 이웃추가 본문 기타 기능 Java 혹은 Node에서 _id 을 도큐먼트에 조건식으로 사용하려면 ObjectID( ) 로 파싱 할 필요가 있습니다. 우선 Script 부분에서 주소창에 get 방식으로 전달된 _id 쿼리 스트링을 가져오는 방법입니다. var id = location.search.substring(location.search.indexOf("=")+1); Node.js에서 JSON 을 가져오는 방법입니다. app.use(express.bodyParser()); var id = request.param("_id"); 파싱을 위한, 첫 번째 방법으로는 npm( mongodb ) 모듈의 BSON을 이용한 방법입니다. var mongodb = require('mongodb'); var se

Naver Blog

[ Python ] 파이썬 print, 가로로 출력하기.

Python [ Python ] 파이썬 print, 가로로 출력하기. 사진찍는 개발자 2018. 2. 5. 11:50 이웃추가 본문 기타 기능 파이썬에서 반복문에서 print 를 사용하면 기본적으로 값들이 세로로 출력이 됩니다. 구구단이나 여러 출력에서는 가로로 나오는 값들이 필요합니다. 콘솔에 나타나는 결과는 아래와 같이 세로로 출력이 됩니다. [ 5,6,7,8 ] 5 6 4 5 6 .... print 가 가로로 출력이 되기 위해선 다음과 같은 추가가 필요합니다. # 끝에 , 를 붙여 줍니다. for i in range(len(a)): print a[i], # 3.x 버전의 파이썬 인터프리터에서는 end를 추가해 줍니다. for i in range(len(a)): print (a[i] , end = ' ')

Naver Blog

[ JavaScript ] 태그 및 액션. 이벤트 종류 와 목록.

JavaScript [ JavaScript ] 태그 및 액션. 이벤트 종류 와 목록. 사진찍는 개발자 2018. 2. 6. 23:30 이웃추가 본문 기타 기능 onabort 이미지의 다운로드를 중지할 때 (브라우저의 중지버튼) onactivate 개체가 활성화될 때 발생(태그의 기능이 작용할 때 발생하는 이벤트로 예를 들어 링크를 누를 경우 링크가 옮겨질때 발생하는 것을 감지하는 이벤트 핸들러) onafterprint 문서가 출력되거나 혹은 출력하기 위해 출력미리보기를 한 후에 발생 onafterupdate 데이터영역 개체에서 발생하는 이벤트로 데이터 소스 오브젝트내의 데이터가 업데이트 되었을 때 발생(데이터 개체부분 참조) onbeforeactivate 개체가 활성화 상태로 되기 바로 직전에 발생 (onactivate 참고) onbeforecopy 선택 영역이 시스템의 클립보드로 복사되기 바로 직전에 발생 onbeforecut 선택 영역이 지워지기 바로 직전에 발생 onbefore

Naver Blog

[ Linux ] 리눅스 명령어. ( 복사 이동 삭제 링크 ip.. )

Linux [ Linux ] 리눅스 명령어. ( 복사 이동 삭제 링크 ip.. ) 사진찍는 개발자 2018. 2. 8. 11:34 이웃추가 본문 기타 기능 리눅스에서 파일 복사, 파일 이름 변경, 파일 이동, 디렉토리 생성 및 삭제, 파일 삭제, 프로세스 ..등의 명령어를 알아보겠습니다. << 파일 복사 [cp] >> cp [옵션] [복사대상 파일] [복사할 목적위치] 옵션 [ -a ] : 파일의 구성과 속성까지 복사 [ -f ] : 강제 복사 [ -i ] : 덮어쓸 때. [ -p ] : 해당 파일의 소유자, 그룹, 퍼미션 유지 복사 [ -r ] : 하위 디렉토리와 파일까지 복사 << 파일 이름 변경/이동 [mv] >> mv [옵션] [대상 파일] [변경할 이름 또는 이동할 위치] 옵션 [ -f ] : 강제 이동 [ -i ] : 덮어쓰기. [ -b ] : 백업 파일 생성 [ -v ] : 파일 옮기는 과정 표시 << 디렉토리 생성/삭제 >> 생성 : mkdir [디렉토리 이름] 삭제

Naver Blog

[ Linux ] CentOS 사용자 관리 명령어 정리.

Linux [ Linux ] CentOS 사용자 관리 명령어 정리. 사진찍는 개발자 2018. 2. 8. 14:36 이웃추가 본문 기타 기능 << 사용자 추가 및 삭제 >> 추가 : useradd [옵션] [계정이름] [옵션] -d : 홈디렉토리를 지정 -g : 그룹을 지정해서 사용자를 생성한다. 해당그룹이 존재하는 상태에만 가능 >useradd -g group1 test2 : group1에 test2계정을 만든다. group1을 미리 만들어 놓을것 -G : 기본그룹이외에 추가로 지정그룹에 속하게 한다. -c : 사용자에 대한 설명을 추가한다. -s : 사용자 쉘을 지정하여 생성 -D : /etc/default/useradd에 설정된 유저추가에 대한 기본설정을 보여준다. 생성 : userdel [옵션] [계정이름] [옵션] -r : 사용자의 홈디렉토리를 제거 << 그룹 추가 및 삭제 >> 생성 : groupadd [옵션] [그룹이름] [옵션] -g [GID] : GID번호를 정해서

Naver Blog

[ Hadoop ] Linux에 [ CentOS 7 ] 하둡 설치하기. ( 환경 변수, 환경 세팅 )

Hadoop [ Hadoop ] Linux에 [ CentOS 7 ] 하둡 설치하기. ( 환경 변수, 환경 세팅 ) 사진찍는 개발자 2018. 2. 8. 16:23 이웃추가 본문 기타 기능 Mac 에 리눅스 [ CentOS ] 설치하기 : https://blog.naver.com/twilight_teatime/221158022227 리눅스에 자바 설치하기 : https://blog.naver.com/twilight_teatime/221075085765 패러럴즈로 설치한 CentOS 7을 준비하고, 해당 rpm에 JDK를 설치하여, 하둡 설치를 위한 환경을 마련해둡니다. CentOS 방화벽을 꺼두도록 합니다. systemctl stop firewalled :재부팅시에도 방화벽 끄기 systemctl mask firewalled 또는 systemctl disable firewalld 하둡을 설치할 계정에서 호스트 네임을 지정해줍니다. vi /etc/hostname hostname으로 할

Naver Blog

[ Hadoop ] 하둡 명령어 정리. (하둡 오류 해결)

Hadoop [ Hadoop ] 하둡 명령어 정리. (하둡 오류 해결) 사진찍는 개발자 2018. 2. 9. 16:43 이웃추가 본문 기타 기능 하둡 실행 확인 명령어 jps [ hadoop fs -옵션 ] [옵션] 파일 목록 보기 : ls, lsr 파일 용량 확인 : du, dus 파일 내용 보기 : cat, text 디렉토리 생성 : mkdir 파일 복사 : put, get, getmerge,cp,copyFromLocal,copyToLocal 파일 이동 : mv, moveFromLocal 카운트 값 조회 : count [경로] - 경로상의 폴더, 파일, 파일 사이즈를 보여줌 파일삭제, 디렉토리 삭제 : rm,rmr 파일의 마지막 내용 확인 : tail 권한변경 : chmod, chown, chgrp 0바이트파일 생성 : touchz 통계 정보 조회 : stat 복제 데이터 개수 변경 : setrep 휴지통 비우기 : expunge 파일 형식 확인 : test << 목록 보기 >>

Naver Blog

[ Oracle ] 오라클 (hostname 변경 후 오라클 구동 오류.) 오류 해결하기. ( ORA-27101: shared memory realm does not exist)

Oracle [ Oracle ] 오라클 (hostname 변경 후 오라클 구동 오류.) 오류 해결하기. ( ORA-27101: shared memory realm does not exist) 사진찍는 개발자 2018. 2. 9. 18:18 이웃추가 본문 기타 기능 에러 내용은 다음과 같다.. ERROR: ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist Linux-x86_64 Error: 2: No such file or directory 그래서 오라클을 다시 시작해 보려고 #sqlplus /nolog #conn sys /as sysdba #password : 비밀번호 적기 sql>shutdown immediate sql>startup open 위 명령을 실행해보았지만 실패.. 에러 메시지: ORA-01031: insufficient privileges 왠지 리눅스의 hostname을 변경했던

Naver Blog

[ type=&quot;range&quot; ] 기본 슬라이더부터 버튼이 2개인 슬라이더. ( range multiple slider)

웹프로그래밍 [ type="range" ] 기본 슬라이더부터 버튼이 2개인 슬라이더. ( range multiple slider) 사진찍는 개발자 2018. 2. 11. 22:07 이웃추가 본문 기타 기능 HTML에는 타입이 range, 슬라이더라고 불리는 기능이 있습니다. 기본적인 생김새는 버튼이 하나꼴인 모습입니다. <input type="range"> 속성에는 최솟값 최댓값 증가 값을 설정할 수 있습니다. <input type="range" min="5" max="10" step="2"> 슬라이더에 값에 따른 마크를 추가할 수도 있습니다. <input type="range" list="tickmarks"> <datalist id="tickmarks"> <option value="0"> <option value="10"> <option value="20"> <option value="30"> <option value="40"> <option value="50"> <option v

Naver Blog

[ jQuery Mobile ] SimpleDialog , 제이쿼리 모바일에서 제공되는 다이얼로그에 뒤에 기존 화면이 보이는 다이얼로그.

JavaScript [ jQuery Mobile ] SimpleDialog , 제이쿼리 모바일에서 제공되는 다이얼로그에 뒤에 기존 화면이 보이는 다이얼로그. 사진찍는 개발자 2018. 2. 11. 22:18 이웃추가 본문 기타 기능 기존 다이얼로그는 뒤에 기존 화면이 모이지 않습니다. 하지만 SimpleDialog를 사용하면 위 사진처럼 뒤에 화면이 보입니다. 사용방법, 예제 소스 코드 import <link rel="stylesheet" type="text/css" href="http://code.jquery.com/mobile/1.0.1/jquery.mobile-1.0.1.min.css" /> <link rel="stylesheet" type="text/css" href="http://dev.jtsage.com/cdn/simpledialog/latest/jquery.mobile.simpledialog.min.css" /> <script type="text/javascript" s

Naver Blog

[ jQuery ] 이벤트 할당 방식. ( bind(), live(), delegate(), on() )

JavaScript [ jQuery ] 이벤트 할당 방식. ( bind(), live(), delegate(), on() ) 사진찍는 개발자 2018. 2. 11. 22:26 이웃추가 본문 기타 기능 .bind() 이미 존재하는 DOM에 한해에서 이벤트를 지정할 수 있다. $([selecter]).bind(이벤트명, 이벤트처리함수); .live() 1.4 이하에서 미래의 DOM까지 이벤트를 할당했던 방식 $([selecter]).live(이벤트명, 이벤트처리함수); .delegate() 1.4에 추가되서 1.6 이하에서 미래의 DOM까지 이벤트를 할당했던 방식 $(document).delegate(셀렉터, 이벤트명, 이벤트처리함수); .on() 1.7에 추가되서 bind과 기존 live, delegate를 모두 처리할 수 있다. $([selecter]).on(이벤트명, 이벤트처리함수); // 현재 DOM만 $(document).on(이벤트명, 셀렉터, 이벤트처리함수); // 미래 D

Naver Blog

[ JSTL .jsp ] JSTL Foreach 문에서의 varStatus 속성. ( index, count, first, last, ... )

웹프로그래밍 [ JSTL .jsp ] JSTL Foreach 문에서의 varStatus 속성. ( index, count, first, last, ... ) 사진찍는 개발자 2018. 2. 12. 1:04 이웃추가 본문 기타 기능 jsp에서 반복문을 사용하려면 JSTL의 도움을 받아 <c:foreach>를 사용해야 합니다. forEach 문에서는 속성 중에 items 와 var 가 있는데, varStatus=" " 라는 속성도 있습니다. 이 속성을 이용하면 반복문의 수행 횟수나 반복문의 상태, 카운트 등을 활용하여 반복문을 더욱 다양하게 코딩할 수 있습니다. <c:foreach items=”${items}” var=”item” varStatus=”value”> ${value.current}<br/> <!– 현재 아이템 –> ${value.index}<br/> <!– 0부터의 순서 –> ${value.count}<br/> <!– 1부터의 순서 –> ${value.first}<br/>

Naver Blog

[ jQuery Mobile ] data-* 속성 정리.

JavaScript [ jQuery Mobile ] data-* 속성 정리. 사진찍는 개발자 2018. 2. 12. 1:22 이웃추가 본문 기타 기능 jQuery Mobile는 제이쿼리 ajax 개념으로 페이지의 여러 기능이 동작되는, 모바일 환경에 초점을 둔 ui이다. << data-role >> 레이아웃 : [ page / header / content / footer ] .. : [ navbar / button / listview / list-divider ...] << data-theme >> 옵션 : a,b,c.... ex) <div data-role="content" data-theme="b"></div> << data-rel >> 옵션 : [ back / dialog / external / panel ] << data-transition >> 옵션 : [ slide / slideUp / slideDown / fade / pop / flip / none / turn ..

Naver Blog

[ javaScript ] 이벤트 및 우클릭 방지 [펌]

JavaScript [ javaScript ] 이벤트 및 우클릭 방지 [펌] 사진찍는 개발자 2018. 2. 19. 11:43 이웃추가 본문 기타 기능 [ 이벤트(EVENT) ] <!DOCTYPE html> <head> <meta charset="utf-8"> <title></title> </head> <!-- [ 이벤트 등록 방식 ] 1. inline 방식 : 이벤트를 이벤트 대상의 태그 속성으로 지정하는 것. - 단점) : 정적인 html과 동적(제어역할)인 javascript를 분리시킬 수 없다. - 장점) : 쉽고, 가독성이 좋다. --> <!-- 자기자신을 참조하는 불편한 방법 --> <input type="button" id="target" onclick="alert('Hello, ' + document.getElementById('target').value);" value="button" /> <!--this를 통해서 간편하게 참조할 수 있다. --> <input typ

Naver Blog

[ javaScript ] HTML에서 자바스크립트 로드하기 [펌]

JavaScript [ javaScript ] HTML에서 자바스크립트 로드하기 [펌] 사진찍는 개발자 2018. 2. 19. 12:00 이웃추가 본문 기타 기능 BODY <body> 1. Javascript Inline 방식 : <input onclick="alert('hello world')" type="button" name="inline"><br/> 2. <h2 id="hw">script 태그 내에 삽입하는 방식 :</h2> <script type="text/javascript"> var hw = document.getElementById("hw"); hw.addEventListener("click",function(){ alert("hello world"); }) </script> <br/> 3. 외부 파일로 분리하는 방식 : <script type="text/javascript" src="./script2.js"></script> <br/> 4. 스크립트의 위치 : 스크립

Naver Blog

[ Python ] BeautifulSoup 이용하여, 네이버의 환율정보 가져오기. ( 소스코드 )

Python [ Python ] BeautifulSoup 이용하여, 네이버의 환율정보 가져오기. ( 소스코드 ) 사진찍는 개발자 2018. 2. 19. 12:36 이웃추가 본문 기타 기능 http://finance.naver.com/marketindex/ 의 원 달러 환율 정보를 가져와 보겠습니다. from bs4 import BeautifulSoup import urllib.request as req # HTML 가져오기 url = "http://finance.naver.com/marketindex/" res = req.urlopen(url) # HTML 분석하기 soup = BeautifulSoup(res, "html.parser") #원하는 데이터 추출하기 price = soup.select_one("div.head_info > span.value").string print("usd/krw = ",price) 결과 화면

Naver Blog

[ javaScript ] window 객체[ location, navigator, screen etc... ] _ 부모창 과 자식창의 데이터 주고받기 [펌]

JavaScript [ javaScript ] window 객체[ location, navigator, screen etc... ] _ 부모창 과 자식창의 데이터 주고받기 [펌] 사진찍는 개발자 2018. 2. 19. 12:50 이웃추가 본문 기타 기능 [ window 객체 ] Javascript 실행시 가장 상위에 존재하는 객체 변수를 선언하거나 함수 선언 시 window 객체 안에 선언됨 크롬에서 F12를 눌러 console 탭에서 window 객체를 입력해서 다양한 속성들을 조회해볼 수 있음. 표시된 웹 페이지의 정보에 접근하거나 변경을 할 수 있음. window.location : 현재 브라우저 창의 주소를 나타내는 객체 window.location.href : 브라우저 창에 입력된 주소, 변경 가능 ex) window.location.href = "이동하고자 하는 url " ex) window.location.replace = "이동하고자 하는 url" 위의 것과 차이점은

Naver Blog

[ 플러그인 ] STS , Eclipse(이클립스) javaScript를 자동완성( ctrl + space )해주는 플러그인 설치하기.

IDE [ 플러그인 ] STS , Eclipse(이클립스) javaScript를 자동완성( ctrl + space )해주는 플러그인 설치하기. 사진찍는 개발자 2018. 2. 19. 13:13 이웃추가 본문 기타 기능 이클립스와 STS IDE 툴에서 코딩을 할 때 자동완성을 지원해줘서 보다 빠른 코딩을 가능하게 해 줍니다. web 프로그래밍할 때 html은 자동완성을 기본적으로 지원하지만 Script에서는 자동완성이 되지 않습니다. 그래서 javaScript를 자동완성을 위해 플러그인을 설치합니다. 플러그인을 설치할 수 있는 Marketplace에 들어가 봅니다. Webclipse 을 검색하여 install 합니다. 설치가 완료되었다면 IDE를 재실행합니다. 환경설정에서 Ant - Editor - Content Assist / Enable auto activation을 활성화해줍니다. 설정이 끝나면 이제, script 의 자동완성( ctrl + space ) 이 지원됩니다.

Naver Blog

[ MongoDB ] Mac에 설치한 MongoDB 외부에서 접근하기. (homebrew)

MSSQL [ MongoDB ] Mac에 설치한 MongoDB 외부에서 접근하기. (homebrew) 사진찍는 개발자 2018. 2. 19. 16:55 이웃추가 본문 기타 기능 mongod는 mongodb 서버를 켜는 명령어이다. 외부에서 mongodb로 접근을 하려면 bind_ip 가 127.0.0.1 기본값으로 설정된 conf를 변경해줘야 하는데, homebrew로 몽고디비를 설치하니 conf 파일이 안 보인다. 정상적이라면 vim /etc/mongodb.conf 이 경로에 있어야 하는데 없다.. 그래서 mongod에 옵션으로 외부 접속을 허용하겠다. 우선 옵션을 정리하자면 --dbpath 데이터 파일을 저장하기 위한 디렉토리 경로 --bind_ip mongod 서버에 접근할 bind ip 주소 : 기본값은 127.0.01 --port mongod 서버에 접근할 포트 번호 : 기본값은 27017 --logpath 몽고디비 메세지를 기록할 로그 파일의 전체 경로이다. --logap

Naver Blog

[ Linux ] CentOS 7 방화벽 설정 및 포트 개방하기 (포트 추가, 포트 삭제, 허용 포트, 방화벽 끄기)

Linux [ Linux ] CentOS 7 방화벽 설정 및 포트 개방하기 (포트 추가, 포트 삭제, 허용 포트, 방화벽 끄기) 사진찍는 개발자 2018. 2. 20. 10:37 이웃추가 본문 기타 기능 방화벽 설정 << 방화벽 시작 >> # systemctl start firewalled << 방화벽 끄기 >> # systemctl stop firewalled :재부팅시에도 방화벽 끄기 # systemctl mask firewalled 또는 # systemctl disable firewalld << 방화벽 설정 적용 >> # firewall-cmd --reload - 포트설정시에 방화벽을 재 적용해줘야합니다. 포트 설정 << 포트 개방, 포트 허용하기 >> # firewall-cmd --permanent --zone=public --add-port=[_포트넘버_]/[_통신방식_] ex) firewall-cmd --permanent --zone=public --add-port=152

Naver Blog

[ Python ] error : urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certifi...

Python [ Python ] error : urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certifi... 사진찍는 개발자 2018. 2. 20. 11:08 이웃추가 본문 기타 기능 res = req.urlopen(url)을 사용하던 도중에 에러 메세지를 만났다. ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:777) urllib.error.URLError: <urlopen error [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:777)> 아래의 내용을 import 하면 위의 오류가 해결된다. import ssl ssl._create_default_https_context = ssl._create_unverified_contex

Naver Blog

[ Python ] 파이썬 : 로그인이 필요한 사이트에서 스크레이핑하기. ( 소스코드 )

Python [ Python ] 파이썬 : 로그인이 필요한 사이트에서 스크레이핑하기. ( 소스코드 ) 사진찍는 개발자 2018. 2. 20. 12:20 이웃추가 본문 기타 기능 로그인 권한이 필요한 웹페이지에서 필요한 정보를 스크레이핑하는 예제입니다. 마이페이지 서비스에서 나의 마일리지 정보를 가져오도록 하겠습니다. 실험할 사이트 링크 http://www.hanbit.co.kr/member/login.html - 로그인 페이지 http://www.hanbit.co.kr/myhanbit/myhanbit.html - 마이페이지 마이페이지는 권한이 필요합니다. 우선 페이지에서 로그인하는 처리가 어떻게 되는지 분석합니다. Preserve Log를 체크해야 사용자의 웹 페이지 이동경로(흐름)가 나타납니다. 로그인의 과정은 login.html 문서에서 <input> 태그의 name = m_id 와 name = m_passwd로 사용자가 입력한 아이디와 패스워드가 전달되는 것을 알 수 있습니다.

Naver Blog

[ Python ] 파이썬 크롤링 : 현 웹 페이지 안의 <a>링크로 연결되는 다른 페이지의 노드 정보 가져오기. (소스코드)

Python [ Python ] 파이썬 크롤링 : 현 웹 페이지 안의 <a>링크로 연결되는 다른 페이지의 노드 정보 가져오기. (소스코드) 사진찍는 개발자 2018. 2. 20. 12:36 이웃추가 본문 기타 기능 크롤링할 노드 값은 윤동주 / 하늘과 바람과 별과 시 의 자화상 시를 가져오는 방식입니다. << 소스 코드 >> from bs4 import BeautifulSoup import urllib.request as req import ssl ssl._create_default_https_context = ssl._create_unverified_context url = "https://ko.wikisource.org/wiki/%EC%A0%80%EC%9E%90:%EC%9C%A4%EB%8F%99%EC%A3%BC" res = req.urlopen(url) soup = BeautifulSoup(res, "html.parser") aList = soup.select("#mw-conte

Naver Blog

[공유] 이클립스 유용한 단축키 모음

출처 MadPlay's MadLife.|김탱 오늘은 이클립스의 기본적인 단축키에 대해서 알아보겠습니다. F1 : 도움말 F2 : 컴파일 에러 원인을 알려줌(컴파일 에러의 빨간 줄에 커서를 놓고 해당 키를 누름) F3 : 해당 변수 또는 메소드가 선언된 위치로 이동 F4 : 해당 클래스의 계층 구조를 보여줌(클래스 선택 후 해당 키를 누름) F5 : Step Into(디버깅 시 한 줄씩 실행 함수의 내부로 이동) F6 : Step Over(디버깅 시 한 줄씩 실행) F8 : 디버깅 계속 F11 : 디버깅 시작 F12 : Editor 창으로 이동한다 Alt + 좌우 방향키(← / →) : 이전 / 다음 작업 화면으로 이동 Ctrl + / : 한 줄(선택된 블록) 주석 처리 또는 해제 Ctrl + 콤마(,) 또는 점(.) : 다음 에러 또는 경고로 이동 Ctrl + F6 : Editor 창간의 이동(현재 탭에 열려있는 파일 간의 이동) Ctrl + F7 : View 이동 메뉴(콘솔, 패키

Naver Blog

[공유] 이클립스 테마 변경(배경 변경)

출처 MadPlay's MadLife.|김탱 이클립스(Eclipse)의 테마를 변경하는 방법에 대해서 알아보겠습니다. 배경 변경하는 이기도 하지요. 두 가지 방법이 있는데 우선 첫 번째로, 마켓 플레이스에 있는 플러그인을 설치하는 방법입니다! 자, 그럼 시작합니다! 1. 이클립스 실행! 2. Help → Eclise MarketPlace 클릭! 3. 검색창에 'color theme'를 검색한 후에 결과로 나온 'Eclipse Color Theme 1.0.0'을 설치합니다. (저 같은 경우 이미 설치되어있어서 Uninstall로 나오네요) 4. 설치 후에 Windows → Preferences 클릭! 5. General → Appearance → Color Theme로 들어가서 자신이 원하는 테마를 선택하면 끝! 참, 간단하죠? 다음으로는 컬러 테마를 다운로드해서 사용하는 방법입니다! 1. 이클립스 테마가 있는 http://www.eclipsecolorthemes.org/ 로 접속합니

Naver Blog

[공유] 자료구조와 알고리즘(Data Structure & Algorithm)

출처 MadPlay's MadLife.|김탱 자료구조와 알고리즘에 대해서 정리하고자 합니다! 자료구조(Data Structure)란? 일상생활에서 우리는 하루 중 해야 할 일들을 차례대로 수첩에 기록합니다. 또한, 책상에 책을 쌓으며 정리하기도 하고요. 학교에서 급식 먹을 때나 상점에서 물건을 계산할 때는 줄을 서기도 하고 영어사전의 경우 대부분 알파벳 순서대로 정리 되어 있습니다. 컴퓨터에는 폴더들이 계층적으로 조직화되어 있지요. 사람들이 사물을 정리하는 것과 마찬가지로 프로그램에서도 자료들을 정리하는 여러가지 구조들이 있는데 이를 자료구조(Data Structure) 라고 부릅니다. 일상생활에서의 자료구조는 무엇이 있을까요? 일상생활에서의 예시 자료 구조 물건(책)을 쌓아 놓음 스택 급식 또는 상점에서의 줄 큐 할일 리스트 리스트 영어사전 사전, 탐색구조 폴더 조직도 트리 자료구조의 예 배열 리스트 스택 큐 트리 그래프 그렇다면 알고리즘(Algorithm)이란? 주어진 문제를 처

Naver Blog

[공유] 소프트웨어 공학이란?

출처 MadPlay's MadLife.|김탱 소프트웨어 공학(Software Engineering)이란? 먼저 공학이란, 일반적으로 과학과 수학을 기초로 하여 구조나 기계, 생산 공정, 시스템 등을 생산에 합리적이고 체계적인 방법을 적용시키는 학문을 말합니다. 이러한 공학적 원리에 의해 소프트웨어를 개발하는 학문이 바로 소프트웨어 공학입니다. 컴퓨터 소프트웨어의 계획, 개발, 검사, 보수, 관리 등을 위한 기술과 그것을 연구하는 분야이며 소프트웨어의 규모가 커지고 복잡해짐에 따라 공학적인 접근으로 구조화 프로그래밍을 도입한 것! 개발 이전 단계(Pre-Development Process), 개발 단계(Development Process), 개발 이후 단계(Post-Development Process)로 구분할 수 있습니다. 소프트웨어 공학의 요소 방법 - 어떤 일을 수행하기 위해 적절한 방법이나 기법이 중요합니다. - 소프트웨어 공학은 소프트웨어를 구축하기 위한 기술적인 '방법 혹은

Naver Blog

[공유] 싱글톤 패턴(Singleton Pattern)

etc. [공유] 싱글톤 패턴(Singleton Pattern) 사진찍는 개발자 2018. 2. 20. 12:50 이웃추가 본문 기타 기능 출처싱글톤 패턴(Singleton Pattern)by 김탱 Singleton Pattern 싱글톤 패턴을 조심하고 피해야하는 안티 패턴이라고 보는 사람도 많다. 싱글톤 패턴이란? 싱글톤 패턴이란 클래스의 객체 개수를 제한시키는 방법입니다. 보통의 경우 패턴의 이름처럼 단 한 개의 객체만 존재하도록 강제합니다. 그럼 왜 하나만 제한할까요? 정말 간단하게 로그를 남기는 것으로 예로 들어봅시다. 프로그램이 시작되어 종료될 때까지 로그를 남기는 로거를 참조하여 에러나 구동 정보를 기록할텐데 로깅을 하기위해서 참조할 때마다 로거 객체를 생성해서 사용한다면 계속해서 자원을 소모하게 될 겁니다. 자바로 예를 들면, new( ) 를 통해 객체를 생성하는 경우 Heap 메모리 자원이 소모되기 때문이지요. 이러한 경우에는 단 하나만의 로거 객체를 이용해서 같은 객

Naver Blog

[ Python ] 파이썬으로 XML 분석하기. - 날씨별 지역 분류하기 ( 소스코드 )

Python [ Python ] 파이썬으로 XML 분석하기. - 날씨별 지역 분류하기 ( 소스코드 ) 사진찍는 개발자 2018. 2. 21. 10:10 이웃추가 본문 기타 기능 BeautifulSoup 을 이용하여 기상청의 xml 문서를 파일로 가져오고 가져온 파일을 분석하여 날씨별 지역을 분류하는 예제입니다. from bs4 import BeautifulSoup import urllib.request as req import os.path url = "http://www.weather.go.kr/weather/forecast/mid-term-rss3.jsp?stnId=108" savename = 'forecast.xml' if not os.path.exists(savename): req.urlretrieve(url, savename) xml = open(savename, "r", encoding="utf-8").read() soup = BeautifulSoup(xml, "html.

Naver Blog

[ 프로그래밍 용어 ] JSON 개념과 구조 _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] JSON 개념과 구조 _(개발 면접 질문) 사진찍는 개발자 2018. 2. 21. 10:30 이웃추가 본문 기타 기능 JSON ( javaScript Object Notation ) - 텍스트 데이터를 기반으로 하는 가벼운 데이터 형식. JSON은 자바스크립트에서 사용하는 객체 표기 방법을 기반으로 합니다. 다양한 소프트웨어와 프로그래밍 언어끼리 데이터를 교환할 때 사용합니다. 인터넷 표준문서 RFC4627 JSON의 구조 자료형 표현방법 예시 숫자 숫자 20 문자열 큰 따옴표로 감싸 표현 "str" boolean true / false true 배열 [n1,n2,n3,...] [1,2,10,100] 객체 {"key":value,"key":value,"key":value,...} {"a":100,"b":10} null null null

Naver Blog

[ Python ] 파이썬으로 JSON 분석하기 심플예제 ( 소스코드 )

Python [ Python ] 파이썬으로 JSON 분석하기 심플예제 ( 소스코드 ) 사진찍는 개발자 2018. 2. 21. 10:40 이웃추가 본문 기타 기능 웹상에 있는 JSON 형식의 데이터를 파일로 받아와 해당 파일을 메모리에 두어 분석하는 예제입니다. import urllib.request as req import os.path, random import json import ssl ssl._create_default_https_context = ssl._create_unverified_context # JSON 데이터 내려받기 url = "https://api.github.com/repositories" savename = "repo.json" if not os.path.exists(savename): req.urlretrieve(url,savename) # JSON 파일 분석하기. items = json.load(open(savename,"r",encoding="utf-

Naver Blog

[ Python ] 파이썬으로 YAML 분석하기 심플 예제 ( 소스코드 )

Python [ Python ] 파이썬으로 YAML 분석하기 심플 예제 ( 소스코드 ) 사진찍는 개발자 2018. 2. 21. 11:02 이웃추가 본문 기타 기능 YAML은 들여 쓰기를 사용하여 계층 구조를 표현하는 것이 특징인 데이터 형식입니다. YAML 개념정리. http://blog.naver.com/twilight_teatime/221213113583 [ 프로그래밍 용어 ] YAML 개념과 구조 _(개발 면접 질문) YAML - 들여 쓰기를 사용하여 계층 구조를 표현하는 것이 특징인 데이터 형식.텍스트 데이터이므로 텍... blog.naver.com 규칙이 까다로우니 데이터를 형성할 때 주의해야 합니다. import yaml # YAML 정의하기 yaml_str = """ Date: 2018-02-21 PriceList: - item_id: 1000 name: Banana color: yellow price: 800 - item_id: 1001 name: Orange colo

Naver Blog

[ 프로그래밍 용어 ] YAML 개념과 구조 _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] YAML 개념과 구조 _(개발 면접 질문) 사진찍는 개발자 2018. 2. 21. 11:26 이웃추가 본문 기타 기능 YAML - 들여 쓰기를 사용하여 계층 구조를 표현하는 것이 특징인 데이터 형식. 텍스트 데이터이므로 텍스트 에디터를 사용해 편집할 수 있습니다. XML 보다 간단하며 JSON 과 비슷합니다. YAML은 JSON 대용으로도 사용되며, 애플리케이션 설정 파일을 작성할 때 많이 사용됩니다. 대표적으로 프레임워크 루비와 PHP의 설정 파일 형식으로 사용되고 있습니다. YAML의 기본은 배열, 해시, 스칼라입니다. 배열을 나타낼 때는 각 행의 앞에 하이픈(-) 을 붙입니다. 하이픈 뒤에는 공백이 필요합니다. ex) 배열 데이터 - banana - kiwi - mango 이때 공백에 들여쓰기가 있으면 중첩 배열을 표현할 수 있습니다. - yellow - - banana - orange - red -apple - strawberry ex

Naver Blog

[ Python ] 파이썬으로 CSV 분석하기 _ 2호선 역별 이용인원수 ( 소스코드 )

Python [ Python ] 파이썬으로 CSV 분석하기 _ 2호선 역별 이용인원수 ( 소스코드 ) 사진찍는 개발자 2018. 2. 21. 11:44 이웃추가 본문 기타 기능 2호선역별이용인원수.csv 내 컴퓨터 저장 네이버 클라우드 저장 CSV 문서를 파이썬으로 분석하는 예제입니다. ** 첨부한 문서는 UTF-8의 인코딩 환경에서 한글이 깨져서 나옵니다. [ mac에서는 한글이 깨집니다. ] 인코딩 : euc_kr 파이썬 codecs 라이브러리를 사용하여 깨지는 한글을 euc_kr로 인코딩하여 결과 출력에서는 한글이 잘 나오도록 하겠습니다.. import codecs # EUC_KR 로 저장된 CSV 파일 읽기 filename = "/Desktop/Study/PythonGround/csv/2호선역별이용인원수.csv" csv = codecs.open(filename, "r", "euc_kr").read() # CSV를 파이썬 리스트로 변환하기 data = [] rows = csv.

Naver Blog

[ 프로그래밍 용어 ] 빅데이터 기술 용어정리 [스크레이핑, 크롤링] _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] 빅데이터 기술 용어정리 [스크레이핑, 크롤링] _(개발 면접 질문) 사진찍는 개발자 2018. 2. 21. 12:00 이웃추가 본문 기타 기능 빅데이터 : 대규모의 데이터의 집합. 빅데이터 분석이란 수많은 데이터에서 규칙성을 찾아서 데이터에 포함된 요소 중에서 중요한 것을 추출하고, 이를 분류해서 규칙성을 찾는 것. 스크레이핑 : 웹 사이트에 있는 특정 정보를 추출하는 기술을 의미. 웹에서 데이터를 추출하는 것뿐만이 아닌 구조를 분석하는 것도 포함 크롤링 프로그램이 웹 사이트를 정기적으로 돌며 정보를 추출하는 기술. ( 정기적으로 데이터를 최신화한다.) 머신 러닝에 사용할 수 있는 데이터의 구조 쉼표로 구분하는 CSV 계층을 통해 구조화할 수 있는 JSON , XML , YAML

Naver Blog

[ Python ] 파이썬으로 CSV 파일만들기 심플 예제 ( 소스코드 )

Python [ Python ] 파이썬으로 CSV 파일만들기 심플 예제 ( 소스코드 ) 사진찍는 개발자 2018. 2. 21. 12:04 이웃추가 본문 기타 기능 파이썬으로 CSV 문서를 만드는 간단한 예제입니다. import csv f = open("test.csv", "w", encoding="utf-8") writer = csv.writer(f, delimiter=",", quotechar='"') writer.writerow(["ID","이름","가격"]) writer.writerow(["1000","SD 카드","30000"]) writer.writerow(["1001","키보드","21000"]) writer.writerow(["1002","마우스","15000"])

Naver Blog

[ Eclipse ] 이클립스(STS) 테마 변경하기. ( + 테마 풀림 해결 방법 )

IDE [ Eclipse ] 이클립스(STS) 테마 변경하기. ( + 테마 풀림 해결 방법 ) 사진찍는 개발자 2018. 2. 21. 13:10 이웃추가 본문 기타 기능 이클립스의 테마를 변경해보겠습니다. 이클립스의 마켓 플레이스에서 테마들을 다운로드합니다. 마켓 플레이스가 켜지면 color theme를 검색합니다. Install 버튼을 눌러 설치가 완료되면 환경설정에 들어갑니다. General - Appearance - Color Theme 탭에 들어가면 테마 선택이 가능합니다. Apply and Close를 누르면 테마가 적용됩니다. 전체적인 창의 색을 변경하기 위해서는 General - Appearance 의 theme를 변경해야 합니다. 이클립스 및 STS의 테마 변경을 완료했지만 프로그램을 재시작하거나 workspace를 변경할 때, 기존에 적용했던 테마가 풀리게 됩니다. 이를 방지하기 위해 나의 설정 정보를 저장해두어, 프로그램을 실행할 때마다. 나의 설정 ( 폰트 크기,

Naver Blog

[ JSP ] Error : The superclass &quot;javax.servlet.http.HttpServlet&quot; was not found on the Java.. 서블릿 오류

Java(자바) [ JSP ] Error : The superclass "javax.servlet.http.HttpServlet" was not found on the Java.. 서블릿 오류 사진찍는 개발자 2018. 2. 21. 14:11 이웃추가 본문 기타 기능 JSP 파일의 처음 <% 앞에 에러 메세지가 뜨는 경우 해결 방법입니다. 해당 프로젝트의 우 클릭하여 Properties를 들어갑니다. Project Facets의 Runtimes 의 서버 설정이 잘 되었나 확인합니다. 체크가 되어있지 않아 JSP 파일이 서버를 찾지 못한 경우입니다. 체크를 해주면 오류의 해결이 완료됩니다.

Naver Blog

[ Eclipse ] Mac에서 이클립스 및 STS 여러 개 실행하기.

IDE [ Eclipse ] Mac에서 이클립스 및 STS 여러 개 실행하기. 사진찍는 개발자 2018. 2. 21. 14:16 이웃추가 본문 기타 기능 윈도우에서는 여러 개의 이클립스를 실행하는 것이 해당 실행파일을 더블클릭하여 손쉽게 가능하지만. 맥에서는 아무리 두 번 실행해 보아도 한 개의 이클립스가 실행됩니다. 여러 개의 이클립스를 실행하려면, 터미널을 이용해야 합니다. open -n 명령어와 이클립스의 위치를 넣어주면 동시에 여러 개의 이클립스 구동이 가능합니다.

Naver Blog

[ Eclipse ] 이클립스 한글 깨짐 해결하기. UTF-8 세팅하기.

IDE [ Eclipse ] 이클립스 한글 깨짐 해결하기. UTF-8 세팅하기. 사진찍는 개발자 2018. 2. 21. 14:25 이웃추가 본문 기타 기능 이클립스에 다른 프로젝트를 import 하거나 복사하면 인코딩의 문제로 한글이 깨질 때가 있습니다. 아래의 캡처들은 이클립스 및 프로젝트의 인코딩을 UTF-8로 변경하는 방법입니다. 환경설정. 프로젝트 설정 java 말고도 다른 언어에 대한 인코딩 설정 또한 가능합니다.

Naver Blog

[ Python ] 파이썬 SQLite 데이터베이스 연결하기. ( sqlite3 라이브러리 ) 간단 예제_소스 코드

Python [ Python ] 파이썬 SQLite 데이터베이스 연결하기. ( sqlite3 라이브러리 ) 간단 예제_소스 코드 사진찍는 개발자 2018. 2. 22. 11:14 이웃추가 본문 기타 기능 SQLite 데이터베이스 테이블 생성하고, 출력하기. import sqlite3 # sqlite 데이터베이스 연결하기. dbpath = "test.sqlite" conn = sqlite3.connect(dbpath) # 테이블 생성하고 데이터 넣기. cur = conn.cursor() cur.executescript(""" /* items 테이블이 이미 있다면 제거하기 */ DROP TABLE IF EXISTS items; /* 테이블 생성하기 */ create table items( item_id integer primary key, name text unique, price integer ); /* 데이터 넣기 */ insert into items values(1, 'Apple'

Naver Blog

[ Python ] 파이썬 날씨정보 xml BeautifulSoup로 파씽하여 SQLite에 날씨정보 저장하기. ( 소스코드 )

Python [ Python ] 파이썬 날씨정보 xml BeautifulSoup로 파씽하여 SQLite에 날씨정보 저장하기. ( 소스코드 ) 사진찍는 개발자 2018. 2. 22. 12:27 이웃추가 본문 기타 기능 http://www.weather.go.kr/weather/forecast/mid-term-rss3.jsp?stnId=108 기상청의 오늘 전국 날씨 정보를 가져와서 SQLite에 저장하는 예제입니다. from bs4 import BeautifulSoup import requests import sqlite3 url = "http://www.weather.go.kr/weather/forecast/mid-term-rss3.jsp?stnId=108" data = requests.get(url) xml = data.text # db 생성하기 filepath = "weather01.sqlite" conn = sqlite3.connect(filepath) cur = conn.cu

Naver Blog

[ 프로그래밍 용어 ] API 개념 정리 _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] API 개념 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 2. 22. 12:50 이웃추가 본문 기타 기능 API ( application programming interface ) API는 응용 프로그램이 운영체제나 데이터베이스 관리 시스템과 같은 시스템 프로그램과 통신할 때 사용되는 언어나 메시지 형식을 가지며, API는 프로그램 내에서 실행을 위해 특정 서브루틴에 연결을 제공하는 함수를 호출하는 것으로 구현된다. 그러므로 하나의 API는 함수의 호출에 의해 요청되는 작업을 수행하기 위해 이미 존재하거나 또는 연결되어야 하는 몇 개의 프로그램 모듈이나 루틴을 가진다. 좋은 API는 모든 building block을 제공함으로써 프로그램 개발을 쉽게 해준다. 프로그래머는 그 block을 함께 합치기만 하면 된다. API가 프로그래머를 위해서 만들어지기는 했지만, 사용자 입장에서도 같은 API를 사용한 프로그램은 비슷한 인터페이스를 가

Naver Blog

[ 프로그래밍 용어 ] 서브루틴(subroutine) 개념 정리 _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] 서브루틴(subroutine) 개념 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 2. 22. 12:50 이웃추가 본문 기타 기능 서브루틴 프로그램 중의 하나 이상의 장소에서 필요할 때마다 반복해서 사용할 수 있는 부분적 프로그램으로, 그 자체가 독립해서 사용되는 일 없이 메인 루틴과 결부 시킴으로써 그 기능을 완수한다. 서브루틴을 실현하는 데는 다음의 두 종류가 있다. ① 서브루틴 본체를 프로그램 중의 한 장소에서만 실행시에 호출하는 방법을 폐쇄 서브루틴(closed subroutine)이라고 한다. ② 서브루틴의 본체를 프로그램 중의 필요한 개소에 직접 전개하는 방식을 개방 서브루틴(open subroutine)이라고 한다. 출처 : [네이버 지식백과] 서브루틴 [subroutine] (컴퓨터인터넷IT용어대사전, 2011. 1. 20., 일진사)

Naver Blog

[ 프로그래밍 용어 ] DOM 개념 정리 _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] DOM 개념 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 2. 22. 12:50 이웃추가 본문 기타 기능 DOM (Document Object Model) - 문서 객체 모델 문서를 다루기위한 표준기술 웹 문서를 자바스크립트 입장에서 구조적 문서 (document) 객체 형태로 다루는 모델. 자바스크립트는 HTML 문서를 객체(Object)로 바라보고 다룬다. Document -> Html 문서 Element -> 태그 <p>태그 Attribute-> 속성 <input type="" /> TextNode -> 텍스트컨텐츠 > 태그안의내용

Naver Blog

[ 프로그래밍 용어 ] 쓰로틀링 용어정리 _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] 쓰로틀링 용어정리 _(개발 면접 질문) 사진찍는 개발자 2018. 2. 22. 13:00 이웃추가 본문 기타 기능 쓰로틀링 기계-유체 공학에서 압력이 높아 배관에 손상을 줄 수 있는 경우, 임의적으로 압력을 조절하여 배관의 손상을 막는것을 의미하며. 전자-컴퓨터 공학에서의 쓰로틀링은 하드웨어에 과부하를 주거나 냉각상태가 올바르지 못하여, 냉각이 원할하게 이루어 지지않을때.. 펌웨어 혹은 소프트웨어가 제어되며, 성능을 낮춰 냉각효과를 이끌어 내는것을 의미한다.

Naver Blog

[ 프로그래밍 용어 ] Mashup 개념 정리 _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] Mashup 개념 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 2. 22. 13:00 이웃추가 본문 기타 기능 매시업 ( Mashup ) '매시업(Mashup)'이란 원래 서로 다른 곡을 조합하여 새로운 곡을 만들어 내는 것을 의미하는 음악용어이지만, IT(정보기술) 분야에서는 웹상에서 웹서비스 업체들이 제공하는 다양한 정보(콘텐츠)와 서비스를 혼합하여, 새로운 서비스를 개발하는 것을 의미한다. 즉 서로 다른 웹사이트의 콘텐츠를 조합하여 새로운 차원의 콘텐츠와 서비스를 창출하는 것을 말한다. 매시업 서비스로 가장 유명한 것은 구글 지도와 부동산 정보사이트인 크레이그 리스트(www.craigslist.org)를 결합시킨 ‘하우징맵(www.housingmaps.com)’ 사이트로, 지도 정보에서 특정 지역을 선택하면 해당 지역의 부동산 매물정보를 보여주는 서비스를 제공하고 있다. 매시업의 장점은 기존의 자원을 활용하여 만들기 때문에 새로

Naver Blog

[ Python ] 파이썬으로 TinyDB 데이터베이스 연결하기 간단 예제. ( 소스코드 )

Python [ Python ] 파이썬으로 TinyDB 데이터베이스 연결하기 간단 예제. ( 소스코드 ) 사진찍는 개발자 2018. 2. 23. 10:14 이웃추가 본문 기타 기능 JSON 형식의 데이터로 이루어진 데이터베이스 : TinyDB에 파이썬으로 연결해 보겠습니다. << 소스 코드 >> from tinydb import TinyDB, Query # 데이터베이스 연결하기 filepath = "test-tynydb.json" db = TinyDB(filepath) # 기존의 테이블이 있다면 제거하기 db.purge_table('fruits') # 테이플 생성 / 추가하기 table = db.table('fruits') # 테이블에 데이터 추가하기 table.insert({'name':'banana', 'price':6000}) table.insert({'name':'Orange', 'price':12000}) table.insert({'name':'mango', 'price':

Naver Blog

[ HTML ] input 태그와 button 태그의 공통점과 차이점. ( <input type=&quot;submit&quot;> / <button></button> )

웹프로그래밍 [ HTML ] input 태그와 button 태그의 공통점과 차이점. ( <input type="submit"> / <button></button> ) 사진찍는 개발자 2018. 2. 23. 10:30 이웃추가 본문 기타 기능 <input type="submit"> 버튼을 이용하여 <form> 태그의 양식을 action으로 전달하게 됩니다. 다른 action 및 기능을 취하기 위해, <form>태그에 <button>을 넣으면 이상하게도 정의한 버튼의 기능보다 form 태그의 action으로, 이동하게 되는 점을 발견할 수 있습니다. 기본적으로 <button></button>는 type이 submit이기 때문에 생기는 문제입니다. <button></button>의 type에 대해서는 type="submit" - 폼 양식의 전송 기능을 담당한다. type="reset" - 폼 작성 내용을 초기화하는데 사용한다. ( 양식 지우기 ) type="button" - 흔히 자바스크

Naver Blog

[ 프로그래밍 용어 ] 머신 러닝 개념 정리 _(개발 면접 질문)

개발자 용어 정리 [ 프로그래밍 용어 ] 머신 러닝 개념 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 2. 23. 11:03 이웃추가 본문 기타 기능 머신 러닝 : 수많은 데이터를 학습시켜 거기에 있는 패턴(규칙)을 찾아내는 것 인공지능의 연구 과제 중의 하나. 인간의 뇌가 자연스럽게 수행하는 학습능력을 컴퓨터로 구현하는 방법입니다. 어느 정도 규모가 있는 샘플 데이터를 입력으로 넣어 분석시키고, 데이터에서 일정한 규칙을 찾아내어 그 규칙을 기반으로 다른 데이터를 분류하거나 미래를 예측하는 것입니다. 머신 러닝의 종류 <교사 학습> - 데이터와 함께 답을 입력합니다. - 다른 데이터의 답을 예측합니다. '교사 학습이란 선생님이 옆에서 문제를 주고, 답을 알려주는 것과 같은 학습 방법입니다.' 데이터를 입력할 때 레이블(답)을 함께 입력합니다. 글자를 나타내는 이미지 데이터와 함께 해당 글자가 무엇을 나타내는지 의 답을 함께 줘서 학습시키는 것입니다. 이렇게 학습시켜 머신 러

Naver Blog

[ 머신러닝 ] Python , 파이썬으로 XOR 연산 학습해보기 ( 소스코드 )

Python [ 머신러닝 ] Python , 파이썬으로 XOR 연산 학습해보기 ( 소스코드 ) 사진찍는 개발자 2018. 2. 23. 11:33 이웃추가 본문 기타 기능 논리 연산에서 논리합 연산을 머신 러닝으로 학습시키는 소스입니다. 두 입력이 하나만 참이고 다른 한쪽이 거짓일 때 참이 나옵니다. from sklearn import svm # XOR 의 계산 결과 데이터 xor_Data = [ [0,0,0], [0,1,1], [1,0,1], [1,1,0] ] # 학습을 위해 데이터와 레이블 분리하기 data = [] label = [] for row in xor_Data: p = row[0] q = row[1] result = row[2] data.append([p,q]) label.append(result) #데이터 학습시키기 clf = svm.SVC() clf.fit(data,label) #데이터 예측하기 pre = clf.predict(data) print("예측결과 : ",

Naver Blog

[ 머신러닝 ] Python , 파이썬으로 구현한 머신러닝 예제_ 붓꽃 데이터 기계학습하기 ( 소스코드 )

Python [ 머신러닝 ] Python , 파이썬으로 구현한 머신러닝 예제_ 붓꽃 데이터 기계학습하기 ( 소스코드 ) 사진찍는 개발자 2018. 2. 23. 12:54 이웃추가 본문 기타 기능 150 종류 이상의 품종이 있는 붓꽃. 머신 러닝을 사용해 꽃잎과 꽃받침의 크기를 기반으로 분류하기. iris.csv 내 컴퓨터 저장 네이버 클라우드 저장 데이터의 붓꽃은 setosa versicolor virginica 3종류입니다. 종류는 꽃받침의 길이 , 꽃받침의 폭 , 꽃잎의 길이 , 꽃잎의 너비 정보가 기록되어 있습니다. 데이터 중에 2:1의 비율로 학습 및 테스트를 진행하겠습니다. from sklearn import svm,metrics import random, re # 붓꽃의 CSV 데이터 읽어 들이기 csv = [] with open('iris.csv','r',encoding='utf-8')as fp: # 한 줄씩 읽어 들이기 for line in fp: line = line

Naver Blog

[ Java ] Jsoup을 이용하여 웹 크롤링하기. _ 판매 목록의 가격정보 수집하기 ( 소스코드 )

Java(자바) [ Java ] Jsoup을 이용하여 웹 크롤링하기. _ 판매 목록의 가격정보 수집하기 ( 소스코드 ) 사진찍는 개발자 2018. 2. 24. 20:44 이웃추가 본문 기타 기능 Jsoup 을 사용하기 위해 jar 파일을 import 합니다. 디펜던시를 추가하는 방법을 이용하겠습니다. <!-- 크롤링하기. --> <dependency> <groupId>org.jsoup</groupId> <artifactId>jsoup</artifactId> <version>1.8.3</version> </dependency> 판매 목록의 가격정보를 가진 태그를 찾아보겠습니다. 가격정보는 div 태그의 class = list_view 안에 있습니다. 태그의 부모를 쉽게 찾기 위해 크롬에서 검사( 디버깅 ) 에서 해당 태그를 우 클릭합니다. Copy - Copy selector를 누르면 태그에 대한 부모가 복사됩니다. 해당 위치의 strong 가격은 한 품목의 가격만을 포함하고 있기 때

Naver Blog

[ 네트워크 ] Socket ( 소켓 ) 개념 정리 _(개발 면접 질문)

개발자 용어 정리 [ 네트워크 ] Socket ( 소켓 ) 개념 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 3. 27. 22:27 이웃추가 본문 기타 기능 왜 Socket을 사용하는가? 네트워크 상에서 교신을 하기 위해서 클라이언트와 서버가 존재합니다. 클라이언트와 서버 두 프로그램이 교신을 하기 위해서는 당연히 서로의 위치를 파악할 필요가 있습니다. 이걸 잘 하기 위해서는 소켓이 필요합니다. 네크워크 상의 소켓은 단순히 받아들이는 역할만 하는 것이 아니라 출력을 하는 역할도 같이 합니다. 생각해보면 당연하지만 요청을 하던 응답을 하던 받는 것 뿐만아니라 보내는 것도 가능해야 하니까요. 이 소켓이 클라이언트와 서버의 양쪽 끝단에 존재하고 있고 소켓을 통해서 서로의 위치를 파악하고 통신을 할 수 있는 것이죠. 요청을 할 때 클라이언트 측에서 소켓 정보를 같이 보내야 서버 측에서 어디서 온 요청인지 파악하고 응답을 보내 줄 수 있겠죠. Socket은 어떻게 구성되어 있는가?

Naver Blog

[ 운영체제 ] 면접대비 운영체제 정리 _(개발 면접 질문)

개발자 용어 정리 [ 운영체제 ] 면접대비 운영체제 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 3. 27. 23:12 이웃추가 본문 기타 기능 시스템 콜 유저 스레드에서 커널 기능을 수행해야할때, 시스템콜을 통해서 커널의 기능을 사용하게해주는 호출이다. 유저스레드 vs 커널스레드 - 커널은 싱글 스레드라고 생각한다. - 주체의 자치 : supported by Kernel : 커널스레드 - 커널에 의존적이지 않게 생성되는 스레드는, supported by library : 유저스레드 - 커널의 장점 : 커널의 기능이용으로 안전성과 다양한 기능이 제공 - 커널의 단점 : 컨텍스트 스위치가 빈번하게 발생하여 비용이 비싸다. - 유저의 장점 : 컨텍스트 스위치가 없어서 성능이 좋다 - 유저의 단점 : 하나의 스레드가 커널에 의해 블로킹되면 전체 유저 스레드가 종료된다. Interrupt Interrupt가 발생하면 CPU는 하던 일을 중단 후 Interrupt Handler로 넘

Naver Blog

[ 네트워크 ] 면접대비 네트워크 정리 _(개발 면접 질문)

개발자 용어 정리 [ 네트워크 ] 면접대비 네트워크 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 3. 27. 23:22 이웃추가 본문 기타 기능 Protocol : 주고받는 메세지의 포맷, 순서를 정의한다. FDM , TDM 차이 ? - FDM : 주파수별로 나눔 - TDM : 시간대별로 나눔 Packet delay - processing delay : - queueing delay : 라우터에서 기다리는 시간 - transmission delay : link로 담는 시간 - propagation delay : link를 타고 가는 시간 ISO 7-layer - application : 응용서비스를 수행한다. - presentation : 데이터 형식의 차이를 다룬다 - session : TCP/IP를 만들고 없애는 책임 - transport : End-to-End 사용자들이 데이터를 주고받을 수 있게 해준다. - network : 노드를 거칠때마다 경로를 찾아주는 역할 -

Naver Blog

[ Java ] 면접대비 java 정리 _(개발 면접 질문)

개발자 용어 정리 [ Java ] 면접대비 java 정리 _(개발 면접 질문) 사진찍는 개발자 2018. 3. 27. 23:30 이웃추가 본문 기타 기능 Reference type : . - 참조값을 통해 객체의 데이터에 직접 접근할 수 있다. 접근 제어자 종류 - public : 어디서든 접근 가능 - private : 같은 클래스 내에서만 접근 가능 - default : 동일 패키지 내에서 접근 가능 - protected : 동일 패키지 및 상속 받은 클래스 내에서 접근 가능 쓰레드 구현 방법 - Runnable 인터페이스 상속 -> run 함수 구현 - Thread 클래스 상속 -> 이외의 클래스 상속 불가 객체지향과 절차지향의 차이점 - 절차지향 : 순차적인 처리가 중요시 된다. 하나의 코드 변경이 전체에 영향을 끼칠 수 있다. 코드 사이즈를 최소화하고, 빠른 속도가 요구될 때 적합하다. - 객체지향 : 기능을 묶어 모듈화. 재사용성이 높다. 업그레이드 및 디버깅이 쉽다. O

Naver Blog

[ javaScript ] 자바스크립트 키워드 와 자료형 (주의 !!)

JavaScript [ javaScript ] 자바스크립트 키워드 와 자료형 (주의 !!) 사진찍는 개발자 2018. 4. 4. 23:08 이웃추가 본문 기타 기능 자바스크립트가 처음 만들어질 때 정해진 특별한 의미를 가진 단어를 '키워드' 라고 합니다. 아래는 '키워드'를 정리한 표입니다. break else instanceof true case false new try catch finally null typeof continue function switch void delete if this while do in throw with do in throw with abstract enum int short boolean export interface static byte extends long super char final native synchronized class float package throws const goto private transient debugger imp

Naver Blog

[ 데이터표기법 ] 카멜 표기법, 파스칼 표기법, 스네이크 표기법

etc. [ 데이터표기법 ] 카멜 표기법, 파스칼 표기법, 스네이크 표기법 사진찍는 개발자 2018. 4. 4. 23:15 이웃추가 본문 기타 기능 카멜 표기법 굴곡진 낙타의 등을 빗대어 의미되는것 같다. - 각 단어의 첫문자는 대문자로 표기하고 붙여쓰되, 첫 문자는 소문자로 표기한다. - 띄어쓰기 대신 대문자로 단어를 구분한다. ex) numberInputVar, currDateSet 파스칼 표기법 - 카멜 표기법과 비슷하지만 첫 문자또한 대문자로 표기한다. java Class 명 스네이크 표기법 - 단어를 언더바( _ )로 구분하여 표기한다. ex) number_input , date_set

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #1, 오브젝트와 의존관계.

Java(자바) [ _Spring ] [ 토비의 스프링 ] #1, 오브젝트와 의존관계. 사진찍는 개발자 2018. 4. 17. 11:49 이웃추가 본문 기타 기능 < 스프링의 철학 > 자바, 객체지향 기술의 진정한 가치를 회복시키고, 그로부터 객체지향 프로그래밍이 제공하는 폭넓은 혜택을 누릴 수 있도록, 기본으로 돌아가자는 것이 바로 스프링의 핵심 철학이다. < 자바 빈 > 비주얼 컴포넌트 --> 두 가지 규칙을 가진 오브젝트 1. 디폴트 생성자 - 자바빈은 파라미터가 없는 디폴트 생성자를 갖고 있어야 한다. 툴이나 프레임워크에서 리플렉션을 이용해 오브젝트를 생성하기 때문에 필요하다. 2. 프로퍼티 - 자바빈이 노출하는 이름을 가진 속성을 프로퍼티라고 한다. 프로퍼티는 set으로 시작하는 수정자 메소드( setter )와 get으로 시작하는 접근자 메소드( getter )를 이용해 수정 또는 조회할 수 있다. - VO,, 생성자와 게터 쎄터를 가진것.. < 관심사의 분리 > 관심이

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #2, 스프링 테스트.

Java(자바) [ _Spring ] [ 토비의 스프링 ] #2, 스프링 테스트. 사진찍는 개발자 2018. 4. 17. 12:27 이웃추가 본문 기타 기능 테스트 방법 자바에서 수행 '성공' 메시지 출력하기. public class UserDaoTest { public static void main(String[] args) throws SQLException{ ApplicationContext context = new GenericXmlApplicationContext("applicationContext.xml"); UserDao dao = context.getBean("userDao", UserDao.class); User user = new User(); user.setId("user"); user.setName("백기선"); user.setPassword("married"); dao.add(user); System.out.println(user.getId() + "등록 성공

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #3, 템플릿.

Java(자바) [ _Spring ] [ 토비의 스프링 ] #3, 템플릿. 사진찍는 개발자 2018. 4. 17. 15:54 이웃추가 본문 기타 기능 개방 폐쇄 원칙 ( OCP ) 확장에는 자유롭게 열려있고, 변경에는 굳게 닫혀 있는 객체지향 설계의 핵심 원칙. - 코드에서 어떤 부분은 변경을 통해 그 기능이 다양해지고 확장하려는 성질이 있고, 어떤 부분은 고정되어 있고 변하지 않으려는 성질이 있음. 변화의 특성이 다른 부분을 구분해주고, 각각 다른 목적과 다른 이유에 의해 다른 시점에 독립적으로 변경될 수 있는 효율적인 구조를 만들어주는 것이 바로 개방 폐쇄 원칙이다. 템플릿 위와 같이 바뀌는 성질이 다른 코드 중에서 변경이 거의 일어나지 않으며, 일정한 패턴으로 유지되는 특성을 가진 부분을, 자유롭게 변경되는 성질을 가진 부분으로부터 독립시켜서 효과적으로 활용할 수 있도록 하는 방법. 예외 발생 시에도 리소스를 반환하도록 수정한 deleteAll() public void dele

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #4, 예외 처리.

Java(자바) [ _Spring ] [ 토비의 스프링 ] #4, 예외 처리. 사진찍는 개발자 2018. 4. 17. 17:34 이웃추가 본문 기타 기능 예외 처리 전략 - 런타임 예외의 보편화 일반적으로 체크 예외가 일반적인 예외를 다루고, 언체크 예외는 시스템 장애나 프로그램 상의 오류에 사용된다. 체크 예외는 복구할 가능성이 조금이라도 있어서, try - catch 블록이나 thorws 선언을 강제로 하고 있다. 예외는 상황을 미리 파악하고, 예외가 발생하지 않도록 차단하는 것이 좋다. 오류나 외부 환경으로 인해 예외가 발생하는 경우라면 빨리 해당 요청의 작업을 취소하고, 서버 관리자나 개발자에게 통보해주는 편이 좋다. ** 대응이 불가능한 체크 예외라면 빨리 런타임 예외로 전환해서 던지는 게 좋다. 런타임 예외 // 체크 예외의 반대.. 예외 처리하도록 강제하지 않는다. 복구 가능성이 거의 없는 예외로 본다. - add() 메소드의 예외 처리 // 아이디 추가 및 아이디 중복

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #5, 트랜잭션 경계 설정.

Java(자바) [ _Spring ] [ 토비의 스프링 ] #5, 트랜잭션 경계 설정. 사진찍는 개발자 2018. 4. 18. 10:35 이웃추가 본문 기타 기능 데이터베이스는 그 자체로 완벽한 트랜잭션을 지원한다. SQL을 이용해 다중 로우의 수정이나 삭제를 위한 요청을 했을 때 일부 로우만 삭제되고 나머지는 안 된다거나, 일부 필드가 수정이 안 되고 실패로 끝나는 경우는 없다. 하나의 SQL 명령을 처리하는 경우는 데이터베이스가 트랜잭션을 보장해준다고 믿을 수 있다. 여러 개의 SQL 명령이 요청 및 수행되기도 한다. 예를 들어 계좌이체 작업은 여러 개의 SQL 명령이 필요하다, 출금계좌의 잔고 줄이기, 입금계좌에는 이체금액만큼 증가되기... 여러 개의 명령을 하나의 트랜잭션이라고 본다. 롤 백 ( rollback ) 하지만 첫 번째 SQL 이 성공적으로 실행되고 두 번째 SQL이 성공하기 전에 장애가 생겨 작업이 중단될 수 있다. 이럴 경우 성공한 첫 번째 SQL 도 하나의 트

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #6, AOP (관점 지향 프로그래밍).

Java(자바) [ _Spring ] [ 토비의 스프링 ] #6, AOP (관점 지향 프로그래밍). 사진찍는 개발자 2018. 4. 18. 11:53 이웃추가 본문 기타 기능 AOP Aspect Oriented Programming, 다양한 곳에서 자주 사용되는 공통 관심요소를 단일 기능으로 뽑아내어 코드의 중복을 줄이고 관리의 효율성을 높이는 것을 목적으로 한다. 로깅이나 로그인 등의 기능을 예로 들 수 있다. - Aspect : 애스펙트 애플리케이션의 핵심 기능을 담고 있지는 않지만, 핵심 기능에 부가되어서 의미를 갖게 되는 특별한 모듈을 명칭하는 것. 애스펙트는 부가될 기능을 정의한 코드인 어드바이스 와 정의 범위를 지정하는 포인트컷을 함께 갖고 있다. AOP 용어정리 타깃 부가기능을 부여할 대상, 경우에 따라 프록시 오브젝트일 수도 있다. 어드바이스 타깃에게 제공할 부가기능을 담은 모듈 어드바이저 포인트컷 과 어드바이스를 하나씩 갖고 있는 오브젝트이다. 조인 포인트 어드바이스

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #7, 스프링 핵심 기술의 응용.

Java(자바) [ _Spring ] [ 토비의 스프링 ] #7, 스프링 핵심 기술의 응용. 사진찍는 개발자 2018. 4. 18. 14:55 이웃추가 본문 기타 기능 스프링의 3대 핵심 기술 - IoC / DI - 서비스 추상화 - AOP SQL 과 DAO 의 분리 - XML 설정을 이용한 분리 1. 개별 SQL 프로퍼티 방식 클래스의 SQL을 프로퍼티로 만들고 이를 XML 에서 지정하도록 한다. 이러한 방법으로 간단하게 SQL 을 DAO 코드에서 분리할 수 있다. public class UserDaoJdbc implements UserDao { private String sqlAdd; public void setSqlAdd(String sqlAdd){ this.sqlAdd = sqlAdd; } } // 외부로 부터 DI 받은 sql 문장을 담은 sqlAdd 를 사용하므로 분리되었다.. public void add(User user){ this.jdbcTemplate.update(

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #8, 스프링 애플리케이션.

Java(자바) [ _Spring ] [ 토비의 스프링 ] #8, 스프링 애플리케이션. 사진찍는 개발자 2018. 4. 19. 12:22 이웃추가 본문 기타 기능 스프링의 주요 기능은 웹 브라우저를 클라이언트라고 하고, 데이터베이스에 데이터를 저장, 조회하는 데에 집중되어있다. 스프링 애플리케이션의 배포 단위 - 스프링으로 만든 애플리케이션은 다음의 세 가지 단위로 배포할 수 있다. 1. 독립 웹 모듈 스프링은 보통 war 로 패키징 된 독립 웹 모듈로 배포된다. 톰캣 같은 서블릿 컨테이너를 쓴다면 독립 웹 모듈이 유일한 방법이다. was로 배포한다고 하더라도 독립 웹 모듈을 사용하는 경우가 대부분일 것이다. - 가장 단순하고 편리한 배포 단위이다. 2. 엔터프라이즈 애플리케이션 확장자가 ear인 엔터프라이즈 애플리케이션으로 패키징 되어 배포할 수도 있다. - 하나 이상의 웹 모듈과 별도로 분리된 공유 가능한 스프링 컨텍스트를 엔터프라이즈 애플리케이션으로 묶어주는 방법이다. 3. 백

Naver Blog

[ _Spring ] [ 토비의 스프링 ] #9, IoC 컨테이너와 DI.

Java(자바) [ _Spring ] [ 토비의 스프링 ] #9, IoC 컨테이너와 DI. 사진찍는 개발자 2018. 4. 19. 16:30 이웃추가 본문 기타 기능 스프링 애플리케이션에서는 오브젝트의 생성과 관계 설정, 사용, 제거 등의 작업을 애플리케이션 코드 대신 독립된 컨테이너가 담당한다. 이를 컨테이너가 코드 대신 오브젝트에 대한 제어권을 갖고 있다고 하여, IoC라고 부른다. 스프링 컨테이너를 IoC 컨테이너라고도 한다. IoC를 담당하는 컨테이너를 빈 팩토리 또는 애플리케이션 컨텍스트라고 부르기도 한다. DI 오브젝트의 생성과 오브젝트 사이의 런타임 관계를 설정한다. POJO ( Plain Old Java Object ) 해석하자면 오래된 방식의 간단한 자바 오브젝트. 중량 프레임워크들을 사용하게 되면서 해당 프레임워크에 종속된 "무거운" 객체를 만들게 된 것에 반발하여 사용하게 된 용어이다. - 주로 특정 자바 모델이나 기능, 프레임워크 등을 따르지 않은 자바 오브젝트

1 2 3 4 5 6