분류 전체보기299 [T.I.L]DAY57 ------------------------------------------------------------ [T.I.L] ------------------------------------------------------------ 2022.03.22 - [오류노트] - Mongo Server error (MongoQueryException): Query failed with error code 13 and error message 'command find requires authentication' on server 해결 2022.03.22 - [개발 개념] - [개발 개념] Ubuntu20.04 MongoDB 설치 2022.03.22 - [프로젝트/아 맞다 비!] - [아 맞다 비!] DAY 1 [아.. 2022. 3. 22. Mongo Server error (MongoQueryException): Query failed with error code 13 and error message 'command find requires authentication' on server 해결 Mongo Server error (MongoQueryException): Query failed with error code 13 and error message 'command find requires authentication' on server (MongoQueryException): Query failed with error code 13 오류 DB에 외부접속이 제한되어 있어서 생긴다 sudo vi /etc/mongod.conf 에 접속해서 다음과 같이 바꿔준다 기존에 security가 걸려 있는 모습이다 security에 주석처리 해주면 처리완료 다음으로 mongo를 다시시작해준다 2022. 3. 22. [개발 개념] Ubuntu20.04 MongoDB 설치 환경은 VmWare에 Ubuntu20.04버전을 설치하여 MongoDB 설치를 진행했습니다 wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add - 처음으로 터미널에 다음 명령어를 실행하여 MongoDB공개 GPG 키를 가져온다 응답이 OK로 와야 정상이지만 그렇지 않았다면 gnupg 명령어를 사용한다. 그 후 다시 불러온다 sudo apt-get install gnupg wget -qO - https://www.mongodb.org/static/pgp/server-5.0.asc | sudo apt-key add - echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/.. 2022. 3. 22. [T.I.L]DAY56 ------------------------------------------------------------ [T.I.L] ------------------------------------------------------------ 2022.03.21 - [프레임워크/JPA] - [JPA] 여러가지 JPA 전략@Inheritance(strategy=InheritanceType.xxxx) 2022.03.21 - [프로젝트/아 맞다 비!] - [아 맞다 비!] 구상 2022.03.21 - [프레임워크/JPA] - [JPA] 일대일 [1:1] 연관관계 매핑 [JPA] 일대일 [1:1] 연관관계 매핑 JPA에서 매핑연결을 해줄때 다대일 매핑을 해줄때를 생각해보면 FK가 있는 테이블에 외래 키를 준다 일대일 매핑.. 2022. 3. 21. [JPA] 여러가지 JPA 전략@Inheritance(strategy=InheritanceType.xxxx) 관계형 데이터베이스는 상속 관계가 없지만 JPA에서는 상속관계 매핑을 지원한다 슈퍼타입 서브타입 관계라는 모델링 기법이 객체 상속과 유사하기 때문이다 | 슈퍼타입 서브타입 논리 모델을 실제 물리 모델로 구현하는 방법 - 각각 테이블로 변환 > 조인 전략 - 통합 테이블로 변환 > 단일 테이블 전략 - 서브타입 테이블로 변환 > 구현 클래스마다 테이블 전략 - @Inheritance(strategy=InheritanceType.xxxx) JOINED > 조인 전략 SINGLE_TABLE > 단일 테이블 전략 TABLE_PER_CLASS > 구현 클래스마다 테이블 전략 - @DiscriminatorColumn(name="xxx") 상속된 객체들을 name으로 분류해서 나누어줌 - @DiscriminatorV.. 2022. 3. 21. [JPA] 일대일 [1:1] 연관관계 매핑 JPA에서 매핑연결을 해줄때 다대일 매핑을 해줄때를 생각해보면 FK가 있는 테이블에 외래 키를 준다 일대일 매핑에서 생각해보면 주 테이블에 외래 키를 줄 수 있고, 대상 테이블에도 외래 키를 줄 수 있다 다만 외래 키에 데이터베이스 유니크(UNI) 제약조건을 추가해준다 다만, 대상 테이블에서 단방향 관계는 JPA에서 지원하지 않는다 일대일 매핑할 때 조심해야할 부분은 일대일 매핑에서 대상 테이블에서 연결하는 단방향 관계를 조심해야한다 | 일대일 정리 - 주 테이블에 외래 키 주 객체가 대상 객체의 참조를 가지는 것 처럼 주 테이블에 외래 키를 두고 대상 테이블을 찾음 객체지향 개발자 선호 JPA 매핑 편리 장점 : 주 테이블만 조회해도 대상 테이블에 데이터가 있는지 확인 가능 단점 : 값이 없으면 외래 .. 2022. 3. 21. [T.I.L]DAY55 ------------------------------------------------------------ [T.I.L] ------------------------------------------------------------ 2022.03.17 - [프레임워크/JPA] - [JPA] 일대다( 1:N) 연관관계 2022.03.17 - [개발 개념] - [개발 개념] 오류 E:yum 패키지를 찾을 수 없습니다 2022. 3. 17. [JPA] 일대다( 1:N) 연관관계 JPA에서 대부분 다대일 ( N:1)를 많이 사용하지만 일대다 연관관계도 필요하니 알아보도록하자 JPA에서 주인 설정은 매우 중요한 요소이다 테이블 일대다 관계는 항상 다(N)쪽에 외래 키가 있고, 객체와 테이블의 차이 때문에 반대편 외래 키를 관리하는 특이한 구조이다. 그래서 @JoinColumn을 꼭 사용하거나 조인 테이블 방식을 사용해야 한다 일대다 매핑에는 단방향 매핑과 양방향 매핑이 있다 | 단방향 매핑의 단점 - 엔티티가 관리하는 외래키가 다른 테이블에 있음 (특이한 구조) - 연관관계 관리를 위해 추가로 UPDATE SQL 실행 (비효율) ※ 일대다 단방향 매핑보다는 다대일 양방향 매핑을 사용하자 | 일대다 양방향 매핑 - 이런 매핑은 공식적으로 존재하지 않는다 - @JoinColumn(in.. 2022. 3. 17. [개발 개념] 오류 E:yum 패키지를 찾을 수 없습니다 UBUNTU 20.04 버전에서 YUM을 사용하기 앞서 설치하려 했으나 설치되지 않았다 원인은 UBUNTU에서 pakages를 다운하는 홈페이지 주소가 추가되어 있지 않아서 그렇다 다음과 같이 해결한다 etc/apt/source.list에 다음 내용을 추가한다 deb http://archive.ubuntu.com/ubuntu bionic main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu bionic-security main restricted universe multiverse deb http://archive.ubuntu.com/ubuntu bionic-updates main restricted universe multiv.. 2022. 3. 17. [T.I.L]DAY54 ------------------------------------------------------------ [T.I.L] ------------------------------------------------------------ 2022.03.16 - [프레임워크/JPA] - [JPA] 객체지향에서의 양방향 설정 2022.03.16 - [프레임워크/JPA] - [JPA] 객체지향에서의 단방향 설정 [JPA] 객체지향에서의 단방향 설정 JPA를 사용할때 객체와 테이블의 연관관계 차이를 아는것이 중요하다 테이블 연관관계에서는 PK, FK를 정해서 매핑하는데 객체에는 연관관계가 없다 그걸 객체지향으로 설정해주는 작업을 해야 yikanghee2.tistory.com JPA 단방향 매핑과 양방향 매핑에 대해 .. 2022. 3. 16. [JPA] 객체지향에서의 양방향 설정 양방향 매핑은 단순히 말해서 연결된 테이블에서 서로 매핑되는 것을 말한다 예를 들어 Member -> Team , Team -> Member 가 되는 것이다 @Entity public class Member { @Id @GeneratedValue private Long id; @Column(name = "USERNAME") private String name; private int age; @ManyToOne @JoinColumn(name = "TEAM_ID") private Team team; 위와 같이 Member 객체를 설정해주고 아래와 같이 Team 객체를 만들어준다 @Entity public class Team { @Id @GeneratedValue private Long id; private .. 2022. 3. 16. [JPA] 객체지향에서의 단방향 설정 JPA를 사용할때 객체와 테이블의 연관관계 차이를 아는것이 중요하다 테이블 연관관계에서는 PK, FK를 정해서 매핑하는데 객체에는 연관관계가 없다 그걸 객체지향으로 설정해주는 작업을 해야한다 그 과정에서 단방향 연관관계와 양방향 연관관계 설정을 해주어야 객체지향으로 모델링할 수 있다 @Entity public class Member { @Id @GeneratedValue private Long id; @Column(name = "USERNAME") private String name; private int age; // @Column(name = "TEAM_ID") // private Long teamId; @ManyToOne @JoinColumn(name = "TEAM_ID") private Team .. 2022. 3. 16. [T.I.L]DAY53 2022.03.15 - [프레임워크/스프링] - [Spring Boot] MariaDB, maven을 활용한 게시판 만들기 (3) 2022.03.15 - [프레임워크/스프링] - [Spring Boot] MariaDB, maven을 활용한 게시판 만들기 (2) 2022.03.15 - [프레임워크/스프링] - [Spring Boot] MariaDB, maven을 활용한 게시판 만들기 (1) [Spring Boot] MariaDB, maven을 활용한 게시판 만들기 (1) JPA에 공부를 하기에 앞서 MariaDB와 maven을 활용한 레거시한 버전으로 게시판을 만들어 볼것이다 DB는 위와 같이 세팅 해주었다. 로컬호스트로 MariaDB를 연결해주면 쉽게 연결할 수 있다 나는 VMware yikanghee2.. 2022. 3. 16. [Spring Boot] MariaDB, maven을 활용한 게시판 만들기 (3) 다음은 컨트롤러 작성이다 package kopo.poly.controller; import kopo.poly.dto.NoticeDTO; import kopo.poly.service.INoticeService; import kopo.poly.util.CmmUtil; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import .. 2022. 3. 15. [Spring Boot] MariaDB, maven을 활용한 게시판 만들기 (2) 이번에는 Service구현에 대해서 알아볼 것이다 호출된 URL별 목적에 맞게 프로그래밍 하기 위해 사용하는 자바파일을 서비스파일이라고 부른다 OCR원칙을 지켜서 개발을 하기위해서 인터페이스를 생성해주는것이 좋다 package kopo.poly.service.impl; import kopo.poly.dto.NoticeDTO; import kopo.poly.persistance.mapper.INoticeMapper; import kopo.poly.service.INoticeService; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.. 2022. 3. 15. [Spring Boot] MariaDB, maven을 활용한 게시판 만들기 (1) JPA에 공부를 하기에 앞서 MariaDB와 maven을 활용한 레거시한 버전으로 게시판을 만들어 볼것이다 DB는 위와 같이 세팅 해주었다. 로컬호스트로 MariaDB를 연결해주면 쉽게 연결할 수 있다 나는 VMware에 ubuntu를 설치하고 그 위에 mariaDB를 연동했다 MAPPER는 데이터베이스(오라클, MySQL, MariaDB)로부터 전달받은 결과 값을 자바 객체로 변환시키는데 자동 변환을 위해서는 반드시 DTO를 사용해야 한다 DTO는 Data Transfer Object로 사용하지 않아도 되지만 코드 효율을 높여준다 SELECT N.NOTICE_SEQ, N.TITLE, N.NOTICE_YN, N.READ_CNT, U.USER_NAME, N.USER_ID, DATE_FORMAT(N.REG_.. 2022. 3. 15. [개발 개념] cannot connect to server on host socket error code 10061 해결 MYSQL(MariaDB) 에서 외부접속 허용 DB연결 할때 cannot connect to server on host socket error code 10061 와 같은 오류가 뜰때가 있다 netstat -ntlp로 주소를 확인했을때 127.0.0.1:3306으로 나온다 이걸 0.0.0.0:3306으로 바꿔야 외부접속 가능하다 sudo vi /etc/mysql/mariadb.conf.d/50-server.cnf 파일을 열어 bind-address에 주석을 달아주면 성공 mysql 재사작 하고 sudo service mysql restart 주소 확인해주면 netstat -ntlp: 다음과 같이 외부접속이 허용된다. 2022. 3. 15. [개발 개념] ERROR 1044 (42000): Access denied for user SQLGATE와 mariadb를 연결하는 과정에서 ERROR 1044 (42000): Access denied for user 오류가 발생했다 grant all privileges on *.* to 'user이름'@'%' with grant option; flush privileges; show grants for 'web_user'@'%'; 2022. 3. 15. [T.I.L]DAY52 ------------------------------------------------------------ [T.I.L] ------------------------------------------------------------ 2022.03.14 - [프레임워크/JPA] - [JPA] 엔티티와 매핑 2022.03.14 - [프레임워크/JPA] - [JPA] 필드와 컬럼 매핑 2022. 3. 14. [JPA] 엔티티와 매핑 엔티티와 매핑 엔티티 매핑 객체와 테이블 매핑 : @Entity, @Table 필드와 컬럼 매핑 : @Column 기본 키 매핑 : @Id 연관관계 매핑 : @ManyToOne, @JoinColumn 객체와 테이블 매핑 @Entity @Entity가 붙은 클래스는 JPA가 관리하고 엔티티라고한다 JPA를 사용해서 테이블과 매핑할 클래스는 @Entity 가 필수다 주의 기본생성자 필수 (파라미터가 없는 public 또는 protected 생성자) → JPA 스펙 상 필요하다 (JPA 라이브러리에서 필요로함) final 클래스, enum, interface, inner 클래스 사용 x 저장할 필드에 fianl 사용 x @Entity(name = "Member") public class Member { @Id.. 2022. 3. 14. [JPA] 필드와 컬럼 매핑 요구사항 추가 회원은 일반 회원과 관리자로 구분해야 한다 회원 가입일과 수정일이 있어야 한다 회원을 설명할 수 있는 필드가 있어야 한다. 이 필드는 길이 제한이 없다 @Entity public class Member { @Id private Long id; @Column(name = "name") private String username; private Integer age; @Enumerated(EnumType.STRING) private RoleType roleType; @Temporal(TemporalType.TIMESTAMP) private Date createdDate; @Temporal(TemporalType.TIMESTAMP) private Date lastModifiedDate; @Lob.. 2022. 3. 14. 이전 1 ··· 3 4 5 6 7 8 9 ··· 15 다음