본문 바로가기

IT 관련/java

java MVC 모델, mvc 모델2 패턴 웹 개발을 하면서 가장 흔하게 접하는 mvc 모델과 그와 관련된 내용을 적어볼까 합니다. 먼저 입구가 되는 뷰는 사용자가 결과를 보거나 입력을 할 수 있는 화면이라고 생각하면 됩니다. 이벤트를 발생시키고, 이벤트의 결과를 보여주는 역할을 합니다. 컨트롤러는 뷰에서 중간을 연결해 주는 연결자라고 생각하면 됩니다. 뷰에서 받은 이벤트를 모델로 연결하는 역할을 합니다. 여기서는 인터페이스를 제공하여 뷰에서 호출하는 부분입니다. 모델은 뷰에서 입력된 내용을 저장, 관리, 수정하는 역할을 합니다. 이벤트에 대한 실질적인 일을 하는 부분입니다. 이와 같이 웹이 아닌2 티어 구조에서는 이렇게 처리됩니다. 하지만 JSP를 사용하는 3 티어로 되어있는 JSP 모델은 주로 모델 1과 모델 2를 사용합니다. JSP 모델1은.. 더보기
java GC (Garbage Collection)에 대해서 자바 기반의 개발을 하면서 쓰레기 객체 처리(이하 GC, Garbage Collection)가 어떻게 수행되는지 잘 모르고 개발하는 개발자가 많이 있습니다. 물론 이 부분에 대해서 반드시 암기하고 숙지해야 개발을 할 수 있는 것은 아닙니다. 그러나 유닉스 서버든, 윈도우 기반의 서버든 Full GC를 수행하는 시점에는 해당 WAS의 컨테이너에서 서비스가 처리되지 않는다는 단점이 있습니다. 다시 이야기하면 GC를 많이 하면 할수록 응답 시간에 많은 영향을 끼친다는 것입니다. 그러므로 자신이 만든 자바 프로그램의 성능을 생각하는 자바 개발자라면, GC가 어떻게 처리되는지 정도의 기본 지식은 갖고 있는 것이 좋을 것입니다. GC란? 자바에서는 메모리 관리를 누가 해야 하는가에 대해서 생각을 좀 해보겠습니다. .. 더보기
java for 루프를 더 빠르게 하기 어떤 프로그래밍을 하든 구문 사용은 기본 중의 기본이다. 하지만 그 반복 구문도 잘만 사용하면 성능 향상을 가져올 수 있다. 어찌 보면 단순하지만, 많은 성능 향상을 가져올 수 있는 반복 구문에 대해서 자세히 알아보자. 조건문은 성능에 얼마나 많이 영향을 줄까? 먼저 조건문에 어떤 것들이 있는지 보고, 조건문이 얼마나 성능에 영향을 주는지 알아보자. 조건문의 종류는 다음과 같다. 1. if-else if-else 2. switch if문 안에는 boolean 형태의 결과값만 사용할 수 있다. switch문은 byte, short, char, int 이렇게 네 가지 타입을 사용한 조건 분기만 가능하다. 일반적으로 if문에서 분기를 많이 하면 시간이 많이 소요된다고 생각하는데, 아주 잘못된 생각이다. if문.. 더보기
서블릿에서 한글 처리와 폼 데이터 처리하기 안녕하세요 초이스40입니다. 오늘은 웹 브라우저에서 응답하는 페이지의 한글 처리하는 방법에 대해서 알아보겠습니다. 웹 개발을 접하면서 첫 페이지에 가장 많이 쓰는 단어 "Hello World"입니다. 이것을 조금 바꾸어서 "안녕하세요"라고 출력해 보도록 하겠습니다. 1. 한글 깨지지 않게 설정하기 HttpServletResponse rest = rest.setContentType("text/html"); PrintWriter out = resp.getWriter(); out.println(""); out.println(""); out.println("Hello World"); out.println(""); out.println("안녕하세요"); out.println(""); out.println("");.. 더보기
java 환경설정 > java -version 안녕하세요 초이스40입니다. 이번 글에서는 지난시간에 설치한 java 1.8 jdk 버전의 환경세팅 하는 방법을 간단하게 포스팅하겠습니다. java를 설치한 후 설정을 완료하게되면 cmd 창에서 java -version 이라는 명령어를 실행했을 때 자바 버전 정보가 노출되어야합니다. 하지만 java를 다운로드해서 설치만 한 경우는 그렇지 않습니다. 다운로드 후 환경설정까지 해줘야만 자바 버전정보를 보여줄 수 있게 됩니다. 자바 다운로드 받기는 아래 링크를 통해서 확인 가능합니다. https://chois82.tistory.com/15 1. java 버전 확인 > java -version 환경세팅을 하지 않은 상태에서 java -version 실행하면 아래와 같이 메세지가 나옵니다. 참고) 콘솔창 띄우는 .. 더보기
java 다운로드 및 설치하기 - 자바 jdk, jre 설치 안녕하세요 초이스40입니다. 오늘은 자바를 다운로드해서 설치하는 방법을 알아보려고 합니다. 자바는 썬 마이크로시스템즈라는 회사의 언어였는데요 2009년 4월 21일 오라클에 인수되었습니다. 이후 다운로드도 오라클을 통해서 다운로드 가능합니다. 다른 URL도 있는 거 같기는 하지만 일단 오라클이라는 회사에 인수되어 오라클에서 관리하는 프로그래밍 언어라는 것을 말씀드립니다. 1. 다운로드 https://www.oracle.com/java/technologies/java-archive-eesdk-downloads.html 위 URL에 접속해서 원하는 자바 버전을 다운로드하시면 됩니다. 1996년 처음 발표된 1.1 버전을 시작으로 저는 현업에서 1.8버전을 사용하고 있는데요. 세상에,,,,,, 자바 버전에 벌.. 더보기
Map for문 돌리기 - How to loop a Map in Java [JAVA] 안녕하세요 초이스40입니다. 오늘은 자바의 Map을 이용해서 loop를 돌리는 방법 4가지를 정리할까 합니다. 개발을 하다 보면 조건문과 반복문이 거의 주를 이루는 경우가 많은데요 실제로 많이 쓰이죠,,, 자바에서는 Map에 담은 데이터를 이용해서 loop를 실행해야 할 때가 많이 있습니다. 그래서 이번에 loop를 실행하는 방법 네 가지에 대해서 아래와 같이 정리합니다. 본인이 개발하는 프로세스에서 적절한 방법을 찾아서 사용하면 되겠습니다. 1. Iterator를 이용한 while 문 이용하는 방식 Iterator keys = mapData.keySet().iterator(); while( keys.hasNext() ){ String key = keys.next(); System.out.println(.. 더보기