Back-End

    [Spring/스프링] Spring MVC JDK, Java, Servlet 버전 변경 및 업그레이드 방법

    1. pom.xml에서 JDK, Java 버전을 11, Servlet 버전을 3.1로 변경 후 저장한 다음 "프로젝트 우클릭 -> Maven -> Update Project" 11 3.1.1.RELEASE 1.6.10 1.6.6 org.apache.maven.plugins maven-compiler-plugin 2.5.1 11 11 -Xlint:all true true javax.servlet javax.servlet-api 3.1.0 provided 2. web.xml 에서 DTD를 3.1로 변경 3. 프로젝트 우클릭 -> Project Facets -> Dynamic Web Module="3.1", Java Version="11"로 변경 4. 프로젝트 우클릭 -> Project Facets -> Ja..

    [Java/자바] BigDecimal 정리

    https://www.acmicpc.net/problem/2720 2720번: 세탁소 사장 동혁 각 테스트케이스에 대해 필요한 쿼터의 개수, 다임의 개수, 니켈의 개수, 페니의 개수를 공백으로 구분하여 출력한다. www.acmicpc.net 위의 문제를 풀다가 BigDecimal을 처음 사용해봤는데 잘 정리해두면 유용하게 쓰일 것 같아서 포스팅합니다! BigDecimal? - 자바에서 숫자를 정밀하게 저장하고 표현할 수 있는 객체입니다. - 자바에서 소수는 정밀도의 한계로 인해 값이 유실되는 경우가 있는데, 그것을 방지할 수 있습니다. - 단점은 느린 속도 & 복잡한 사용 방법을 제외하면 없습니다. (그만큼 좋음!) BigDecimal 기본 상수 BigDecimal은 객체이기 때문에 초기화가 기본 타입보..

    [스프링/Spring] Spring MVC 기초

    오랜만에 스프링 MVC를 공부했는데 다 까먹어서 오늘 공부한 기본적인 개념만 정리해보려 합니다 첫 번째로 스프링 MVC 프로젝트의 기본적인 구조입니다. 중요한 부분은 servlet-context.xml과 web.xml 파일입니다. servlet-context.xml 파일은 resources 설정과 viewResolver를 설정하고, 프로젝트에 필요한 빈 객체를 생성하는 스프링 컨테이너입니다. web.xml 파일은 DispatcherServlet을 등록하고 매핑을 해주는 웹 설정 파일입니다. 다음은 Controller 영역입니다. Controller는 사용자의 요청을 실제로 처리하는 영역이라고 생각하시면 됩니다. 값을 가지고 view로 가서 실제 사용자들에게 출력을 해주는 역할을 하는 곳입니다. 위 코드는..

    [자바/JAVA] 래퍼 클래스(Wrapper Class)

    래퍼 클래스(Wrapper Class) 란? 자바의 자료형은 크게 기본 타입(primitive type)과 참조 타입(Reference type)으로 나누어진다. 대표적인 기본 타입으로 char, int, float, double, boolean 등이 있고 참조 타입으로 class, interface 등이 있는데 간혹 기본 타입의 데이터를 객체로 표현해야 하는 경우가 있다. 이럴 때 기본 자료 타입(primitive type)을 객체로 다루기 위해서 사용하는 클래스들을 래퍼 클래스(Wrapper class)라고 한다. 자바에서 모든 기본타입은 값을 갖는 객체를 생성할 수 있는데, 이런 객체를 포장 객체라고 한다. 이 객체는 기본 타입의 값을 내부에 두고 포장을 하기 때문에 그렇게 불리는데, 래퍼 클래스로..

    [자바/JAVA] StringBuffer / StringBuilder

    StringBuffer란? String 클래스와는 다르게 StringBuffer 클래스는 인스턴스의 값을 변경할 수 있는 가변 클래스(mutable class)이다. StringBuffer는 내부적으로 버퍼라는 독립적인 공간을 가지는데 기본값은 16이다 (문자 16개 저장 가능) 물론 생성자를 통해 버퍼의 크기를 설정해줄 수도 있다. String으로 문자 결합 시 새로운 인스턴스가 계속해서 생기기 때문에 메모리 공간도 낭비되고 속도도 느려지게 되는데 StringBuffer 클래스는 기존 인스턴스에 문자열을 추가할 수 있기 때문에 공간 낭비도 없고 속도도 빨라집니다. StringBuffer에서 append() 메서드를 통해서 문자열을 추가할 수 있습니다. StringBuffer sb = new String..