(day01 복습) JPA는 인터페이스이므로, JPA구현체는 hibernate이다. insert -> persist select -> find update -> setter delete -> remove ------------ JPA new project - 추가 해야 할 dependencies application.properties JPA는 mybatis(hikari)가 아닌 jdbc를 사용함. #oracle spring.datasource.driver-class-name=com.p6spy.engine.spy.P6SpyDriver spring.datasource.url=jdbc:p6spy:oracle:thin:@localhost:1521:XE spring.datasource.username=hr sp..
AOP(Aspect Oriented Programming) 관점이란 개발에 있어서, 관심사(Concern)를 의미한다. 코드의 중복을 줄일 수 있으며, 핵심 로직과 주변 로직을 분리하여 관리할 수 있다. - 파라미터가 잘 전달 되었는가? - 이 로직에서 발생할 수 있는 모든 예외 처리 핵심 로직은 아니지만 반복적으로 개발에 필요한 관심사들을 주변 로직이라고 한다. 따라서 AOP는 이러한 주변 로직을 횡단 관심사로 분리하여 작성하고 종단 관심사인 핵심 비지니스 로직만을 작성하도록 한다. 예) 나눗셈 프로그램 개발 시 두 개의 숫자를 나누는 것(핵심, 종단) 0으로 나누는 지 검사하는 것(주변, 횡단) 즉, 반복적으로 나타나는 횡단 관심사를 모듈로 분리한 후 적절한 시점에 로직을 주입하는 것이 AOP이다. ..
ORM(Object Relational Mapping) 객체진영과 RDB진영을 자동으로 매핑하여 구조의 불일치를 개발자 대신 해결해주는 기술의 총칭이다. 객체지향 구조에서 프로그래밍 언어를 사용하여 RDB의 데이터를 조작하는 방법이다. ORM을 사용하면 개발자가 SQL문을 직접 작성하지 않아도 RDB와 상호작용할 수 있다. JPA(Java Persistence API) (자바에 특화시켜서 ORM을 쓸 수 있게 만들어놓은 틀이 jpa이다. db와 java를 연동) ORM을 사용하기 위한 설계도(틀)이다. Java Application용 RDB 매핑 관리를 위한 인터페이스이며, DBMS 벤더사에 의존하지 않고 독립적으로 ORM을 사용할 수 있는 ORM 표준이다. 인터페이스이기 때문에 구현되어 있지 않은 틀만..
order project 조회, 전체 조회 숙제풀이 중단점(디버깅) 왼쪽에 빨간 점: 중단점 디버그 -> 톱니바퀴 기계로 컴퓨터가 돌아감. 세계 최초의 exception -> 톱니바퀴 사이에 벌레가 들어가 있어서 오류가 생김. 버그를 없애자, 오류를 해결하자, 오류를 검사하자 -> 디버그 중단점을 설정해서 여기서부터~여기까지 한줄씩 검사를 해보겠다. 디버깅상태를 눌러주면, 한줄씩 번역 가능. -> 너무 오래 걸리니까 단위테스트로 발전 @Controller Bean을 등록한다? > 어떤 영역에 저장이 된다. ApplicationContext : Bean을 관리해주는 객체, context영역을 관리하는 객체 Context : 메모리 상의 임시영역을 쓴다, context가 있으면 임시로 메모리에 올려놓고 필요..
어떤 태그든지 안에 selectKey태그를 쓸 수 있다. order="" >> 안에 쿼리를 언제 실행할 지 순서를 정해준다. before(insert 전에), after(insert 후에) 시퀀스의 nextval > 다음 번호를 select 시퀀스의 currentval > 현재 번호를 select select 한 것을 keyProperty로 전달받은 파라미터의 객체로 들어간다. 메소드의 파라미터 resultType의 결과로 들어간다. keyProperty 내용을 필드명과 동일하게 써야 파라미터의 필드가 정확히 매핑이 될 수 있다. public int insert(BoardVO boardVO) boardVO의 boardNumber로 들어간다. insert에서 전달받은 boardNumber를 그대로 사용하면..
1.프로젝트 만들고 설정, DB 세팅 2.mapper.xml > 쿼리 작성 // 파라미터 타입은 생략 가능(메소드 매개변수로 판단), resultType은 리턴타입과 맞춰주기 3.mapper.java > 인터페이스 생성 // @Mapper 4.config에서 alias 작성 5.mapperTest.java > 단위테스트 실시 6.DAO(JPA를 배우면 jpa repository로 바뀔 예정) - 자바스럽게 바꿔주는 역할 7.dao 단위테스트 persistence tier 끝 --------------------------------------- business tier 시작 8.service > 인터페이스 생성 // @Service 9.service > 구현 클래스 생성 // @Service 10.ser..
File > new > project Spring initializr > project SDK : 11 java version > Next Artifact : 프로젝트명 > Type : Maven Project > Java Version : 11 > Version : 1.0(또는 수정X) > Description : 프로젝트설명 > Next 필요한 거 클릭 Quartz Scheduler : 실시간으로 돌아가는 스케줄러 > Next Project name, location 확인 > Finish This Window : 현재 창에 뜨게 하기 New Window : 새로운 창에 뜨게 하기 1).properties 설정적기 : 포트번호, 서버연결 등 2)mybatis 연결(mybatis, config) 3)po..
favicon 링크태그 추가하면 끝!