Java 21 에서는, virtual threads (introduced in Project Loom) 를 완벽하게 지원하므로 "synchronized" 와 같은 기존 동시성 기본 요소를 사용하면 애플리케이션의 성능과 확장성에 부정적인 영향을 미칠 수 있습니다. "synchronized" 가 virtual threads와 어떻게 충돌할 수 있는지는 다음과 같습니다.1. Synchronized Blocks은 플랫폼 스레드에 연결How It Works:"synchronized" 는 platform threads (i.e., OS threads)에 연결된 내장 잠금(intrinsic lock)에 의존한다."synchronized" 블록이 입력되면 스레드가 Lock을 획득하고 동일한 블록에 진입하려는 다른 스레..
테스트 코드를 작성할 때, 특히 단위테스트에서 주요 목표는 작업단위 (테스트 중인 메서드 또는 클래스)를 해당 종속성에서 분리하여 테스트가 테스트 중인 단위의 동작에만 초점을 맞추도록 하는 것입니다. 이를 달성하려면 어떤 객체를 mocking 할 것인지 결정해야 합니다. mocking 할 객체를 선택하는 기준에 대해서 알아봅시다.1. External Dependencies장치가 상호 작용하지만 핵심 논리의 일부가 아닌 외부 시스템이나 서비스를 나타내는 모의 개체입니다.These could include:Databases (e.g., repositories or DAOs).External APIs (e.g., web services or REST clients).Messaging systems (e.g...
저는 이번 프로젝트에서 postgreSql을 사용하고 연결을 해보려고 합니다. 이전 프로젝트 셋팅에서 dependency 추가를 이미 해둔 상태에서 이제 postgreSQL을 받아볼게요! [ 참고! MAC 기준 ] 하루종일 셋팅만하고 다운로드 받다가 충돌나고 오류가 자꾸나서 postgresql을 포기할뻔했지만,,, 여러분은 처음부터 잘 다운로드 받으시길 결론부터 말씀드리면postgresql 페이지에서 다운로드 받을수도 있지만,, 이렇게 하지 마시고 처음부터 brew 로 다운로드 하세요 brew가 다운로드 안되어 있는 분들은 먼저 brew를 다운받아야해요 ! 0. brew 설치하기홈브류 사이트 들어가서 아래 명령어 복사해서 터미널에 붙여넣으면 됩니다! HomebrewThe Missing Packa..
IntelliJ,postrGreSQL,java,spring boot,JPA를 사용한 게시판 CRUD 프로젝트를 시작해보려고 합니다. 먼저 IntelliJ에서 프로젝트를 생성하는 것부터 시작할게요 ! - GroupId : 자신의 프로젝트를 식별해주는 고유 아이디 ( 보통 도메인:인터넷주소 의 역순 )- AtrifactId : 버전정보를 생략한 이름 (jar), 보통 프로젝트 ID와 동일하게 작성 위에 해당하는 프로젝트 셋팅은 Spring initializr로도 가능하니 궁금하신 분들은 한번 알아보세요 ^^ Spring Initializr 로 Spring Project 시작하기Spring Initializr은 새로운 Spring Boot 프로젝트 설정 프로세스를 단순화하는 웹 기반 도구입니다. 이를 ..
- Total
- Today
- Yesterday
- mock사용법
- 웹개발
- mock해야하는대상과아닌것
- 티스토리챌린지
- 프로그래밍
- 오블완
- 개발자
- commit convetion
- erd작성하는법
- ChatGPT
- 백엔드개발
- java test 개발
- API
- 더현대 크리스마스 현장대기
- 더현대 예약
- postgresql 다운로드
- 더현대 크리스마스 웨이팅
- tdd개발
- spring.io.start
- css
- 더현대 크리스마스 사전예약
- synchronized 단점
- html
- 풀스택
- JavaScript
- Grammarly
- postgresql brew
- Springboot jpa
- google commit convention
- Java
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |