목록[Web] (89)
요르딩딩
예시 ) 데이터베이스에 Unique키로 설정되어있는 컬럼 A가 있습니다. 이미 A컬럼에 111이라는 값이 들어가 있는 상태에서 insert문을 활용하여 111을 삽입하려고 할때 오류가 발생합니다. 발생하는 error는 DuplicateKeyException 입니다. [예외처리 코드] try { TaxagentMapper.updateSvcJoinInfo(newParam); } catch(DuplicateKeyException e){ result.setResultCode("409"); result.setResultMsg("이미 등록된 A컬럼 입니다."); return result; } 해당 에러발생시 에러 로그가 발생되지만, 예외처리 작성하였으므로 문제없이 진행이 가능합니다. 자세한 내용은 검색을 통해 공부..
blog.naver.com/qhdqhdekd261/221787865474 [spring] 스프링부트 - 파일 다운로드 코드(InputStreamResource, ByteArrayResource) 프로젝트 추가 수정사항으로 파일 다운로드가 가능하게 해달라는 요청이 있었다.학원 개인 프로젝트로 쇼핑... blog.naver.com
Spring MVC의 컨트롤러 @Controller와 Restful 웹서비스의 컨트롤러 @RestController의 차이점은 HTTP Response Body가 생성되는 방식입니다. 1. @Controller (Spring MVC Controller) * 주로 View를 반환하기 위해 사용합니다. (화면만, 데이터만, 화면+데이터 반환가능) * Data를 반환하는 경우도 있고, 이럴경우 @ResponseBody 어노테이션을 활용하면 됩니다. [Contorller - View] Client > Dispatcher Servlet > Handler Mapping > Controller > View > Dispatcher Servlet > Client 1. 클라이언트는 URI형식으로 웹서비스에 Request를..
DB를 사용하기 위해서는 dispatcher-servlet.xml에서 설정했던 명칭 방식을 따라합니다. 저는 "com.company.RuRu"를 기반으로 만들었습니다. (아래소스는 mapper와 더불어 전반적인 설정입니다.) 1. DAO 설정 (mapper.java) Data Access Object의 약자입니다. 데이터를 조작하는 기능을 전담하는 객체라고 생각하면 됩니다. mapper.java @Repository("")는 해당 클래스의 호출명칭 같은 것으로, 다른클래스에서 해당 클래스를 접근하고자 할때, 사용합니다. datasource-mapper.xml에서 등록한 sqlSession클래스에 접근하기 위해서는 @Autowired를 사용합니다. mapper.xml에 를 적어두어, mapper.java(..
Dispatcher_servlet이란 : Servlet Container에서 HTTP프로토콜을 통해 들어오는 모든 요청을 프레젠테이션 계층의 제일 앞에 둬서 중앙집중식으로 처리해주는 프론트 컨트롤러(Front Controller) 제일 먼저 서버로 들어오는 모든 요청을 처리하는 프론트컨트롤러 공통처리 작업을 Dispatcher 서블릿이 처리한 후, 세부 컨트롤러로 작업을 위임해줍니다. Dispatcher-Servlet이 처리하는 url패턴을 지정해줘야하는데 일반적으로 /*.do와 같이 '/'로 시작하여 '.do'로 끝나는 url패턴에 대해서 처리하라고 지정해 줍니다. [Dispatcher-Servlet의 장점] - 해당 어플리케이션으로 들어오는 모든 요청을 핸들링해주면서 web.xml의 역할을 상당히 축..
프로젝트는 Maven프로젝트에 Spring Dependency를 추가하여 진행할 것입니다. 즉, Maven + Spring Dependency로 진행한다 말입니다. 1. 메이븐 프로젝트 생성하기 : New > Select Wizard > Maven Project 선택 2. Maven web app 프로젝트를 선택해 줍니다. : New Maven Project > Artifact ID : maven-archetype-webapp 선택 3. Group ID 와 Artifact ID를 입력합니다. : Group ID는 전체 프로젝트의 구분자 (예) 회사이름 또는 학교이름 같은것을 넣으면 되고, Artifact ID는 프로젝트 이름을 넣어주면 됩니다. 4. Tomcat Library를 추가해줍니다. : 프로젝트..
인턴쉽을 거쳐 신입개발자가 되면서 금융플랫폼개발을 시작하게 되었습니다. Spring에 대해 막연하게 알고 있었던 지식들과 개발하면서 알게 되었던 지식들을 최대한 심플하게 정리하며 공부해보려고 합니다. Spring이란 : 자바 플랫폼을 위한 오픈소스 애플리케이션 프레임워크 간단히 말하면, 여러개발자들이 하나의 프로젝트를 동시에 개발할때 편리하도록 하기 위한 하나의 구조, 뼈대라고 생각하면 될거 같습니다. 여기서 프레임워크에 대한 용어를 간단히 살펴보자면, 프레임워크란 : 복잡한 문제를 해결하거나 서술하는데 사용되는 기본 개념구조 즉, 프레임워크란 우리의 개발을 용이하게 해주고 효율을 높여주는 도구하고 생각하면 될거 같습니다. 해당 내용에 대해서 자세한 설명은 검색을 통해 찾아보고 참고하면 좋을거 같습니다.
1. select insert into select 후 insert 보다 > select insert into를 활용하여 디비접근을 최소화하면 실행속도를 높일 수 있다. INSERT INTO table2 (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM table1 WHERE condition; 2. mybatis의 태그 : insert 후 저장된 row 데이터의 auto_increment 키값을 가져와야 할때 참고 : yookeun.github.io/java/2014/07/11/mybatis-selectkey/ 3. 'EXPLAIN' 'EXPLAIN' 을 사용하면 쿼리를 실행하기전에 실행계획을 분석하여 출력한다. 출처..