전체 글 168

Java Exception의 종류와 원인

ClassNotFoundException 클래스를 찾지 못함 CloneNotSupportedException Cloneable 인터페이스 미구현 IllegalAccessException 클래스 접근을 못함 InstantiationException 추상 클래스 또는 인터페이스를 인스턴스화 하고자 할때 InterruptedException 쓰레드가 중단 되었을때 NoSuchFieldException 지정된 필드가 없을때 NoSuchMethodException 지정된 메소드가 없을때 [IOException] CharConversionException 문자 변환에서 예외가 발생했을때 [IOException] EOFException 파일의 끝에 도달했을때 [IOException] FileNotFoundExcept..

Java 2019.05.31

[WAS] Servlet과 WAS 그리고 Spring 컨테이너 실행과정

1. Servlet Servlet의 실행 과정 1. 클라이언트로 부터 들어온 HTTP request를 Servlet Container(Tomcat의 역할)에게 보낸다. 2. Servlet Container는 HttpServletRequest, HttpServletResponse 두 객체를 생성한다. 3. 사용자의 요청이 어느 서블릿에 대한 요청인지 찾는다. ㄴweb.xml에 작성된 mapping정보를 통해 확인. ㄴ서블릿에 명시된 매핑정보를 통해 찾는다. => @WebServlet("/myservlet") 4. Servlet Container는 서블릿의 service메소드를 호출 ㄴPOST-GET 여부에 따라 doGet() 혹은 doPost()가 호출된다. 5. doGet() 혹은 doPost()를 통해..

Java/Spring 2019.05.30

Memory Compression(메모리 압축) 해제 하는법

검색해보니, Memory Compression는 Windows10에서 새로 추가된 메모리 압축 기능이었다. 어떤사람들은 4000스레드를 잡아먹고 있었다고 하는데 나는 고작 42스레드 정도였다. 그리고 메모리는 280MB정도 잡아먹고있었다. 최근에 노트북에 램을 하나 더 붙여서 16G가 된 터라, 램이 충분해서 메모리 압축기능은 필요가 없었다. 그래도 재미로 Memory Compression을 해제하는 방법을 찾아봤다. 방법 1. Windows PowerShell 관리자 권한으로 실행 2. disable-mmagent -MemoryCompression 3. 재부팅 4. 편-안 MemoryCompression을 관리하는 프로그램이 mmagent인것 같다. [명령어] mmagent : 현재 설정된 상태 ena..

이것저것 2019.05.14

[MySQL] MySQL 외부접속 허용 설정

서버 환경 Ubuntu 14.04 LTS PHP 7.1.0 Apache Web Server 2.4.7 MySQL 5.5.62 원격 접속 환경 Windows 10 64bit Mysql WorkBench 8 로 ubuntu mysql서버에 접속하려고 하니 Failed to Connect to MySQL at \[server ip:3306\] with user ...라는 오류가 발생했습니다. 1. mysql server listen ip 대역 확인 mysql server 의 listen ip 대역을 확인하기 위해 아래 명령어를 실행합니다. sudo net stat -ntlp | grep mysqld 결과 tcp 0 0 127.0.0.1:3306 0.0.0.0:\* LISTEN 7931/mysqld2. LIST..

데이터베이스 2019.03.21

[Anaconda] 아나콘다(Anaconda)란?

'아나콘다' 란 쉽게 말해, 라이브러리들을 쉽게 설치하고 관리할 수 있게 해주는 도구 이다. 이렇게만 말하면 쉽게 이해가 가지 않을 수 있으니 아래에서 python과 비교를 해보자. sklearn : scikit-learn 패키지는 머신러닝 교육을 위한 파이썬 패키지 pandas(판다스) : 데이터 분석, 데이터 처리 등을 쉽게 하기 위해 만들어진 패키지 numpy(넘파이) : 벡터, 메트릭스, 고수준의 배열 등등, 과학계산 컴퓨팅에 사용되는 패키지 scipy(사이파이) : 고급 수학 함수, 수치적 미적분, 미분방정식 계산, 최적화, 신호 처리 등을 위한 다양한 과학 기술 계산 기능을 제공하는 패키지 파이썬은 기본적으로 패키지 관리 시스템인 pip만을 포함하고 있습니다. 그래서 필요한 툴,..

Spring - 3. DI 와 IOC

Spring프레임워크를 사용하기 위해 꼭 잡고 가야할 개념이 있다.. 그것은 바로 DI와 IOC 먼저 DI란 Dependency Injection의 약자로 전략패턴, 의존성 주입 이라고도 합니다. 코드의 수정 없이, 사용하고자 하는 클래스를 주입하고 변경할 수 있게 하는 디자인 패턴입니다. 클래스를 부품화 시킨다. 클래스들의 중복되는 부분(기능)을 interface로 만들고, 그 interface를 상속하여 ex) class Student { private MathTest math = new MathTest(); private EnglishTest eng = new EnglishTest(); } class Student { private MathTest math; private EnglishTest en..

Java/Spring 2019.01.04

Spring - 2. 스프링 설치

1. IDE설치 Spring을 사용하는 방법에는 1. 기존에 사용하던 Eclipse에 STS(Spring Tool Suite)플러그인을 설치하는 방법. 2. Spring에서 제공하는 STS를 다운로드하여 사용하는방법. 이렇게 두가지가 있는데 나는 후자를 사용한다. STS도 버전에 따라 생성할 수 있는 프로젝트가 차이나는데, STS4는 기본적으로 Spring Boot를 지원하고 Spring Legacy 프로젝트를 지원하지 않는다. 나는 Spring boot가 아닌 Spring Legacy project를 사용할 것이기 때문에 STS3버젼을 사용할것이다. 아래 링그로 들어가서, https://spring.io/tools3/sts/legacy Spring Tool Suite™ 3 (STS 3) Download..

Java/Spring 2019.01.04

[MySQL] mysql server timezone 한국으로 설정하기.

timezone이란? 한국은 표준시(대한민국 표준시 - KST)를 하나의 시간대(timezone)만 사용하지만 미국처럼 영토가 넓은 국가들은 timezone이 여러개 있습니다. 또한 각 타임존 역시 2종류로 나누어 집니다. (타임존의 약자에 S가 들어가면 겨울의 시간, D가 들어가면 서머타임이 적용될 때의 시간대 입니다.) 그리고 '그리니치 천문대'가 있는곳의 시간은 UTC 입니다. 그래서 예를들어 UTC-8 은 그리니치 천문대가 있는위치. 즉 세계협정시에서 8시간을 뺀 시간이라는 의미 입니다. (하이픈이 아니라 마이너스 부호임) KST는 UTC+9입니다. 그리고 미국 캘리포니아주의 LA는 겨울에는 태평양 표준시인 PST(UTC-8) 을 사용합니다. 하지만 섬머타임에는 PDT(UTC-7)을..

데이터베이스 2018.12.31