하나의 객체가 다른 객체 없이 역할을 제대로 행할 수 없다는 것 = 의존성A객체가 B객체 없이 동작이 불가능한 상황을 A가 B에 의존적이다 라고 표현한다.의존성 주입이란, 어떤 객체가 필요한 객체를 외부에서 밀어 넣는다. 라는 것스프링에서는 생성자를 이용한 주입, S
컴파일시 코드를 작성하는 기능을 완성해주는 라이브러리@Settersetter 메소드를 만들어 줌3가지 속성 부여value : 접근 제한 속성onMethod : setter메소드 생성시 메소드에 추가할 어노테이션 지정 예제에는 @Autowired 지정onPara
oracle data base 11g express 설치https://www.oracle.com/database/technologies/xe-prior-releases.htmlsql developer 설치11g express가 설치된 경로에 다운로드https&
여러명의 사용자를 동시에 처리해야하는 데이터베이스 연결을 이용할때 커넥션 풀을 사용한다DataSource라는 인터페이스를 통해 이를 사용하며,Hikari CP라는 커넥션 풀을 사용하기 위해 설정을 진행한다.pom.xml에 Hikari CP 를 추가한다root-conte
SQL로그를 보기위해서는 log4jdbc-log4j2 라이브러리를 사용해야한다src/main/resources 하위에 log4jdbc.log4j2.properties파일을 작성한다.root-context 내용을 변경한다.실행 결과RootConig의 DataSource부
스프링 MVC는 스프링의 SUB 프로젝트스프링은 하나의 기능을 위해 만들어진 것이 아닌, 여러 서브프로젝트들을 합친 하나의 코어Spring legacy, Spring MVC로 프로젝트 생성pom.xml내의 자바 버전 변경, lombok, spring-test, JUn
리턴타입을 void로 할 경우 해당 URL의 경로를 그대로 jsp 파일 이름으로 사용void타입 리턴상황에 따라 다른 화면을 보여줄 경우가 있을 때 사용redirect 또는 forward 키워드를 붙일 수 있다.VO나, DTO타입 등 여러 데이터가 들어간 객체로 지정
파일 업로드하는 방법에 대해 학습해보자.pom.xml에 commons-fileupload 라이브러리를 추가한다.그리고 파일이 임시로 업로드 될 폴더를 C하위에 upload/tmp로 생성한다.그리고 servlet-context 파일에 아래와 같은 설정을 추가한다.maxU
@ExceptionHandler, @ControllerAdvice를 이용한 처리@ResponseEntity를 이용하는 예외 메시지 구성@ControllerAdivice는 해당 객체가 스프링의 컨트롤러에서 발생하는 예외를 처리하는 존재임을 명시하는 용도@Exception
config : 프로젝트 설정 클래스 보관controller : controller 보관service : service 인터페이스, 구현 클래스domain : VO,DTO 클래스persistence : Mybatis Mapper 인터페이스exception : 예외처리
영속계층(CRUD연산을 수행하는 계층)은 데이터 생성/수정/삭제/조회를 수행한다.여기선 영속계층의 CRUD구현을 다룬다.영속계층의 작업은 항상 아래 순서를 따른다테이블 칼럼구조를 반영하는 VO(Value Object)클래스 생성mybatis의 Mapper 인터페이스의
비즈니스 계층은 고객의 요구사항을 반영하는 계층이다.프레젠테이션 + 영속계층의 중간다리 역할을 한다.영속계층은 DB를 기준으로 설계를 나눠 구현하지만, 비즈니스계층은 로직을 기준으로 처리한다.예를들어, 쇼핑몰에서 상품을 구매한 회원에게 포인트를 올려준다라고 하면 영속
http://samara.computer/531_adaptive/startbootstrap-master/startbootstrap-master/sb-admin-v2.php템플릿을 다운로드하고, 압축해제한 파일의 내용을 webapp/resources에 복사한다.
SQL에서 정렬하기 위해선 'order by'를 이용한다. 하지만 데이터가 많은 경우에서 성능 저하를 가져오기때문에 주의해야한다.페이징을 위해 반드시 알아야 할 것 = 실행계획실행 계획 : SQL을 DB에서 어떻게 처리할 것인가? 라는 계획을 두는 것이다.DB에 전달된
페이징 처리를 위해 필요한 파라미터가 있다.페이지번호(pageNum)한 페이지당 몇개의 데이터를 보여줄 것인지.(amount)예제를 통해 구현해보도록 한다.domain에 Criteria클래스를 생성하고 작성한다.mapper패키지의 BoardMapper에 Criteria
이전까지의 내용은 해당 값으로 브라우저에 요청을 하면 페이징을 나누어 이동할 수 있었다.이번에는 밑에 페이지번호를 추가하여 클릭시 해당 페이지로 이동할 수 있도록 하는 것을 구현하고자 한다.다음 과정을 통해 진행한다.브라우저 주소창에서 페이지 번호를 전달해 결과를 확인
게시글을 누르고(GET) 수정페이지에서 다시 List로 넘어갈 때 현재 페이지에 해당하는 리스트로 복귀하는 기능을 구현한다.get에서 수행했던 것 처럼 modify페이지에서도 amount, pageNum 데이터를 가지고 있다가 list의 cri 객체에 넘겨주어야한다.그
스프링프레임워크를 사용하기 위해선 환경설정이 필요하다.springframework 버전을 3.XX에서 5버전대로 변경한다JDK를 1.8버전으로 변경한다maven-compiler-plugin도 같은 버전으로 변경한다.Spring-TEST 추가Lombok 추가log4j 버