본문 바로가기
반응형

컴퓨터공학 기초/기초개념+TIP19

JAVA 환경변수를 설정했는데 java 명령어가 안 먹힐 때 환경변수-시스템변수에 Path변수가 있다. 편집을 클릭한다. %JAVA_HOME%\bin을 맨위로 올린다. 확인한다. 2020. 12. 29.
[Maven] java: Compilation failed: internal java compiler error Maven으로 처음 프로젝트를 만들고 빌드를 하려고하면 java: Compilation failed: internal java compiler error 이러한 에러가 뜰 것이다. 원인은 Maven 은 처음 프로젝트를 만들게되면 build를 1.5기준으로 맞춘다. 해결방법은 아래 코드를 삽입해주면 된다. org.apache.maven.plugins maven-compiler-plugin 1.8 1.8 UTF-8 2020. 12. 13.
[Maven] maven unmappable character for encoding UTF8 maven으로 컴파일을 할때 maven unmappable character for encoding UTF8 이러한 오류가 발생할 수 있다. 검색해 보면 해결 방법은 간단하게 찾을 수 있다. org.apache.maven.plugins maven-compiler-plugin UTF-8 위와 같은 구문으로 encoding을 설정해주면된다. 나같이 maven이 익숙하지 않은 사람들을 위해서 조금 더 자세하게 적으려고 한다. 위의 문구는 build라는 태그 안에 들어가야한다. org.apache.maven.plugins maven-compiler-plugin UTF-8 2020. 12. 12.
[웹사이트] xss 방지 xss란 개발자가 의도치 않은 악성 스크립트를 삽입하여 공격하는 방법이다. 이런것을 의도치않고 개발했다가 xss공격이 들어오면 난감할 수 있다. 방지하는법은 매우 간단하다. 특수문자를 치환해주면 된다. 예를들어 " 2020. 4. 30.
[기초개념] Session Time설정에 따른 장단점 Session Timeout이 짧을 때 - 사용자가 불편할 수 있다. 이해를 돕기 위해 네이버가 Session Timeout을 5초로 설정했다고 가정하겠다. 메일을 보내려고 네이버에 로그인을 한 후 5~10분에 걸쳐 메일을 작성했다. 그리고 보내려고 보내기를 눌렀더니 권한이 없다고 로그인을 하란다. Session Timeout이 5초기 때문에 로그아웃 처리가 된것이다. 이렇기때문에 자주 로그인을 해야하는 불편함이 있을 수 있다. - Timeout이 길때보다는 보안에 이점이 있을 수 있다. Timeout이 5분이라고 가정하겠다. 은행에서 이체를 해야해서 로그인을 하고 이체를 했다. 10분뒤 어떠한 사람이 우연히 session key를 알게되서 자기의 은행으로 돈을 이체시키려고 시도했다. 하지만 5분이라는 .. 2020. 4. 11.
[docker] the input device is not a TTY. If you are using mintty, try prefixing the command with 'winpty' docker exec -i -t name bash 명령어를 실행할때 이런 오류가 났다. 안내문과같이 앞에 winpty를 붙여 winpty docker exec -i -t name bash 를 실행하면 정상적으로 동작한다. 2020. 4. 6.
[개발자 면접질문] Spring Security 관련 면접질문 1. Spring Security를 적용해보았는가 ? 2. Spring Security의 pricipal에는 어떠한 정보들이 담겨있는가 ? 3. Spring Security의 어노테이션들을 사용해보았는가 ? 4. Spring Security의 UserDetails 객체를 상속하여 커스텀객체를 만들어 보았는가 ? 2020. 3. 23.
[H2 Database] Database "C:/Users/choisangyong/datajpa" not found, either pre-create it or allow remote database creation (not recommended in secure environments) 처음 접속할 때 이런식으로 연결을 하면 파일이 만들어지면서 연결이 되어야한다. 하지만 Database "C:/Users/choisangyong/datajpa" not found, either pre-create it or allow remote database creation (not recommended in secure environments) 이런 오류가 발생 할 수 있다. 해결방법 웹사이트와 콘솔에서 실행을 종료후 콘솔에서 ./h2.bat (window 기준) 으로 다시 실행한다. 그렇게한다면 웹사이트가 새롭게 열릴것이다. 새롭게 열린 웹사이트는 어드민권한을 가지고 있으므로 위의 연결을 다시 시도한다면 정상적으로 동작할 것이다. 2020. 3. 23.
[intellij] 자주쓰는 단축키 (WINDOW) WINDOW 기준 Test Class 생성 : 클래스 이름에 두고 알트 + enter 메소드 결과타입생성 : ctrl + alt + v 오버라이드 목록 : ctrl + o 생성자, Getter, Setter 생성 : alt + insert 변수명 일괄 바꾸기 : 쉬프트 + F6 2020. 3. 22.
[개발자 면접질문] 서버개발자 기초 면접질문 JAVA의 main메소드를 작성해보시오. public static void main(String[] args) main메소드에서 public static을 쓰는이유 main 함수가 실행되기 위해서는 메모리에 올라가 있어야하고 어디서나 접근이 가능해야한다. 어디서나 접근이 가능해야 하기때문에 접근제어자는 public으로 설정을 해야한다. static을 빼게되면 메모리에 올라가있지 않으므로 사용할 수 없게된다. 이 개념을 모르겠다면 static 과 접근제어자를 공부하기를 권장한다. 쿠키와 세션의 차이 쿠키는 클라이언트 측에서 관리하고 세션을 서버에서 관리한다. 그렇기 때문에 쿠키를 사용하게 된다면 보안에 취약한 반면 서버의 부하를 줄일 수 있다는 장점이 있다. 세션은 보안에 강력한 반면 서버에서 한 번에 관.. 2020. 3. 5.
[JAVA] 클래스변수와 인스턴스 변수의 이해 우와 같은 Class가 있을때 인스턴스변수와 클래스 변수는 아래와같다. 인스턴스 변수 number 클래스변수 x 인스턴스변수와 클래스변수의 공통점으로는 선언위치가 클래스영역이다 그렇다면 차이점은 무엇일까? 바로 생성시기이다. 클래스변수는 클래스가 메모리에 올라갈 때 생성된다. 반면에 인스턴스변수는 인스턴스가 생성될 때 생성된다. 위의 예제를 확인하면 BasicClass.number는 인스턴스가 생성이 되지 않았기때문에 에러가 나지만 BasicClass.x는 클래스가 메모리에 올라갈 때 생성이 되기때문에 정상적으로 실행된다. 그렇다면 위의 코드의 실행결과를 예측해보자. 결과는 아래와 같다 왜 이러한 결과가 발생되는지 아려면 static에 대한 이해가 필요하다. 위에서도 말했다시피 클래스변수(static, .. 2020. 3. 2.
[JAVA] 객체지향언어의 장점 흔히들 객체지향언의 장점으로 아래 3가지를 꼽는다. 1. 코드의 재사용성이 높다 2. 코드의 관리가 용이하다 3. 신뢰성이 높은 프로그래밍을 가능하게 한다. 필자는 1,2번은 이해를 했지만 3번은 객체지향언어를 쓰는데 왜 신뢰성이 높아져?? 라는 의문을 품고있었다. 이 의문은 자바의정석을 읽으면서 해결되었다. 신뢰성이 높아지는이유는 제어자와 메소드를 이용하여 데이터를 보호하고 올바른 값을 유지하도록 하고 코드의 중복을 제거하여 코드의 불일치로 인한 오동작을 방지할 수 있어서이다. 필자는 코드의 중복을 제거하면서 만든 메소드가 항상 같은결과를 반환해주기때문에 올바른 값을 유지하도록 하여 신뢰성이 높아진다고 이해하였다. 출처 : 자바의 정석 3판 (저자 : 남궁성님) 2020. 3. 2.