Spring FileUpload 에러 처리 목차 파일 업로드 중 에러 발생 Spring에서 fileUpload 작업을 하기 위해 작업을 하지만, Error가 내 앞을 반겼다. 이 문제의 가장 큰 원인은 submit을 했을 때, Controller와 Mapping이 되지 않는다는 것이다.그리고 Mapping이 되지 않는 것에는 설정이 가장 큰 원인이 된다. 에러 고치기 1. form의 enctype="multipart/form-data" 확인하기 2. pom.xml에서 commons가 등록이 되어있는지 확인한다. 3. servletDispatcher 설정 확인하기 4. MultipartHttpServletRequest로 request값 가져오는지 확인하기 마무리 Spring에서 file 업로드를 하기 위해..
Properties 고급 버전 목차 Message에 대해 알아보자 기존 Properties를 JSP에서도 쉽게 활용할 수 있는 방법 중 하나입니다. 좀 더 다채롭게 변형시킬 수도 있고, 간편하게 Properties를 접근할 수 있게 도와줍니다. XML 설정하기 /WEB-INF/properties/data1 /WEB-INF/properties/data2 사용하고 있는 context.xml에 다음과 같은 xml을 등록해줍니다. 기존 Properties가 있다면, 이 설정 하나로도 끝났습니다. Properties, Java에서 호출하기 ReloadableResourceBundleMessageSource는 xml에 등록된 내용을 복사 붙여놓기를 진행합니다. 기존 Properties와 다르게 호출하게 됩니다. 여..
지난 시간에 이어 Properties를 사용하는 시간을 갖겠습니다. ▼ propeties 정의하기 2개의 properties안에는 총 8개의 문자가 작성되어 있습니다. 우리는 이를 사용하기 위해 properties를 불러와야 합니다. Spring의 실행 시, index.jsp가 실행되는 것을 아는 이상, 이를 불러오도록 하겠습니다. 이 과정이 귀찮다면 main함수를 이용하셔도 상관없습니다. ▼ Properties 불러오는 방법 초간단 설명을 위하여, 한 개의 properties 보다는 2개의 properties를 이용하였습니다. 그리고 2개 이상의 properties를 불러오는 방법은 대표적으로 3가지의 방법이 존재합니다. @PropertySource를 이용하여 한 개씩 부르는 방법 @PropertySo..
MAVENREPOSITORY 활용하기, pom.xml 설정하기 목차 MAVENREPOSITORY소개 mvnrepository.com/ 사이트 입니다. 인터넷이 되는 환경이라면 어디든지, Spring에 적합한 라이브러리를 제공해줍니다. Version과 개발환경만 맞다면 누구나 쉽게 사용할 수 있지만 반대로 환경과 라이브러리 버전과 호환이 되지 않는다면 라이브러리를 설치하여도 실행이 안됩니다. 따라서, 라이브러리를 무조건 최신으로 설치하시면 안 되며 라이브러리를 설치 후 해당 라이브러리가 실행되는지에 대해서 반드시 Test를 진행하시는 것을 추천드립니다. 사용 방법 빨간 1번을 이용하여, 자신이 찾는 라이브러리를 검색합니다. 검색결과가 도출된다면, 자신에게 알맞은 라이브러리를 선택합니다. 제 경우에는 파란 ..
스프링 프로젝트 만들기입니다. 기본적으로 톰캣 9.0과 Java1.0.8을 사용하고 있으며, Maven 방식을 이용하고 있습니다. ■ 프로젝트 만들기 프로젝트를 만드는 방법은 여러가지가 존재합니다. '무조건 이렇게 만들어야 한다.' 라는 점은 아니라는 것을 먼저 알려드립니다. new - project에서 maven Project를 찾아줍니다. 없을 경우, 제일 아랫부분 Other에서 위와 같이 검색하면 Maven Project가 검색이 됩니다. 처음은 체크만 확인해주시고 Next를 눌러줍니다. 버전은 1.0으로 맞춰줍니다. (21.05.09 기준) 같은 버전 1.0은 약 3개 정도 있으며, 이 중에서 Artifact Id가 maven-archetype-webapps를 찾습니다. Group_id는 도메인의..
Properties 이번 포스팅에서는 스프링의 기능 중 하나인, properties에 대해 설명을 갖도록 하겠습니다. 이 기능은 간단하게 표현한다면, public static final의 동일한 기능입니다. Java의 가장 기초로 구성되어 있는 이것은 누구나 알수 있듯이 같은 프로젝트 내의 누구에게나 접근허용이 가능한 절대 변하지 않는 상수 입니다. 만약, public static final을 자주 쓰지 않는 사람이라면 당연히 properties까지 생소하게 들릴 수 있는데요. 이것을 왜 사용하는지 부터 알아보도록 하겠습니다. ▶ 사용하는 이유 유지보수 용이 관리하기 편함 SERVER 패치후에도 수정이 가능 능동적 대응 가능 일단 사용하는 이유에 대해서, 손에 꼽는 이유라고한다면 유지보수입니다. publ..
LifeCycleException, Catalina Exception 해결하기 프레임워크 : 이클립스 Server : Tomcat 프로젝트를 받고 실행 했을 때, Catalina 관련 Exception Code가 발생한다. 이를 해결하기 위해서는 다음과 같은 방법을 사용하면 된다. 해당 조치는 Maven 저장소를 지우고 다시 하는 방법이며, 이 과정에 필자는 약 25분 정도 소요 되었다. 예외내용 org.apache.catalina.LifecycleException: Failed to start component StandardEngine[Catalina].StandardHost[localhost].StandardContext[/controller] 해결 방법 1. [메뉴]Window - Preferen..
출처 = 인프런 [윤재성 강사님의 스프링MVC 강의] Interceptor Spring Framework의 AOP를 활용한 Spring MVC의 요소 Interceptor는 요청 주소에 대해 관심을 갖고 요청이 발생하게 되면 요청 주소를 확인하여 Controller의 메소드를 호출하기 전이나 후에 다른 메서드를 호출 할 수 있도록 가로채는 개념 스프링은 기본적으로 WEB의 요청을 CONTROLLER가 가져가지만, AOP는 요청된 값을 전 혹은 후에 낚아채는 개념이다. 이와 비슷하게 인터셉터는 컨트롤러에게 넘어가기 전에, 값을 컨트롤러에게 넘길 것인지, 말 것인지 결정짓는 역할을 하게 된다. 요청 발생 시 호출되는 메소드의 코드가 중복 되는 부분이 있을 때 Interceptor를 처리하게 되면 피할 수 있..
전에는 jsp로 값을 넘겼다면, 이번 시간에는 jsp로부터 값을 받는 경우에 대해 설명하겠습니다. 예를 들면 회원가입을 하였을 때, 입력 값을 Spring에게 건넸을 때 받는 방식 입니다. 여러가지의 방식이 있으며, 이에 대해서는 상황에 따라 선택해서 사용하시면 되겠습니다. 첫 번째 방법 @RequestMapping("/sendTest") public String sendTest(Model model, HttpServletRequest request) { String id = request.getParameter("id"); String pw = request.getParameter("pw"); model.addAttribute("identify", id); model.addAttribute("passw..
앞에서 XML을 통해서 Controller가 인식되는 것을 확인하였습니다. 이번시간에는 JSP(View)에게 값을 넘기는 것에 대해 설명하겠습니다. 여기서 주목해야 할 것은 Model 이라는 객체입니다. Model은 JSP에서 request값과 비슷하며 JSP에서 request.setAttribute("키값", 결과 값)을 입력했다면 Spring에서는 model.Attribute("키값", 결과 값)을 입력하게 됩니다. 이제 여기서 두 가지 방법에 대해 이야기 하겠습니다. 첫 번째 방법 입니다. @RequestMapping("/replay") public String replay(Model model) { model.addAttribute("id", 30); return "list/replay"; } m..
1. 프로젝트 생성 NEW - ORTHER 2. Spring Legacy Project 생성 3. Project명 생성, Spring MVC Project 선택 4. 필수적으로 3개의 경로를 통해 도달하도록 설정 (kr.co.spring , com.co.spring 등) 4. MVC가 정상적으로 만들어졌는지 확인한다. Controller 위치와 src 안의 view 위치를 파악해둔다. Spring MVC 구조도 Client를 통해 DispatcherServlet으로 가는 것을 확인한다. DispatcherServlet이 모든 것을 관리, 실행하므로 매우 중요함을 알 수 있다. Client 의 위치에 속한다. jsp를 실행하게 되면 가장 먼저 실행하는 경로, 위치에 속한다. 그래서 들어가보면 자동으로 만들..
aop 방법, JAVA 방식에 대해 설명이다. Bean 데이터(Student, Worker) 더보기 Student.java package com.day03.Ex07; public class Student { private String name; private int age; private int gradeNum; private int classNum; public String getName() { return name; } public void setName(String name) { this.name = name; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public int getGradeN..