전체 글 77

정적 팩토리 메소드(Static Factory Method) 장단점

이펙티브 자바 책 공부중 내용 정리가 필요 할것 같아 정리합니다. 참고 하실 분들은 아래 색 보시고 참고 하시면 될것 같습니다. 검정 : 책내용 파랑 : 정리 빨강 : 중요 장점 1) 이름을 가질 수 있다. - 생성자의 매개변수와 생성자 그 자체만으로는 반환될 객체의 특성을 제대로 설명하지 못한다. 반면, 정적 메소드는 이름만 잘 지으면 반환될 객체의 특성을 쉽게 묘사 가능하다. 예를 들면 BigInterger(int, int, Random); // 기본 생성자. BigInterger.probablePrime(); // 정적 팩토리 메소드. 위의 경우 둘 중 정적 팩토리 메소드가 probablePrime이 '값이 소수인 BigInterger를 반환한다.' 라는 의미가 명확하다. - 생성자는 하나의 시그니..

개발언어/Java 2019.05.11

[eclipse] The declared package "" does not match the expected package "" 패키지 위치 에러

The declared package "" does not match the expected package "" 이클립스 환경에서 테스트 용으로 새로 스프링 부트 프로젝트를 생성하니 "~Application.java" 파일 최상단 package에서 위와 같은 에러가 발생 하였습니다. 분명 위치는 정확한데 위와같은 에러가 발생하여서 다른 문제가 있을것으로 판단하고 검색 해보니 이클립스에서 해당 계층구조를 제대로 인식 못해서 발생할 수 있다고 하네요. 해결법으로 총 3가지 확인이 되는데 1. 파일이 존재하는 패키지에서 파일 다른 패키지로 이동 후 다시 복구. 2. 패키지 에러나는 파일 삭제 후(프로젝트에서만 삭제 폴더에는 남겨 둘 것) 다시 추가. -> 말만 다르지 1과 거의 동일한 방법으로 보입니다. 3...

[Spring Boot] '파일 위치 설정' 및 '파일 위치' 올바른 상태에서 404에러

방금 1시간동안 삽질하다가 해결해서 글 올립니다. 서버 실행 후 위와 같이 404 에러가 계속해서 발생해서 파일 위치와 'application.properties' 파일을 확인해 봤지만 별다른 문제가 없었습니다. 그러던중 콘솔창에 WARN으로 나오는 내용 중 이상한점을 발견했습니다. Path with "WEB-INF" or "META-INF": [/WEB-INF/jsp/ ***.jsp] - ***은 파일명 입니다. 보이시나요? /WEB-INF/jsp/ ***.jsp 이 부분의 읽어오는 경로를 자세히 보시면 /WEB-INF/jsp/ ***.jsp 패스와 파일명 사이에 공백이 보이네요. 그래서 다시한번 application.properties 파일을 자세히 살펴보니 spring.mvc.view.prefix=..

서블릿(Servlet)이란

예전에 호기심으로 웹에 대해 공부를 시작하며 처음 JSP를 접하게 됐는데 그땐 그냥 관심일 뿐이어서 깊게 공부하지 않았었습니다.그러다 최근 이직을 하며, 프로그래밍 내에서 분야가 완전 바뀌게 되어서 스스로 정리할 필요성을 느껴 처음부터 제대로 정리하고 가자는 생각에 글을 쓰게 되네요.일단 처음으로 JSP를 공부하며 자주 접했던 용어인 Servlet에 대해 정리하고 넘어갈까 합니다. 자바 서블릿(Java Servlet) 자바 서블릿(Java Servlet)은 자바를 사용하여 웹페이지를 동적으로 생성하는 서버측 프로그램 혹은 그 사양을 말하며, 흔히 "서블릿"이라 불린다. 자바 서블릿은 웹 서버의 성능을 향상하기 위해 사용되는 자바 클래스의 일종이다. 서블릿은 JSP와 비슷한 점이 있지만, JSP가 HTML..

개발언어/Java 2018.12.10

Mac OS X 대시보드 끄기

나이가 먹어서 그런진 몰라도 맥북은 너무 적응이 안된다. 매직 키보드에서 텍스트 지우기 누르려다가 키를 잘못눌려서 대시보드로 왔다갔다 할때가 있는데 이때 사람에 따라 엄청난 빡침을 경험할 수 있다. 적어도 나는 그랬다.. 평소엔 엄청 순한성격인데.. 아마도 매직 키보드인 이유가 사용하면 마술같이 화나있어서 그런것 같다.. 거지같은 키감에 UX란걸 고려 하지않고 만들어진것 같은 배치 누가 디자인 하고 만들었는지는 모르지만 만날 수만 있다면 매직 키보드로 후려쳐서 키보드가 이등분 나든지 그분의 뚝배기(머리)가 이등분 나든지 하는 매직유저를 보여주고 싶을때가 한두번이 아니다. 그래도 매직 마우스에 비하면 양호한 편인데, 이 마우스는 통칭 예쁜 쓰레기로 불리는 마우스로 사용하다보면 거지같은 사용감과 사용 후 시..

OS 관련/mac os x 2018.12.05

웹 서버 설치 및 운영_1

