백엔드 개발중에 DB에서 필드를 조작한 후 조작한 값에 따라 groupBy로 그룹핑을 해야하고 집계를 내야하는데 JPA queryDSL로 짜여져서 필드조작이 자유롭지 않은 상태가 발생했다. 필드를 subString으로 조작해보려고 하니 사용자정의함수를 추가해주고, QClass등 추가해줘야하는 것들이 많았다. 아직 JPA가 익숙하지 않은 상태라 무작정 따라하기보다, 로직단에서 그룹핑할 수 있는 방법을 찾아보던 중에 스트림처리로 groupby처럼 키값을 기준으로 그룹핑할 수 있는 방법을 찾았다. GroupingKey를 나타내는 class를 만들어주고 Java1.8의 stream + groupingBy 기능을 활용하면 groupingBy를 수행할 수 있다. 1. 먼저 Grouping 에 활용될 GroupKey..
스프링부트로 프로젝트 생성 후 JAR로 배포를 해야 하는 상황이다. 서버에는 WAS가 없는 상태이고, 부트에서 내장서버 포함하여 JAR로 배포를 해야한다. 톰캣이 깔려있었다면 WAR로 말아서 서버에 배포를 하면 되었을거다. 이클립스로 Runnable jar로 말면 된다고 하는데, 인텔리제이로 빌드해본적이 없어서 어떻게 하는지 찾아보니 bootJar 라는거로 빌드하면 실행가능한 jar파일이 생성된다고 한다. fatJar로 말으라는 얘기를 들어서, fatJar는 뭔지 또 찾아보다보니 내 궁금증을 해결해 준 블로그 글이 있어 링크를 남겨둔다. 일단, 빌드할 때 생성되는 war, jar 등을 Archive라고 한다. 컴파일한 class, 리소스파일 등을 다른 트리형태로(war/jar) 압축한 것을 Archive..
테스트는 성공으로 뜨는데 빨간색으로 이런 오류메세지가 계속 뜨는것을 발견했다. 이 오류메세지가 뜨지 않게 하기 위해서는 Intellij 설정에서 Settings(Preference) -> Build, Execution, Deployment -> Build Tools -> Gradle 에서 Build and run using과 Run tests using의 속성을 Intellij IDEA로 해주면 해결된다. 원인 : 빌드할 때 JUnit으로 테스트가 진행 되어야 하는데 Gradle로 되어서 발생한다고 한다.
인텔리제이로 build.gradle 파일을 끌어다놓아 프로젝트를 오픈하려고 하는데, 아무것도 생성되지 않고 빈 프로젝트가 열렸다. 프로젝트 폴더는 보이지 않고 달랑 아래 두가지만 존재하던것... 터미널에는 아래와같은 메세지가.. 인텔리제이 build.gradle 실행 안됨, 오류 라는 검색어를 통해 찾아 본 결과 터미널에서 프로젝트 디렉토리로 가서 인텔리J 프로젝트 설정을 담은 디렉토리인 /.idea 를 삭제하고 다시 프로젝트를 빌드/실행하면 된다는 정보를 발견.. 현재 폴더에서 ls -a 명령어를 통해 .idea 파일이 존재하는 것을 확인 후 로 .idea 파일을 삭제해주었다. 다시 ls -a 명령어를 통해 .idea 파일이 더이상 보이지 않는 것을 확인하였다. 그리고 다시 build.gradle을 인..
기본적으로 JAR, WAR 모두 Java의 jar 옵션 (java -jar)을 이용해 생성된 압축(아카이브) 파일로, 애플리케이션을 쉽게 배포하고 동작시킬 수 있도록 관련 파일(리소스, 속성 파일 등)을 패키징 한 것이다. JAR (Java Archive) - JAVA 어플리케이션이 동작할 수 있도록 자바 프로젝트를 압축한 파일 - Class (JAVA리소스, 속성 파일), 라이브러리 파일을 포함함 - JRE(JAVA Runtime Environment)만 있어도 실행 가능함 (java -jar 프로젝트네임.jar) WAR (Web Application Archive) - Servlet / Jsp 컨테이너에 배치할 수 있는 웹 애플리케이션(Web Application) 압축파일 포맷 - 웹 관련 자원을 ..
[Gradle] implementation & compile 의 차이점 https://compogetters.tistory.com/64 Gradle Compile과 implementation의 차이점 Intelli J IDE에서 Spring boot + Gradle로 된 샘플 프로젝트로 Gradle에 관련된 프로젝트를 받았다. 기존에는 이클립스 + Maven으로 사용했는데, 사정 상 기존 조합을 버리고 Intelli J + Gradle로 개발 환경을 변 compogetters.tistory.com https://kotlinworld.com/317 [Gradle] implementation과 api, compile의 차이는 무엇인가? implementation과 api, compile build.gradl..
- Total
- Today
- Yesterday
- node
- spring
- 컨테이너
- EC2
- @Configuration
- 스프링
- 이정환
- 한입크기로 잘라먹는 리액트
- 자바의정석
- 데브캠프
- Spark
- 객체지향
- security
- 인덱스
- 스프링 프로젝트
- 친절한SQL튜닝
- JavaScript
- 코드로 배우는 스프링 웹 프로젝트
- 남궁성
- 자바스크립트
- 데이터베이스
- 리액트
- di
- React
- MySQL
- 스프링의정석
- Node.js
- 시큐리티
- AWS
- 스프링 빈
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |