본문 바로가기

분류 전체보기74

[Java] Java 컬렉션(Collection) Java 컬렉션(Collections Framework) - Java 컬렉션(Collection)은 데이터를 쉽고 효과적으로 처리할 수 있는 집합, 그룹을 뜻한다. -> 데이터를 저장하는 자료구조와 처리하는 알고리즘을 구조화 하여 클래스화 시킨것이다. - Java Interface 를 통해 구현된다. - Collection의 상속 구조이다. - Map 은 Collection이 아니지만 같이 묶어서 표현된다. Collction Interface 인터페이스 구현 클래스 특징 Set HashSet(대표) TreeSet LinkedHashSet 순서X, 데이터 중복X List ArrayList LinkedList Vector 순서가 존재하고, 데이터의 중복을 허용 Queue LinkedList PriorityQ.. 2023. 2. 1.
[JPA] JPA, ORM 이란 무엇인가? JPA(Java Persistence API), ORM(Object Reational Mapping) 이란 ? JPA를 공부를 하게 된다면 JPA, ORM, 영속성 컨텍스트 등 많은 용어가 나오게 된다. JPA, ORM 이란 무엇이고, 관련된 내용에 대해서 알아보자. ORM 이란? - ORM(Object Reational Mapping)은 객체 - 관계 매핑을 뜻한다. 객체와 관계형 데이터베이스(RDB)를 매핑해주는것이다. 객체 모델과 관계형 모델에는 불일치(*패러다임 불일치), 즉 차이점이 존재하게 된다. (Ex. 상속관계{객체는 상속개념이 있지만, RDB는 상속개념이 존재 하지 않는다.}) ORM은 이러한 차이의 간극을 줄여준다. 즉, OOP(객체)와 RDB(관계형 데이터베이스)를 중간에서 매핑(혹은.. 2023. 1. 31.
[Java] Multi Thread를 이용한 간단 게임 구현(구구단) Java Multi Thread를 이용한 간단 게임 구현하기 - 곱셈(구구단) 맞추기 - Java Thread를 공부 하던 중 간단한 입력을 통해 시간내에 많은 문제를 풀어보는 구구단 게임을 만들게 되었다. - Scanner 와 Thread만을 사용하여 간단하게 구현 해보자. 동작 방식 및 게임 룰 설정 문제 제한시간 60초 안에 많은 문제를 맞추자. 2자리 * 1자리 숫자가 문제로 주어진다. 맞추면 "정답입니다", 틀리면 "틀렸습니다. 정답은: xxx" 출력. 정답, 오답의 각 개수 체크하여 게임 종료시, (문제 갯수, 정답, 오답 갯수) 출력. 구현 Timer 기능과 문제를 발생시키는 Thread 생성(GuguTimer.class) 문제를 내고, 입력을 받아 정,오답을 검증하는 Thread 생성(Ga.. 2023. 1. 26.
[IntelliJ] IntelliJ + Git 연동(1) (원격저장소 push) IntelliJ IDE 를 Git 연동을 통해 원격저장소 GitHub Repositroy에 push - 제목과 같이 인텔리제이에서 생성한 프로젝트를 깃허브에 연동시켜 보자! - 본 글에서는 intelliJ GUI 만을 사용하는것이 아닌 git 명령어와 동시에 진행한다. (명령어는 몰라도 된다.) 1. intelliJ 에서 Java 프로젝트 생성은 아래 링크. https://lucas-owner.tistory.com/30 2. Git(명령어)를 통해 원격저장소 연결 및 원격저장소 (GItHub) Repository 생성법은 아래 링크에서 확인하고 오자. https://lucas-owner.tistory.com/17 1. IntelliJ 하단부의 terminal을 클릭하자 - 처음 열면 경로만 표시된다. 그.. 2023. 1. 22.
[IntelliJ] Java 프로젝트 생성 IntelliJ 에서 Java 프로젝트 생성하는 방법 1. IntelliJ 실행 후 -> New Project 클릭 2. 아래 화면이 나오면 순서에 맞게 설정 후 NEXT - Project SDK 는 본인이 사용하는 Java 버전에 맞게 선택 하면 된다.(자동으로 잡아준다) 3. 아래 화면은 아무 설정 없이 NEXT. 4. Project 이름을 기입하고, 경로를 지정한다. 5. 프로젝트 생성이 종료되면 - src폴더 아래 / Pacakge 생성 / class 생성 후 - 출력 테스트를 하면 종료 된다. 2023. 1. 22.
[IntelliJ] IntelliJ Git 사용법 (2) - (commit, push, merge, checkout) IntelliJ Git 사용법 (1) - commit, push, merge, checkout - IntelliJ 에서 Git을 사용해서 협업을 진행 하게 된다면, 터미널(Mac)이나 cmd(Windows)를 통해 명령어를 사용하지 않고 진행 할 수 있다. (필자는 커맨드를 입력하는것이 좀더 편한것 같다 외우는것이 어려울뿐.. ) 이 글에서는 commit, push, merge, checkout 에 대해서 다루고 차차 이어서 Git 사용법을 적어 보도록 하겠다. 또한 IntelliJ에 Git이 연결되있다고 가정하고 진행한다. 연동하는 방법은 아래의 링크에서 확인 해보자. https://lucas-owner.tistory.com/31 - 장점 GUI 를 통해 직관적이다. Git 커맨드(명령어)를 사용하지 .. 2023. 1. 21.
[SpringBoot] Swagger API 문서 자동화 간단 연동, 테스트하기(1) Swagger-ui 를 활용한 문서 자동화 - 개발한 Rest API 들의 목록을 확인하고 테스트 할 수있는 Swagger-UI를 Spring Boot 프로젝트에 연동(설정)하고    사용 하는 방법을 알아보자.   Spring Boot 3.x^ 버전에서의 적용 방법은 아래 링크를 참고하세요https://lucas-owner.tistory.com/80 [Spring boot] Spring Boot 3.x^ - Swagger 적용(2)Spring Boot 3.x 버전 Swagger 적용 Spring boot 3.x 이전 버전에서의 Swagger 적용 및 Test 관련 사항은 아래 링크에서 확인하세요! https://lucas-owner.tistory.com/28 [SpringBoot] Swagger API.. 2023. 1. 18.
[Java] Lombok 실제 사용법(2) Lombok 라이브러리 실제 사용법 및 적용법을 코드를 통해 알아보자! 롬복의 기본 개념과 어노테이션들에 대한 자세한 설명은 아래 링크에서 확인하세요! https://lucas-owner.tistory.com/26 [Java] LomBok이란? & 어노테이션 정리 (1) Java 라이브러리 Lombok이란? + 자주 사용 어노테이션 정리! ○ LomBok 이란? LomBok이란 어노테이션 기반으로 코드 자동완성 기능을 제공하는 라이브러리이다. Spring, Spring Boot 로 Web 개발을 하다보면 반 lucas-owner.tistory.com - 해당 코드 사용법은 필자의 개인적인 코딩 스타일이 적용되어 있고, 정답이 아닐수 있습니다! (상황에 따라 사용하세요!) ○ Code - 우선 아래와 같은.. 2023. 1. 17.
[Java] LomBok이란? & 어노테이션 정리 (1) Java 라이브러리 Lombok이란? + 자주 사용 어노테이션 정리! ○ LomBok 이란? LomBok이란 어노테이션 기반으로 코드 자동완성 기능을 제공하는 라이브러리이다. Spring, Spring Boot 로 Web 개발을 하다보면 반복되는 코드가 자주 등장하며 가독성을 떨어트린다. 예를 들어보면 Getter, Setter, ToString, Constructor(생성자)가 대표적인 예제일 것이다. - 간단 예시 예시를 간단히 설명해 보자면, 필자의 경우 Legacy 시스템(AS-IS)을 TO-BE로 개선하는 작업을 진행했었다. Legacy 코드를 처음보고 적잖이 당황했었다. 왜냐하면 DTO혹은 VO Class 의 경우 필드의 갯수가 많게는 30-50개 정도 (혹은 그이상)이었기 때문이다. 만약 이.. 2023. 1. 17.