기본을 깊이있게
  • 깃허브⭐️
  • 태그
  • 글쓰기
  • 관리
  • 메뉴 닫기
  • 글작성
  • 방명록
  • 환경설정
    • Hyojunn__ (19)
      • Coding Test (3)
        • Baekjoon (0)
        • Programmers (3)
        • SW Expert (0)
        • etc (0)
      • Computer Science (4)
        • Python (0)
        • 자료구조 (0)
        • Java (4)
        • Kotlin (0)
        • 데이터베이스 (0)
        • 운영체제 (0)
        • 네트워크 (0)
        • 알고리즘 (0)
        • etc (0)
      • FrontEnd (0)
        • Android (0)
        • Flutter (2)
        • etc (0)
      • Spring (5)
        • Framework (1)
        • JPA (1)
        • etc (1)
      • 오류해결 (2)
      • 일상 (0)
        • 취업준비 (0)
        • 이모저모 (0)
  • 홈
  • 태그
  • 방명록
Computer Science/Java

JAVA 8 vs JAVA 11 vs JAVA 17

대부분 사용하고 있는 자바 버전들에서 가장 큰 차이점을 비교해서 글을 써보려고 합니다 대중적으로 사용하고 있는 자바 8,11,17을 중점으로 살펴보겠습니다. 자바 8 JAVA 버전의 첫 번째 LTS로 출시된 버전입니다 32비트를 지원하며 이후 64비트만 지원하게 됩니다 현재까지도 가독성을 위해 자주 사용되는 Stream API가 출시되었습니다 Stream API는 내용이 방대하고 자주 쓰이므로 추후에 게시하겠습니다 람다식이 제공되어, 익명함수의 개념이 자바에 도입되었습니다 PermGem 영역이 제거 되고, MetaSpace가 새로 생겼습니다. LocalDateTime과 같은 날짜 API가 제공됩니다 현재 LocalDateTime은 created_at, updated_at과 같은 필드명으로 자주 사용됩니다..

2024. 4. 21. 23:53
Spring/JPA

Lock

글을 쓰게 된 계기는 프로젝트 팀원분과의 이야기 중이였습니다. 펀딩 도메인을 개발하는 도중 한 펀딩에 대해 동시에 결제를 한다면 경쟁 상태에서 동시성이 일어나지 않을까? 라는 의문에서 시작되었습니다. 이는 MySQL의 s-lock과 x-lock에 대해 알고 있다면 나온 답이였습니다. 결제가 이루어질 때, 해당 펀딩에 관한 정보를 SELECT 이후 UPDATE가 진행되는 SELECT - FOR UPDATE 쿼리는 해당 레코드에서 X-LCOK을 획득합니다. 이때 X-LOCK은 쓰기락을 의미하며 베타적 락과 동일한 의미입니다. 여기서 X-LOCK을 걸면 다른 트랜잭션은 읽기 락을 얻지 못합니다. 이때 주의해야 할 점은 S-LCCK 입니다. S-LOCK은 읽기락과 동일한 의미로 사용됩니다 S-LOCK은 읽는 동..

2024. 4. 14. 00:50
Computer Science/Java

JAVA record란?

package record; import java.util.Objects; public class Member { private final String email; private final String passwd; public Member(String email, String passwd) { this.email = email; this.passwd = passwd; } @Override public int hashCode() { return Objects.hash(email, passwd); } @Override public boolean equals(Object obj) { if (this == obj) { return true; } else if (!(obj instanceof Member)) {..

2024. 4. 3. 23:35
Coding Test/Programmers

LV2. 더 맵게

문제 https://school.programmers.co.kr/learn/courses/30/lessons/42626 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 이 문제의 조건을 확인해보자. 섞은 음식 스코빌 지수 = 가장 맵지 않은 스코빌 지수 + 두 번째로 맵지 않은 스코빌 지수 * 2 이를 읽어보면 결국 제일 맵지 않은 스코빌 지수를 가장 적은 횟수로 K 스코빌을 넘기는 게 중요하다. 가장 먼저 생각난 풀이는 PriorityQueue 를 활용하여 가장 덜 매운 음식과 두 번째로 덜 매운 음식을 넣어 섞은 후, 이 값이 K를 넘기는지 판별하..

2024. 2. 6. 21:24
Coding Test/Programmers

LV2. 게임 맵 최단거리

문제 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 가장 기본적인 BFS 문제이다. 다만 다른점이라면 목표한 지점에 도달했을 때, 최단거리를 구해야 한다는 것이다. 이 부분은 이전에 거쳐왔던 곳에서 +1을 해가면서 갈 수 있는 모든 곳의 거리를 구하면 끝난다 static int[] dx = {-1, 1, 0, 0}; static int[] dy = {0, 0, -1, 1}; private static int solution(int[][] ..

2024. 2. 1. 23:05
Coding Test/Programmers

LV1. 완주하지 못한 선수

문제 https://school.programmers.co.kr/learn/courses/30/lessons/42576?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 풀이 오랜만에 굳은 머리 풀겸 프로그래머스를 켰습니다. 고득점 kit 해쉬 문제입니다. 마라톤 참여자인 participant가 존재하고 완주자인 completion이 존재합니다. 주의해야 할 점은 동명이인이 있다는 점 입니다. private String solution(String[] participant, String[] completion) { Map runner..

2024. 2. 1. 20:56
  • «
  • 1
  • 2
  • 3
  • 4
  • »

공지사항

  • 깃허브

전체 카테고리

  • Hyojunn__ 19
    • Coding Test 3
      • Baekjoon 0
      • Programmers 3
      • SW Expert 0
      • etc 0
    • Computer Science 4
      • Python 0
      • 자료구조 0
      • Java 4
      • Kotlin 0
      • 데이터베이스 0
      • 운영체제 0
      • 네트워크 0
      • 알고리즘 0
      • etc 0
    • FrontEnd 0
      • Android 0
      • Flutter 2
      • etc 0
    • Spring 5
      • Framework 1
      • JPA 1
      • etc 1
    • 오류해결 2
    • 일상 0
      • 취업준비 0
      • 이모저모 0
애드센스 광고 영역
  • 최근 글
  • 최근 댓글

최근 글

최근댓글

태그

  • #heapq
  • #valid
  • #async
  • #ec2
  • #GitHub
  • #Kotlin
  • #비동기
  • #LifeCycle
  • #java
  • #propagation
  • #Java 17
  • #AWS
  • #Spring
  • #Flutter
  • #ThreadLocal
  • #페이지네이션
  • #Java 8
  • #클래스 로더
  • #DispatcherServlet
  • #Class Loader
  • #priorityqueue
  • #해시
  • #프로그래머스
  • #더 맵게
  • #Container
  • #java 11
  • #Inner Class
  • #await
  • #IntelliJ
  • #swap
MORE

전체 방문자

오늘
어제
전체

블로그 인기글

Powered by Privatenote Copyright © 기본을 깊이있게 All rights reserved. TistoryWhaleSkin3.4

티스토리툴바

개인정보

  • 티스토리 홈
  • 포럼
  • 로그인

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.