반응형

1. 개요

 스프링 서버에서 DB 조회 결과를 내가 커스텀한 객체(DAO)로 가져오고 싶은 경우가 있다. 그럴 때 아래 예제처럼 resultType을 풀패키지 경로로 입력해야한다. 만약 입력한 BoardDAO 객체가 다른 쿼리에서도 사용된다면, 해당 쿼리의 resultType 또한 풀 패키지경로로 입력해야할 것이다. 추가로 패키지 경로가 바뀌거나 클래스 명이 바꿔버린다면? 모든 쿼리 설정파일을 바꿔줘야할 것이다.

 이러한 문제를 미연에 방지할 수 있는 방법이 바로 Mybatis의 typeAlias(별명) 설정이다.


2. typeAlias

 typeAlias는 패키지에 대한 별명을 지정할 수 있다. Mybatis 설정 파일에서 설정 가능하며, 아래 예제와 같이 typeAlias 태그의 type 값에  풀 패키지명을 입력하고, alias에는 별명을 지정한다.

typeAlias 설정

 


3. Mybatis 설정 파일 로드

 Mybatis 설정파일을 로드하는 방법은 스프링의 context 설정 중 sqlSessionFactory를 설정하는 부분에 configLocation 값으로 mybatis 설정파일 경로를 넣어주면 된다. 내 설정파일은 클래스파일 경로에 포함되어있기 때문에 다음과 같이 classpath 로 경로설정을 하였다.

 


4. 적용

 설정이 적용되면 resultType에 Alias로 값을 넣고 테스트해보자. 정상적으로 조회됨을 확인할 수 있을것이다.

 mybatis 설정 에러가 발생하는 경우가 있는데, 그럴때는 seetings라는 태그가 configuration태그 내 첫번째로 위치하는지 확인하자.

반응형
반응형

1. oracle 12c 설치

https://www.oracle.com/database/technologies/oracle-database-software-downloads.html

 

2. sqldeveloper 18.4 설치(JDK include ver)

https://www.oracle.com/technetwork/developer-tools/sql-developer/downloads/sqldev-downloads-184-5458710.html

 

3. 두 파일 모두 압축해제

 

4. oracle 설치 파일 실행(비밀번호 입력을 제외한 모든 항목 수정하지 않고 진행)

 

5. oracle 서비스 수동 전환(서비스가 자동 실행 되어있으면 oracle을 사용하지 않을 때에 컴퓨터가 버벅거릴 수 있음)

시작 - 서비스

 1) Oracle ~~ TNSListener - 수동으로 변경

 2) OracleServiceORCL - 수동으로 변경

 컴퓨터를 재부팅하면 해당 서비스는 자동으로 실행이 되지 않음. 때문에 오라클 프로그램에 필요한 서비스가 로드되지 않아 에러가 발생할 수 있음. 때문에 불필요한 메모리 낭비를 하기 싫다면 위의 설정을 따르고, 메모리 낭비가 상관없을 만큼 컴퓨터 사양이 좋다면 위의 설정은 하지 않아도 된다.

 서비스를 재실행시키려면 서비스 탭으로 들어가 서비스를 실행시키거나, bat파일을 만들어 서비스를 실행시키면 된다.

 

6. cmd 실행 후 sqlplus 입력

 

7. 사용자 명에 sys as sysdba를 입력하고 비밀번호는 입력하지 않고 엔터키를 누르면 설치한 Oracle Database 12c에 접속됨.

Oracle Database 12c 접속 성공

9. tablespace 생성

 * tablespace란 데이터를 관리하는 논리적인 저장 구조이다. 쉽게 말하면 테이블을 관리하는 공간을 의미한다. 테이블 데이터의 기본 용량을 설정할 수 있으며, 용량 초과 시 자동적으로 10 mbyte씩 증가한다.

 create tablespace [테이블 스페이스명] datafile 'orcl 경로\[database파일 명.dbf]' size 500m; 입력

 참고로 oracle 12c 버전의 orcl의 경로는 c드라이브의 app에 생성된다.

 

10. user 생성

 데이터베이스 user를 생성한다.

  create user [아이디] identified by [비밀번호] default tablespace [테이블 스페이스명] temporary tablespace temp;

유저 아이디 오류

 사용자 이름에 오류가 생겼다.

 12c 버전부터는 유저 아이디 앞에 c##이라는 문자열을 삽입해줘야 한다. 필자는 그게 귀찮기때문에 아래의 명령어를 추가하여 c##을 입력하지 않고 유저 아이디를 생성하였다.

 

c## 생략 가능하게 하는 명령어

11. user에게 권한 주기

connect, resource, dba 권한 부여

12. sql developer 실행

 경로 설정이 나올시 '아니요' 클릭.

 실행되면 아래 버튼 클릭

 

13. 접속 정보 입력

접속 정보 입력

접속 이름 : 임의의 이름

사용자 이름 : 생성한 유저 이름

비밀번호 : 생성한 유저의 비밀번호

호스트 이름 : 기본값

포트 : 기본값(1521)

SID : 데이터베이스의 전역 DB명. 기본값(orcl)

 

 * SID 확인 방법

 

입력 후 테스트 클릭. 성공 시 저장 후 접속.

성공

워크시트가 생성되면 성공

반응형

'DB > Oracle' 카테고리의 다른 글

[MyBaits] typeAlias 설정  (0) 2021.06.07

+ Recent posts