IT, 프로그래밍/Java
-
인텔리제이에서 JDK 버전이 안 맞을때 해결방법IT, 프로그래밍/Java 2019. 2. 12. 10:10
인텔리제이에서 자바 기반의 프로젝트를 진행하다보면, 프로젝트에 분명 JDK 경로를 잡아주었는데도 불구하고, 다른 버전이 설정되어 있을 때가 있다. 나 같은 경우에는 JDK 1.8을 설정했음에도 불구하고, JDK 1.5를 계속 찾아서 API를 사용하기가 힘들었다. 그럴경우, 아래와 같이 설정 해 주면 된다. 1.제일 상단 바에 가서 FIle - > Project Structure -> Module -> (프로젝트 더블클릭) -> Sources -> Language level -> JDK 버전 설정 2. Settings -> Build, Execution, Deployment -> Compiler -> Java Compiler -> Target bytecode version -> 설정할 버전
-
[JAVA/WEB] Properties 파일로 중요 정보 관리하기IT, 프로그래밍/Java 2019. 1. 28. 09:37
어플리케이션을 만들다 보면 중요한 정보를 사용해야 할 때가 있다. 그런데 이걸 소스내에 하드코딩해서 관리하기엔 아래와 같은 문제가 있다. 1. 런타임 중에 변경할 수 없다. 즉 정보가 하나라도 변경되면 서버를 껐다가 켜야한다. 2. 유지보수가 힘들다. ENUM이나 상수로 정의해서 사용해도 되지만, 결국은 소스코드를 뒤져야 하며, 유지보수에 악영향을 미친다. 3.보안 처리가 힘들다 소스코드 자체는 암호화 하기가 힘들다. 파일로 따로 빼서 관리하면 IO 과정에서 암/복호화 할 수 있으므로 보안에 유리하다. 1234db.driverName=com.mysql.jdbc.Driverdb.url=jdbc:mysql://localhost:3306/mydbdb.id=myiddb.pwd=mypwdcs JDBC 접속 정보를..
-
[JAVA] Servlet Build Path 설정IT, 프로그래밍/Java 2019. 1. 24. 15:54
The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path 처음 서블릿 프로젝트를 만들었을 때, 이라는 에러가 뜨는 경우가 있다. 말 그대로 현재 상속받는 서블릿 코드를 지금 설정해놓은 Build Path에서 못 찾았다는 뜻이다. 이럴 때는 서블릿을 구동 시킬 수 있는 환경을 설정해 주면 해결된다. 만약 톰캣을 안깔았으면 먼저 톰캣을 설치하고 환경설정 까지 끝내주자. Project 파일의 제일 상단에서 우클릭 -> Build Path -> Configure Build Path.. Add Library.. 클릭 Server Runtime 클릭 class path에 잡혀있는 서버 목록이 뜬다. 해당 환경을 선택하고 ..
-
[JAVA] 자바와 셀레니움(Selenium)으로 웹 페이지 가지고 놀기IT, 프로그래밍/Java 2019. 1. 18. 16:33
What is Selenium? 셀레니움은 웹 어플리케이션을 간편하게 테스트 하기 위해 만들어진 툴입니다. 웹 어플리케이션은 어떤 방향을 가지고 동작이 이루어집니다. 예를 들면 게시판에 글을 쓰기 위해서는 메인 페이지를 조회하고, 메뉴바에서 로그인 버튼을 클릭한 후에 ID와 PW를 입력하여 로그인 한 후에, 게시판 페이지를 조회한 후에 게시판 글쓰기 버튼을 클릭합니다. 만약 이런 중간에 거쳐야 할 동작들이 40, 50개 정도 있다면 일일이 사람이 클릭하면서 확인하기는 무리가 있을 것입니다. 예를 들면 설문조사 페이지를 만들어서 잘 동작하는지 확인하기 위해 입력 버튼을 100개를 클릭해야 한다면, 어떤 기능을 확인하기 위해 수십개의 버튼을 클릭해 가면서 확인해야 합니다. 셀레니움을 쓰면 내가 지정한 동작을..
-
[Java] javap를 사용하여 바이트코드를 확인해보자IT, 프로그래밍/Java 2019. 1. 9. 15:11
가끔 코드를 작성하다 보면 실제 동작되는 바이트 코드를 확인하고 싶을 때가 있습니다.이럴 때 JDK에 내장되어 있는 javap 라는 역어셈블러를 사용하면 됩니다. 1. cmd를 켜서 workspace에 있는 프로젝트 파일 안의 bin 폴더로 이동합니다. ( cd C:\user\kim\workspace\yourProejct\bin )2. javap -c 패키지명.클래스파일명 으로 명령을 수행합니다. 기타 옵션 -? 도움말을 출력 -l 클래스 내 모든 라인 번호와 지역변수 테이블을 출력합니다 -public 클래스 내 public 접근 지정자로 선언된 클래스와 멤버를 출력합니다. -protected 클래스 내 protected 접근 지정자로 선언된 클래스와 멤버를 출력합니다. -private 클래스 내 pri..
-
[JAVA] 채팅 만들기 완전 분석 ( 에코 서버 - 클라이언트 )IT, 프로그래밍/Java 2019. 1. 9. 09:40
보통 자바를 배우는 초심자에 있어서 과제의 끝판왕(?)이라고 불리는 채팅 프로그램에 대해서 알아보겠습니다.채팅 프로그램을 만들기 위해서는 아래와 같은 배경지식이 필요합니다. 네트워크 기초 (TCP/IP)JAVA I/O (Stream)Thread (Multi-Chatting 구현시 사용) 채팅의 원리 서버-클라이언트 : 서버와 클라이언트 모두 네트워크에 연결되어 IP를 할당 받고 있는 디바이스 입니다. 서버는 클라이언트가 필요한 자원을 가지고 있습니다. 클라이언트는 서버에 특정 자원에 대한 요청을 하면 서버는 그 자원을 찾아서 응답을 해 줍니다.지금 이 글을 보고 있는 것도 티스토리에 있는 서버에 브라우저를 통해 이 글에 대한 자원을 요청했고, 서버가 그에 응답으로 자원을 주었기 때문에 볼 수 있는것이 가..
-
이클립스 실행 에러 해결 (a java runtime environment ..)IT, 프로그래밍/Java 2018. 11. 7. 23:19
a java runtime environment (jre) or java development kit (jdk) must be available in order.. 으로 시작하는 에러가 떴다. 뭐 자바 실행파일을 찾을 수 없어서 에러가 났다는데.. 해당 경로를 확인해 보니 jre 버전이 1.8.0.191로 업데이트가 되어있었다. 환경변수는 잘 잡혀있으니 문제가 없는데.. 중요한건 버전이 바뀐 JRE 새 경로를 등록해 주어서 이클립스가 찾을 수 있게 해 주어야 했다. 그렇게해서 구글링 하던 중 발견한 해결 방법. 1) 이클립스 설치폴더로 가서 eclipse.ini 파일을 연다 2) -vm 이라는 항목을 찾아서 변경된 jre 실행 경로로 바꿔준다. (가상머신 설정 관련된 것인듯) -vmC:\Program F..
-
Eclipse Heap Memory 늘리기IT, 프로그래밍/Java 2018. 8. 1. 09:39
작업 중에 보면 힙 메모리가 부족해져서 이클립스가 꺼질때가 있다. 이때 JVM에 할당되는 메모리가 많이 있는지 확인 해 보아야 한다. 1) Eclipse 설치 폴더로 이동 2) eclipse.ini 파일 열기 3) 12-Xms128m-Xmx2048mcs Xms : 최소 힙 메모리 할당량Xmx : 최대 힙 메모리 할당량 필요할 것으로 예상되는 할당량을 적절히 적어주고 저장. * 너무 많은 힙 메모리를 할당하면 메모리가 부족해져서 작동 중인 다른 프로그램이 다운 될 때가 있다.