Database
- MySQL Spring boot 연결하기 2022.07.12
- MySQL 설치 2022.07.11
- myBatisTest / drill 2022.05.26
- Core Idea. 2022.05.25
MySQL Spring boot 연결하기
MySQL 설치
검색창에 mySQL Download서치
mysql download
MySQL Community (GPL) Downloads
MySQL Installer for Windows
No thanks Default > next, yes! > Execute > next
product Configuration 건드릴거 없이 next > next > Use Legacy Authentication Method >
Port#
MySQL por t 3306
Oracle Port 1521
React 3000
Tomcat 8080
> Use Legacy Authentication Method (Retain MySQL 5.x Compatibility)
> Accounts and Roles
> 관리자 계정 root / 1234 & 사용자 계정은 사용 안함.
> Next > Next > Execute > FInish > next MqSQLRouter Config 로 돌아옴
> 다시 Finish > product config 에서 next >
다음
아까 지정했던 root 비밀번호 입력하고 서버 테스트 한다.
아래 화면 뜨면, 한번 더 Execute 하고 Finish
설치 끝난후 MySQL Workbench 구동된 화면
<workbench>
1. DB 구동 연결 : connect to Database
2. Database : oracle 에선s xe를 제공, mysql : mydb 생성 #CreateSCHEMA 'mydb' default char
store in vault 클릭 후 비밀번호 입력 -> Ok 클릭
2. Database : oracle 에선s xe를 제공, mysql : mydb 생성 #CreateSCHEMA 'mydb' default char (좌측상단 원통형 클릭)
-> apply -> apply -> Finish
'Database > Mongd' 카테고리의 다른 글
MySQL Spring boot 연결하기 (0) | 2022.07.12 |
---|
myBatisTest / drill
Idea에 정리한 myBatis working procedure 리마인드.
(0) config.xml로 connection pool 생성 해준 후, mapper.xml 관련 정보를 포함시켜준다.
(1) UserMain 사용자 입력 받기
public void menu() {
UserService userService = null;
Scanner scan = new Scanner(System.in);
int num = 0;
while(true) {
System.out.println();
System.out.println("*************");
System.out.println(" 1. 입력");
System.out.println(" 2. 출력");
System.out.println(" 3. 수정");
System.out.println(" 4. 삭제");
System.out.println(" 5. 검색");
System.out.println(" 6. 끝");
System.out.println("*************");
System.out.print(" 번호 : ");
num = scan.nextInt();
(2) UserService로 넘어간다.
UserService 는 각 메서드를 가진 insert, delete, search, selectservice 자바 페이지의 인터페이스가 들어간다.
- mvc에서 servlet 쓰다오니까 헷갈린다. usermain -> userservice -> userinsertservice -> userDAO 순이다.
package user.service;
public interface UserService {
public void excute();
}
(3) UserInsert/Delete/Update/SearchService
UserMain에서 사용자 입력값은 else 조건문으로 받았고, DAO를 통해 database에 값을 저장시킨다.
각 service 클래스의 execute를 불러와서 실행시킨다.
public class UserInsertService implements UserService {
@Override
public void excute() {
Scanner scan = new Scanner(System.in);
System.out.print("이름 :");
String name = scan.next();
System.out.print("아이디 :");
String id = scan.next();
System.out.print("비밀번호 :");
String pwd = scan.next();
//name, id pwd를 UserDTO에 담기
UserDTO userDTO = new UserDTO();
userDTO.setName(name);
userDTO.setId(id);
userDTO.setPwd(pwd);
//DB
UserDAO userDAO = new UserDAO();
userDAO.write(userDTO);
//응답
System.out.println("데이터를 저장하였습니다.");
}
}
(4) Data access object 구동 방식.
DB 직접 접근 안하고 간접적으로 datasource에 요청하는것 확인
public UserDAO() {
try {
Reader reader = Resources.getResourceAsReader("mybatis-config.xml"); // src 라는 말은 default로 설정되어있다
sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
'Database > myBatis' 카테고리의 다른 글
Core Idea. (0) | 2022.05.25 |
---|
Core Idea.
myBatis - Software Framework.
framework 란, 복잡한 문제를 해결하거나 서술하는 데 사용되는 기본 개념 구조를 말한다.
myBatis는 그중에서도 ORM으로 분류되는데 ORM은 Object Relational Mapping의 약자로써 오브젝트와 관계형 데이터벵크의 데이터를 자동으로 매핑해주는 것으로 이해
1. 특징
(1) 쿼리문, 예외처리, 트랙잭션 관리들을 XM 형식으로 관리. XM은 확장자를 말한다.
(2) 쉽고, 간단하고, 의존성 줄이기라는 세가지 목표를 갖음.
sql문과 자바 코드 분리하여 자바 개발하는 쿼리문을 신경쓰지 않아도 된다.
(3) SQL를 자바코드와 분리, SQL 문 수정이 있을때마다 자바를 변경/컴파일 하지 않아도 된다.
2. 설치
(2) product -> 3.5.7 (필요한 버전) -> mybatis 3.5.7 download -> java_ee (필요한 폴더에 압축 풀기)
(3) 압축 해제한 폴더에 보면 파일 4가지가 들어있다. (License, mybatis, mybatis jarfile, notice) -> jarFile만 사용
(4) 사용 방법 :
eclipse에 자바 프로젝트 open -> lib파일을 만들어준다 -> ojdbc, jar, mybatis 세 개 파일을 넣어준다.
-> 넣은 파일 세가지 스크롤해서 마우스 우클릭, Build path 설정해준다 ->reference libraries 생성된 것 보이면 설정완료
3. myBatis 작동 순서
4. myBatis 환경설정
mybatis-config.xml
(1) Connection Pool
=> 서버에 미리 Connection 만들어 놓는 것. 구동시 마다 켜지 않아도 되기 떄문에 시간적인 면에서 효율적이다.
=> driver, username, password 등 jsp header에 일반적으로 기입되었던 정보들을 의미함
(2) mapper.xml (sql) 정보를 포함하고 있어야 한다.
(3) 별칭 필요 / 이름이 너무 길다면 짧게 만들 수 있다.
(4) 메모리의 크기를 조정할 수 있다.
5. myBatis 구조
(1) myBatis에 접근하기 위해선 sqlSession 객체가 필요하다
(2) SqlSessionFactory를 통해 sqlSession를 생성한다. => 일반적으로는 DAO 에서 sqlSession을 생성해주면 된다.
6. 데이터를 꺼내오는 과정
(1) dataSource를 통해서 data들을 꺼내온다.
dataSource는 은행 직원이라고 생각하면된다. 직접 DB에 접근은 못하지만 간접적으로, dataSource에 요청되고
dataSource가 DB접근후 데이터를 꺼내온다.
7. myBatis Mapper Interface
- 를 통해서 DB접근
basic structure below
'Database > myBatis' 카테고리의 다른 글
myBatisTest / drill (0) | 2022.05.26 |
---|