반응형

전체 글 194

[IntelliJ] Database에서 DTO/VO 자동 생성 방법

여러가지 플러그인이 있겠지만, 알고보니 인테리제이에서 기본으로 제공해주는 generater가 있었다. 0. 나의 피시 환경 상태 - Mysql 설치완료 - 인텔리제이에서 db 연결 완료된 상태 먼저 인텔리제이에서 Database가 연결이 되어있는 상태여야한다. 혹시 DB를 연결하지 않았더라면, 인텔리제이 화면 우측 상단에서 데이터 베이스를 연결하면된다. 아래 캡쳐 사진에서 + 버튼을 눌러서 연결하도록 하자 (기본적으로 본인이 사용하는 sql은 설치가 되어있어야 한다.) 1. DB -> DTO 파일 뽑아내기 1-1. 원하는 테이블의 우측을 클릭해서, Tools -> Scripted Extesions -> Generate POJOs.groovy 클릭 - 저장할 위치를 지정하라는 창이 뜨면, 자신이 원하는 위..

Back-end/Spring 2024.01.04

[Error] Could not find mysql:mysql-connector-java:.

Could not find mysql:mysql-connector-java:. 에러 발생 시, 해결방법을 공유드립니다. 0. 현상 아래와 같이 에러가 발생합니다. gradle에서 dependencies를 잘못 입력했다는 것을 직감할 수 있습니다. 1. 해결방법 mysql 버전에 따라서 implementation을 다르게 입력해야합니다. MySQL 8.0.31 이전 버전 implementation 'mysql:mysql-connector-java' MySQL 8.0.31 이후 버전 implementation 'com.mysql:mysql-connector-j' 자신의 버전에 맞게 mysql connector를 입력하시면 됩니다.

Back-end/Spring 2024.01.04

[Error] Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured.

0. 문제 현상 위처럼 에러가 발생한 경우, 해결하는 과정을 작성해봤습니다. 아마 이 문제에 직면한 분들은 모두 새롭게 스프링을 설정하는 상황이라서 발생할 겁니다. application.yml 에 datasource 정보를 입력하지 않아서 발생하는 문제입니다. 1. 해결 방법 application.yml 파일로 들어갑니다. (위치는 resource에 존재합니다.) 아래와 같이 datasource를 입력합니다. (본인의 db정보에 맡게 입력하세요) application.yml spring: datasource: url: jdbc:mysql://localhost:3306 username: root password: 어라? 그렇게 해도 에러가 발생하네요? (아래 에러가 발생하지 않으면, 다음 단계를 진행하실 ..

Back-end/Spring 2024.01.04

[Spring] 멀티 MQ 리스너 개발 내용

멀티 MQ 리스너 개발 내용 MQ 서버 추가 및 큐 이름 추가 되는 경우 아래 개발 내용 참조해서 추가하면 됩니다. 단일 MQ 서버 연결에서 다중 MQ 서버로 변경하는 내용을 정리했습니다. 1. MQ application.yml profile에 맞는 설정을 해야 합니다. 설명을 위해 default profile로 설명 드립니다. (dev, prd는 서버 주소에 맞게 모두 설정해야합니다.) 1-1. MQ 서버 주소를 yml 설정 ibm: mq: serverA: hostName: mqa.server.com port: 1961 queueManager: ABT.PSS channel: CLIENT.TO.QNAME userName: mpns password: appName: QNAME retryMaxInterval..

Back-end/Spring 2023.12.20

[Spring] 페이지 처리 Request, Response Dto 변수 항목

Controller 소스코드로 설명을 진행하려고 합니다. 아래 소스코드를 참조해주세요. 소스 코드 @GetMapping("/announcement/page") public Map getAnnouncePage(@RequestParam String reqPageNo, @RequestParam String reqPageRowCnt){ List announcementDtos = announcementMapper.getAnnouncementListWithSkill(); Map responseMap = new HashMap(); int pageNo = Integer.parseInt(reqPageNo); int pageRowCnt = Integer.parseInt(reqPageRowCnt); int totalCnt ..

Back-end/Spring 2023.07.16

[Mybatis] resultMap을 이용해서 쿼리 서브 정보 받아오기 (left join 정보 받아오기)

jpa를 사용하는 환경이면 @OneToMany를 사용해서 Dto안의 List를 반환하는 것을 쉽게 구현할 수 있다. 하지만, mybatis에서는 resultMap을 이용해서 서브정보를 쿼리로 반환해야 한다. (xml에 resultMap을 사용하는 예시를 바로 보려면 2-2. 쿼리작성 부터 보시면 됩니다.) 1. 요구사항 프론트에서 아래와 같은 json 포맷으로 요구했다. 메인 정보 안에 서브정보를 리스트로 반환해야 한다. 요구사항 JSON [ { "id": "an001", "title": "데브옵스개발팀에 초대합니다.", "content": "오세요", "skills": [ { "skillId": "sk001", "skNm": "java" }, { "skillId": "sk002", "skNm": "py..

Back-end/Spring 2023.07.15

[MySql] COALESCE 함수 사용 예제

MySQL의 COALESCE 함수는 인자로 전달된 여러 개의 값 중에서 첫 번째로 NULL이 아닌 값을 반환하는 함수입니다. 즉, NULL이 아닌 첫 번째 값을 찾아 반환하거나, 모든 값이 NULL인 경우에는 NULL을 반환합니다. COALESCE 함수는 다음과 같은 형태로 사용됩니다 COALESCE(value1, value2, ...) 여러 개의 값(value1, value2, ...)이 주어지고, COALESCE 함수는 이 값들을 왼쪽에서 오른쪽으로 순서대로 확인하여 첫 번째로 NULL이 아닌 값을 반환합니다. 간단한 예제로 설명해보면, 아래는 customers 테이블의 테이터이다. id name city 1 John NULL 2 Alice London 3 Michael NULL 보통 아래와 같이 없..

SQL 2023.06.27
반응형