전체 글
- Listener refused the connection with the following error:ORA-12505 ( SQL Develper 에서 ) 2018.06.14
- Google Fonts + 한국어 : 최신 구글 한글 웹폰트 (+기존폰트) 2018.06.14
- magnific-popup :: jQuery 팝업 플러그인 2018.03.22
- min.css / min.js 등 min이란 무엇인가 2018.03.02
- 개인 홈 페이지 :: 1. 호스팅 2018.01.15
- Oracle 설치 / SQL Developer 설치 2017.11.23
- 개발자 면접 대비 2017.11.13
- JAVA / Socket통해 서버-클라이언트 채팅 만들기 2017.11.03
- Code Blocks - C, C++ 개발도구 2017.11.02
Listener refused the connection with the following error:ORA-12505 ( SQL Develper 에서 )
SQL Developer에서 사용자연결할 때 다음과 같은 에러가 발생할 경우가 있다.
Listener refused the connection with the following error:ORA-12505
SID가 일치하지 않아서 생기는 에러인 듯 하다.
CMD창을 켜서 Lsnrctl services 를 입력한다.
그럼 다음과 같이 창이 뜨는데 만약 안뜬다면 설치 중 오류가 생긴것~
DEDICATED 이고 READY상태인 인스턴스가 바로 SID이다.
SID를 바르게 입력하면 에러가 해결된다.
Google Fonts + 한국어 : 최신 구글 한글 웹폰트 (+기존폰트)
Google Fonts+ 한국어
Google Fonts+ 한국어 https://googlefonts.github.io/korean/
구글에서 한글폰트들이 정식으로 출시되었다.
홈페이지에서 글씨 굵기와 왜곡 그리고 테스트를 해볼 수 있다.
한눈에 보기위해서 모든 폰트를 적용시켜보았다.
Bold가 여러가지인 경우는 Regular로 적용시켰다.
고딕 A1같은경우는 무려 9개의 굵기가 있었다.
테스트 글자는 그냥 한글명 / 영문명 이다.
고딕 A1 Gothic A1
검은고딕 Black Han Sans
나눔고딕 Nanum Gothic
나눔 고딕 코딩 Nanum Gothic Coding
나눔명조 Nanum Myeongjo
감자꽃마을 Gamja Flower
개구쟁이 Gaegu
구기 Gugi
귀여운 폰트 Cute Font
기랑해랑 Kirang Haerang
나눔 손글씨 붓 Nanum Brush Script
나눔 손글씨 펜 Nanum Pen Script
대한민국독도 East Sea Dokdo
도현 Do Hyeon
독도 Dokdo
서툰이야기 Poor Story
송명 Song Myung
스타일리시 Stylish
연성 Yeon Sung
주아 Jua
하이멜로디 Hi Melody
해바라기 Sunflower
흑백사진 Black And White Picture
Google Fonts EarlyAccess
기존에 제공하던 구글 한글 웹폰트는
Google Fonts EarlyAccess https://fonts.google.com/earlyaccess 에서 검색
Ctrl+F 후 Korean검색하면 한글 폰트를 찾을 수 있다.
Noto Sans KR
Kopub 바탕 KoPub Batang
한나 Hanna
제주 명조 Jeju Myeongjo
제주고딕 Jeju Gothic
제주 한라산 Jeju Hallasan
Google Fonts의 모든 폰트는 오픈 폰트 라이선스(OFL)를 따르므로, 누구나 마음에 드는 폰트를 자유롭게 사용가능 하다.
구글 웹폰트 적용법은 다음에 정리하도록 하자!
magnific-popup :: jQuery 팝업 플러그인
http://dimsemenov.com/plugins/magnific-popup/
Document 들어가보면 다음과 같이 Including 하라고 한다.
Github에 들어가서 dist폴더에 있는 파일 받아준다.
min.css / min.js 등 min이란 무엇인가
템플릿을 다운받아보면 min파일을 자주 보게된다.
min파일은 minify 축소하다 의 줄임으로 공백과 줄바꿈을제거하여 용량을 줄인 파일이다.
덕분에 전송량을 줄일 수 있다.
css파일은 가독성을 위해 개발할 때 사용하고
이를 압축하여 min.css파일을 만들어 실제 서비스에 사용한다.
따라서 min.css파일을 수정해야 웹에는 적용이 된다
- min.css로 변환해주는 API : https://cssminifier.com/
- min.js로 변환해주는 사이트 : http://javascriptcompressor.com/
- min 파일( javascript, css, html, json )을 읽기 쉽게 변환해 주는 사이트 : http://jsbeautifier.org/
개인 홈 페이지 :: 1. 호스팅
포트폴리오를 정리하기 위해 개인 홈페이지를 생성하기로 하였다.
호스팅 신청하기
닷홈에서 무료 호스팅을 신청할 수 있어서 신청!
닷홈 https://www.dothome.co.kr/index.php
회원가입 후 간단한 정보입력으로 신청 끝
FTP연결하기
FileZilla 라는 프로그램을 사용하여 연결하였다.
https://filezilla-project.org/ 에서 [ Download FileZilla Client ] 를 클릭하여 FileZilla 를 다운받고 설치한다.
FileZilla 실행 한 후 왼쪽 상단 [ 파일 ] - [ 장치관리자 ] 선택하면 다음과 같은 창이 뜬다.
호스트 : 호스팅받은 주소 ( FTP 선택! )
사용자 : DB아이디
비밀번호 : DB비밀번호
연결이 성공하면 오른쪽 아래 html 폴더에 " index.html " 파일을 왼쪽(내 컴퓨터)에서 끌어다가 넣어주면 된다.
Oracle 설치 / SQL Developer 설치
Oracle 설치하기
1. 회원가입
오라클을 다운받기 위해서는 로그인이 필요하다. 계정이 없다면 회원가입을 한다.
2. Oracle Database 11g Release 2 다운로드
3. 압축풀기
두 파일을 각각 압축풀기 하면 알아서 DataBase란 폴더에 합쳐진다.
4. 설치 시작
Setup 파일을 실행시켜 설치를 시작한다.
이런 문구가 뜨는데 무시하고 "예" 를 눌러 진행한다.
전역 데이터베이스 이름과 비밀번호를 설정한다.
중요하니 잊어버리지 않게 메모!!!!!
그 후는 계속 다음> 다음 > 다음 ... 해준다.
설치 중 자바 와 네트워크 엑세스 허용 창이 뜨면 "허용" 눌러 넘어가면 된다.
설치가 끝나면 창이 뜨는데 확인 누르고 설치를 마쳤다.
SQL Developer 설치
역시 Oracle에서 제공하며 무료인 SQL Developer 를 다운로드 받는다.
http://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/index.html
마찬가지로 I Agree 선택 후에 다운로드하면 되는데
JDK8 포함 버전과 미포함 버전이있다. JDK 설치가 되있으면 아래 버전을 설치하면 된다.
CMD창을 켜서 java - version 을 입력하여 JDK버전을 확인한다.
JDK 1.8 이 설치되어있으므로 아래 버전을 다운받았다.
C:\Program Files\Java 로 들어가서 주소 복사 후 경로 입력한다.
설치가 진행되다가 다음과 같은 창이 뜨는데 "아니오"를 선택하면 된다.
설치 후에 SQL Developer가 실행되면
초록색 체크 표시된 + 버튼을 누른다.
빈칸을 입력하고 "테스트" 버튼을 눌러 상태 : 성공 이 뜨면 "접속" 버튼을 눌러 준비를 마친다.
개발자 면접 대비
#클래스패스와 클래스로더
-클래스패스 ClassPath : Class파일이 저장되어있는 디렉토리의 나열
-클래스로더 ClassLoader : 컴파일 시점(Compile Time)이 아닌 실행 시점(Run Time)에 클래스를 로딩할 수 있게 해주는 기술
#OOP란
-Object Oriented Programming , 객체 지향 프로그래밍 이란 뜻으로 특징으로는 캡슐화, 상속, 다형성이 있다
#캡슐화 : 관련된 데이터와 메서드를 하나의 단위로 묶어 객체 내부를 숨김
#상속 :
#다형성 : 다형성이란 하나의 메소드나 클래스가 있을 때 이것들이 다양한 방법으로 동작하는 것을 의미한다
1)오버로딩 - 하나의 클래스에서 같은 이름의 메서드들을 매개변수를 다르게하여 여러개 정의하는 것 ( 컴파일 시점 )
2)오버라이딩 - 슈퍼클래스에서 상속받은 메서드를 서브클래스에서 새롭게 정의하는것 ( 실행 시점 )
# 자바의 특징
-객체지향언어이며 운영체제에 독립적이다. 자바가상머신(JVM)이 자바로 작성된 프로그램은 운영체제의 종류에 실행가능하다
# 인터페이스와 다형성
-인터페이스 : 추상메서드와 상수만을 멤버로 가지는 추상클래스, 인터페이스로 부터만 상속 받을 수 있으며, 다중상속이 가능하다
# 제네릭을 사용하는 이유
-제네릭 : 클래스를 선언할 때 타입을 결정하지 않고 객체를 생성할 때 유동적인 타입으로 재사용
# Spring Framework의 장점
# 웹서버와 WAS차이
-WEB SERVER
웹 서버는 네트워크를 통하여 웹 클라이언트들로부터 HTTP 요청들을 수신하고,
웹 페이지 같은 부가적인 컨텐츠들과 함께 HTTP 응답을 제공하는 역할을 하는 컴퓨터 프로그램
-WAS
Web Application Server
웹과 기업의 기간 시스템 사이에 위치하면서, 웹 기반 분산 시스템 개발을 쉽게 도와주고 안정적인 트랙잰션 처리를 보장해 주는 일종의 미들웨어 소프트웨어 서버. WAS는 동적 서버 콘텐츠를 수행하는 것으로 일반적인 웹 서버와 구별이 되며, 주로 데이터베이스 서버와 같이 수행이 된다.
-WAS와 웹 서버를 따로쓰는이유?
목적이 다르기 때문이다. 웹 서버는 정적인 데이터를 처리하는 서버이다. 이미지나 단순 html파일과 같은 리소스를 제공하는 서버는 웹 서버를 통하면 WAS를 이용하는 것보다 빠르고 안정적이다. WAS는 동적인 데이터를 처리하는 서버이다. DB와 연결되어 데이터를 주고 받거나 프로그램으로 데이터 조작이 필요한 경우에는 WAS를 활용 해야 한다.
#
-쿠키
이 쿠키는 "사용자의 브라우저"에 저장이 됩니다.
그리고 사용자의 컴퓨터를 만질 수 있다면 누구라도 쿠키에 입력된 값을 확인할 수 있습니다.
이 말은 "보안성이 없다"라는거죠.
-세션
세션의 경우 "서버에 저장되는 쿠키"라고 이해하시면 편합니다.
세션은 $_SESSION['변수명']을 통해 불러올 수 있고, 저장도 가능합니다.
하는 기능은 쿠키와 크게 다르지 않지만, 서버에 저장되고, 서버에 직접 접근하지 않는 이상 세션 내의 데이터를 탈취하는 것은 어렵다고 보시면 됩니다.
-캐시
캐시의 경우 쿠키, 세션과는 전혀 다른 기능을 가지는데요.
홈페이지를 접속하면 css, js, 이미지 파일이 사용자의 브라우저에 저장이 됩니다.
그 후 다시 같은 홈페이지를 접속하게 되면 css, js, 이미지 파일을 서버가 아닌 사용자의 PC에서 가져오게 됩니다.
이렇게 저장된 데이터를 캐시되었다고 합니다.
이로써 얻는 이점은 css, js, 이미지의 용량이 3MB라고 가정할 때, 서버는 한번 요청될 때마다 3MB의 자원을 아끼는거죠.
대부분의 홈페이지는 상단, 하단이 동일하므로 더욱 더 많은 자원이 아껴지는겁니다.
이로써 발생하는 문제가 있는데요.
홈페이지 관리자가 이미지를 변경 -> 사용자는 이미지가 변경되어있지 않음.
위와 같은 상황이 발생할 수 있습니다.
이러한 경우도 브라우저에 이미 캐시되어있는 경우 발생하는 문제죠.
해결 방법은 사용자 브라우저의 캐시를 지워주거나, 서버에서 클라이언트로 응답을 보낼 때 header에 캐시 만료시간을 명시해주는 등 방법은 다양합니다.
# DOM
- DOM(Document Object Model)은 HTML 문서의 모든 요소에 접근하는 방법을 정의한 API
- DOM은 Core DOM과 XML DOM, HTML DOM 세가지로 분류
- DOM은 노드구조로 트리형태로 표현
# 컬렉션이란?
-Java Collection Framework (JCF) , Java에서 객체를 모아서 제어, 관리하기위한 클래스
-List : 순서가 있는 데이터 집합, 데이터의 중복 허용
( LinkedList, Stack, Vector, ArrayList )
-Set : 순서를 유지하지 않는 데이터 집합, 데이터의 중복 불가
( HashSet, TreeSet )
-Map : 키(key)와 값(Value)의 쌍으로 이루어진 데이터의 집합, 순서 유지되지않음
키는 중복 허용하지 않지만 값은 허용
( HashMap, TreeMap, HashTable, Properties )
JAVA / Socket통해 서버-클라이언트 채팅 만들기
Code Blocks - C, C++ 개발도구
C 로 코딩 연습하고싶은데 노트북에 Visual Studio 설치가 안되서 찾아보니
Code Blocks이라는게 있대서 설치해 보았다.
codeblocks-16.01mingw-setup.exe 를 다운받아야 IDE + 컴파일러가 설치된다고 한다.
>>시작페이지
프로젝트를 생성하도록 하자
Console application으로 NEXT만 계속누르면 프로젝트가 하나생성된다.
기본으로 Hello World 출력소스가 작성되어있다.
초록버튼 또는 Ctrl + F10 으로 컴파일한다.
아직 안써봤지만 Visual Studio보단 가벼운 것같다.
설치도 빠르고 켜지는것도 금방 켜지
단점은 디자인구림..? 뭐 테마있겠지... 바꿔야겠다.