본문 바로가기

분류 전체보기

(202)
[Ansible] 5. mariadb 바이너리 설치 앤서블로 mariadb를 설치하는 경우 보통 구글링에 나오는 자료들은 repository를 이용하여 패키지 설치하는 경우만 나오기 때문에, 해당 포스팅은 mariadb를 바이너리 설치하는 내용에 대해서 ansible의 모듈도 조금 익힐수 있게 설명과 소스를 포스팅 하겠습니다. 우선 전체적인 흐름을 먼저 잡아보자면 mariadb는 tarball을 가지고 설치를 합니다. 물론 yum ,apt , zhipper 등을 사용하면 이러한 설치 과정이 없이 바로 서비스를 등록할수 있지만, 인터넷 환경이 아닌 경우가 종종 있어서 알고 있으시면, 좋습니다. 1. tarball을 unarchive 합니다. 즉 압축을 푸는거죠. 2. 압축을 풀게되면 mariadb-linux-system-10.3.20 등 이렇게 디렉토리가 ..
[JPA] 5. JPA Repository 인터페이스 5-1. Repository란? Spring Data JPA에서는 여러 종류의 인터페이스의 기능을 통해서 JPA 관련 작업을 별도의 코드 없이 처리할 수 있게 지원합니다. 예를들면 인터페이스의 메서드를 호출하는 형태에 + 기능에 따라서 상속 구조로 추가적인 기능을 제공합니다. 이때 사용하는 인터페이스를 Repository라고 합니다. CRUD 작업 페이징 정렬 Repository CrudRepository PagingAndSortRepository JpaRepository 5-2. Jpa Repository 사용하기 사실 Repository를 생성할때는 인터페이스를 만들고, JpaRepository를 상속 하는것 만으로도 작업이 끝납니다. package com.example.demo; import org..
[Ansible] 4. vRealize Automation 연동 오늘은 VMware의 자동화 솔루션인 vRealize Automation과 Ansible의 연동을 다뤄보려고 합니다. 우선 크게는 해야할 작업은 다음과 같습니다. 앤서블 호스트를 설치합니다. ( ansible 설치 ) ansible host의 playbook 실행파일을 수정합니다 ( 디렉토리 추가, 호스트 파일 복사 ) ansible host에 config파일을 설정합니다. default값으로 vault password를 사용할 것이고, 기본적인 세팅들을 합니다. 위 내용들은 vmware의 공식홈페이지 document들을 참고합니다. vRA에서 ansible 호스트를 등록합니다. 블루프린트를 작성합니다. 현재 제 환경은 다음과 같습니다. vRA Version : 8.4 Ansible Host : Ubun..
[JPA] 4. JPA와 DB의 동작 관계 springboot의 최고장점은 스프링보다 훨씬 환경설정이 쉽다는것입니다. 사실 application.properties 파일을 사용하는것도 굉장히 획기적인 기술적 발전이였는데, 저한테 익숙한 yaml 파일로도 설정을 할수 있다니!!!!!???? 너무 좋아. 자동으로 필요한 테이블을 생성하거나 JPA를 이용할때 발생하는 SQL등을 확인하기 위해서는 application.property 파일이나 application.yml에 추가 설정이 필요합니다. 구글링하면 간단하게 나오는데, 기본적으로 세팅해서 쓰는 부분은 위에꺼는, JPA 처리시에 발생하는 SQL을 보여줄지 결정하는 부분이고 옵션체크하게되면, 이런식으로 console에 출력되고, 로깅을 남길수 있네요. Hibernate: drop table if e..
[JPA] 3. 엔티티 클래스와 어노테이션 이번시간에는 실습을 통해서 JPA를 어떤 방식으로 사용하면 되는가에 대해서 알아보겠습니다. JPA에서는 이 2가지 요건만 생각하면 됩니다. jpa를 통해서 관리하게 되는 객체를 위한 엔티티 클래스 엔티티 객체들을 처리하는 기능을 가진 repository 이중에서 repository는 JPA에서 제공하는 인터페이스로 설계하는데 스프링 내부에서 자동으로 객체를 생성하고 실행하는 구조라 개발자 입장에서는 단순히 인터페이스를 하나 정의하는 작업만으로 충분합니다. 3-1. 엔티티 클래스 작성 예제 프로젝트에 'member' 패키지를 추가하고, Member라는 클래스를 만듭니다 package com.jojoldu.webservice.domain.member; import javax.persistence.*; @En..
[JPA] 2. 객체 매핑이란? 우선 JPA를 사용하기 위해서 예제를 만들어 보겠다. JPA란 한줄 요약하자면, DB와 JAVA가 서로 잘 어울릴수 있도록 매핑하는 작업을 해주는 녀석이다. 그렇다면, 레거시에서 VO 형태에서 이런식으로 데이터 바인딩을 하는 것은 모두에게 익숙할 것이다. String id; String username; //getter ,setter //to string 하지만, 이와 같이 데이터 바인딩을 하여 DAO 단에서 mybatis를 통해 sql매핑을 해주던 방식이 한단계 발전한것이 JPA 라고 생각을 하고 있다. 내가 이해한 대로는 그런거 같다. 그렇다면, 간단하게 예제를 좀 챙겨서 보면서 맛을 보자. JPA 란 녀석에 대해서. 여기 아주 간단한 Member라는 DB 테이블이 있다. # 회원 테이블 # CREA..
[VMware] [1] vRealize Automation OS세팅 1. OS 세팅 Ubuntu 20.04로 마스터 이미지 (server) $ sudo passwd $ userdel ubuntu # OS 표준화를 하는 동안만 네트워크 사용함 /etc/netplan/01-xxx.yaml 에서 IP 세팅 network: version: 2 renderer: networkd ethernets: ens33: dhcp4: no dhcp6: no addresses: - 10.20.4.11/24 gateway4: 10.20.4.1 nameservers: addresses: - 8.8.8.8 $ netplan apply $ ifconfig $ apt update && apt upgrade -y $ apt install -y net-tools # ssh root Login 허용시키기 고..
[JPA] 1. JPA란 어떤것인가? JPA ( Java Persistent API ) 란? 자바진영의 ORM 기술 표준이다. JPA는 애플리케이션과 JDBC 사이에서 동작한다. ORM( Object relational Mapping ) 은 말그대로 객체와 관계형 데이터베이스를 매핑해주는 기술을 뜻한다. 과거 Legacy 기준으로 옛날 이야기를 조금 해보자면, JDBC API는 레거시 형태의 JAVA에서 데이터베이스를 접근하는 기술이었다. public void add(User user) throws ClassNotFoundException, SQLException { Class.forName("oracle.jdbc.driver.OracleDriver"); Connection c = DriverManager.getConnection("jdbc..