본문 바로가기

전체 글60

Iterator 패턴 - JAVA 언어로 배우는 디자인 패턴 입문 https://product.kyobobook.co.kr/detail/S000200311846 JAVA 언어로 배우는 디자인 패턴 입문: 쉽게 배우는 GoF의 23가지 디자인 패턴 | 유키 히로시 - 교보 JAVA 언어로 배우는 디자인 패턴 입문: 쉽게 배우는 GoF의 23가지 디자인 패턴 | product.kyobobook.co.kr Iterator 패턴 - 처리를 반복한다 Iterator 패턴은 반복의 기능을 추상화하여 일반화한 것을 디자인 패턴입니다. 'iterate' 는 반복하다를 의미합니다. 예제 프로그램 책장(BookShelf) 안에 책(Book)을 넣고, 책 이름을 차례대로 표시하는 프로그램입니다. Iterable 인터페이스는 처리를 반복할 대상을 나타냅니다. Iterator 인터페이스는 하.. 2023. 11. 26.
Kotlin 소개 인프런~ 윤재성의 Google 공식 언어 Kotlin 프로그래밍 시작하기 https://www.inflearn.com/course/%EA%B5%AC%EA%B8%80-%EA%B3%B5%EC%8B%9D-%EC%BD%94%ED%8B%80%EB%A6%B0-%EC%8B%9C%EC%9E%91%ED%95%98%EA%B8%B0/dashboard 자바 개발자를 위한 코틀린 입문(Java to Kotlin Starter Guide) https://www.inflearn.com/course/java-to-kotlin/dashboard https://kotlinlang.org/ [Kotlin Programming Language kotlinlang.org](https://kotlinlang.org/) Kotlin 언어 특징 .. 2022. 12. 10.
스터디카페 비교 요새 .. 학생 때보다 더 자주 스터디 카페에 가곤 합니다. 그래서 해보는 스터디 카페 비교입니다. 순서는 순위와 상관이 없습니다. 저의 스터디카페 선정 기준은 편한 자리에서 "1. 노트북을 할 수 있느냐", "2. 뚜벅이가 갈 수 있나" 입니다. 따라서 어느 정도 소음이 있어도 되는 카페들로만 골라서 간 점 참고 부탁드립니다~ 보통 가면 8시간 정도 공부하다고 옵니다! 1. 제이스 스터디룸 https://map.naver.com/v5/entry/place/1705284967?c=14128515.4047444,4515845.1938601,15,0,0,0,dh 네이버 지도 제이스 스터디룸 map.naver.com 특징 8시간 14,400원 (1시간 1800원) 예약제, 선불, 무인입니다. (네이버 예약을 .. 2022. 1. 15.
자주 사용하는 카프카 명령어 broker1.url.com:9092,broker2.url.com:9092 : 사용자가 생성한 broker url 입니다. 여기서는 2개 입니다. my-custom-topic : 사용자가 생성한 topic 명 입니다. my-custom-group-id : 사용자가 생성한 group id 명 입니다. 토픽 목록 조회 > ./kafka-topics.sh --bootstrap-server broker1.url.com:9092,broker2.url.com:9092 --list 토픽 생성 > ./kafka-topics.sh --create --bootstrap-server broker1.url.com:9092,broker2.url.com:9092 --replication-factor 2 --partitions 2.. 2021. 11. 4.
Go tour https://tour.golang.org/welcome/1 package main import "fmt" func main() { fmt.Println("Hello, 세계") }Internal Directories Code in or below a directory named "internal" is importable only by code in the directory tree rooted at the parent of "internal". Here's an extended version of the directory layout above: /home/user/go/ src/ crash/ bang/ (go code in package bang) b.go foo/ (go code in pac.. 2021. 8. 9.
IntelliJ에서 자주 쓰는 Git 명령어(feat. JIRA) 저는 보통 IntelliJ 단축키를 이용해서 Git을 사용합니다. 그런데 가끔 터미널에서 Git 명령어를 쓸 때가 있습니다. IntelliJ에서 제가 자주 사용하는 단축키와 터미널에서 사용하는 단축키를 공유하려고 합니다. 단축키는 mac 기준입니다! IntelliJ에서 단축키는 Preferences...(⌘,) -> Keymap 에서 확인할 수 있습니다. IntelliJ 단축키를 이용한 Git 커밋 : ⌘K ( $ git commit -am '커밋메세지' ) 커밋하기 위해 단축키를 입력하면 아래와 같은 창이 뜹니다. 파일의 변경 내용을 볼 수 있고, 어느 브랜치에서 작업한지도 표시됩니다. 또한 커밋 메세지도 입력할 수 있습니다. 파일을 더블 클릭해서 커밋하기 전에 파일 내용을 다시 확인하고, 수정할 수도.. 2021. 5. 24.
[IntelliJ] MyBatis binding 에러 이번에 여러 사람들과 mybatis로 빠르게 빠르게 변환하는 작업을 진행했습니다. 인터페이스 Mapper를 이용해서 연결하는데, 저 같은 경우는 Mapper 메서드 매개변수에 @Param을 넣지 않으면 아래와 같은 에러가 발생했습니다. org.mybatis.spring.MyBatisSystemException: nested exception is org.apache.ibatis.binding.BindingException: Parameter 'barcode' not found. Available parameters are [arg1, arg0, param1, param2] 그런데 몇몇 분들은 @Param이 없어도 잘 동작하더라구요! 왜 그런지 이유를 찾아보니, intelliJ build 설정이 달라서 생.. 2021. 5. 24.
[Spring] 하위 메뉴 구현하기 1. 목표 상위 메뉴, 하위 메뉴 까지만 존재하는 메뉴를 만들려고 합니다. 메뉴의 순서를 정할 수 있고, 하위 메뉴는 같은 상위 메뉴 아래에서만 순서를 변경할 수 있습니다. 또한 항상 전체 메뉴 목록을 보여줘야하기 때문에 페이징은 하지 않습니다. 2. 개발 환경 Spring boot, JPA, h2 database, querydsl 를 이용해서 개발합니다. 3. 데이터베이스 구조 create table menu ( id bigint generated by default as identity, parent_id bigint, name varchar(255), list_order int, primary key(id), foreign key (parent_id) references menu(id) ) id는 .. 2021. 2. 9.
[mysql] 이름 가운데 글자 * 로 치환하기 select replace(name, substr(name, 2, 1), '*') name from user ; 2020. 12. 2.
[JPA] Method 기반 Query 생성 docs.spring.io/spring-data/jpa/docs/current/reference/html/#repositories.query-methods.query-creation Spring Data JPA - Reference Documentation Example 109. Using @Transactional at query methods @Transactional(readOnly = true) public interface UserRepository extends JpaRepository { List findByLastname(String lastname); @Modifying @Transactional @Query("delete from User u where u.active = false").. 2020. 12. 1.