리눅스에 웹서버 설치하는 방법에 관한 글입니다. 먼저 APM(Apache, PHP, MySQL)을 설치합니다. 우분투에서는 apt-get을 사용하면 간단하게 설치가 가능합니다. 1) 터미널에 apt-get -y install lamp-server^ 입력합니다. APM의 설치가 진행됩니다. 2) MySQL의 설치중 server의 관리자인 root의 비밀번호 지정창이 나타나면, 원하는 비밀번호를 입력합니다. 확인 창이 나오면 다시한번 비밀번호를 입력해 줍니다. 3) 설치가 완료되면 dpkg -l '패키지이름' 명령어를 입력해 APM의 버전을 확인합니다. 4) systemctl restart apache2 와 systemctl enable apache2, systemctl status apache2 를 차례로..

OS 관련/리눅스 2018.12.04

쿠키와 세션

쿠키 - 위키 쿠키란 하이퍼 텍스트의 기록서의 일종으로 인터넷 사용자가 어떠한 웹사이트를 방문할 경우 그 사이트가 사용하고 있는 서버를 통해 인터넷 사용자의 컴퓨터에 설치되는 작은 기록 정보 파일을 일컫는다. HTTP 쿠키, 웹 쿠키, 브라우저 쿠키라고도 한다. 이 기록 파일에 담긴 정보는 인터넷 사용자가 같은 웹 사이트를 방문할 때마다 읽히고 수시로 새로운 정보로 바뀐다. 이 수단은 넷스케이프의 프로그램 개발자였던 루 몬툴리가 고안한 뒤로 오늘날 많은 서버 및 웹사이트들이 브라우저의 신속성을 위해 즐겨 쓰고 있다. 쿠키는 소프트웨어가 아니다. 쿠키는 컴퓨터 내에서 프로그램처럼 실행될수 없으며 바이러스를 옮길수도, 악성코드를 설치할 수도 없다. 하지만 스파이 웨어를 통해 유저의 브라우징 행동을 추적하는데..

카테고리 없음 2018.12.02

개발자 창업에 관한 글

Okky에서 어떤분이 단 댓글인데 읽어보고 너무 좋은 내용이라 혼자 보긴 아까워서 퍼왔습니다. "회사입장에서는 내가 우리에 포함되는것이 아니구나 라는 생각이 들었습니다."나이 40 먹고도 못 깨닫는 개발자들이 많은데 빨리 깨달으셨네요.전산업종은 개발자보다 영업이 위에 있지요. 솔루션이나 납품한 시스템이 대박이 나서 수 십억이 회사의 당좌에 입금될 때 사장과 임원, 영업은 자기 숟가락을 들고 회의실로 뛰어들어가 각자 수 천에서 수 억원의 성과급을 받아가거나 패키지가 팔릴 때마다 퍼센테이지로 돈을 몇 백씩 받아가는데, 개발자는 휴가 일주일이나 30만원짜리 기프트 카드 한 장이 전부입니다. 이건 사실상 실컷 먹고 남은 고기 찌꺼기나 던져주고, 시스템 개발의 공로를 인정하지 않겠다는 뜻입니다.개발자들은 그 시스..

이것 저것 2018.12.02

대충살자

시작하는 것에 비해 끝내는게 너무 힘들다. 타지에 와서 살게되면서 혼자있는 시간이 늘어나니까 혼자서 생각에 빠져있는 시간도 늘어났다. 그렇게 드는 생각들이 좋은생각이라면 좋겠지만 항상 좋은 생각보단 부정적인 생각이 많이들게 된다. '난 지금 뭘하고 있는거지?', '지금 제대로 살고 있는건가?', '남들다 자신의 길을 향해 나아가는데 나만 제자리 걸음하고있는거 아닌가?' 대체로 이런 생각들이다. 그런 무기력한 감정에 빠져있을때 뭐라도 해야 하지 않을까 싶어서 '블로그라도 해볼까?'라는 생각으로 티스토리를 하게된 것 같다. 하면서 뭔가 긍정적으로 변해가걸 느끼고 싶었다. 그래도 뭔가 하고있다는 느낌이들면 좋지 않을까해서 시작했지만 오히려 지금 나에게 나의 더 부정적인 모습을 보게되는 것 같다. 단적인 예가 ..

카테고리 없음 2018.11.30

자바 SE, EE, ME

자바 SE(Java Platform Standard Edition) 데스크톱, 서버, 임베디드 시스템을 위한 표준 자바 플랫폼. 자바 가상머신 규격 및 API 집합을 포함 JAVA EE, ME는 목적에 따라 SE를 기반으로 기존의 일부를 택하거나 API를 추가하여 구성된다. SE는 가장 일반적으로 사용된다. JDBC나 기본적인 기능이 모두 포함되어 있기 때문에 Android 개발할 때 주로 SE를 사용한다. 자바 EE(Java Platform Enterpise Edition) 자바를 이용한 서버측 개발을 위한 플랫폼. 기존 SE에 웹 어플리케이션 서버에서 동작하는 분산 멀티미디어를 제공하는 자바의 기능을 추가한 서버를 위한 플랫폼. JAVA SE의 서버측을 위한 기능을 부가하였기 때문에 SE 기능을..

개발언어/Java 2018.11.22