1. Optional 객체 생성하기 1.1 Optional.of - 참조변수의 값이 null이 아닐때 Optional optStr = Optional.of("Hello World!"); Optional optStNull = Optional.of(null); // NullPointerException 발생 `of`로 Optional 객체를 생성할때 null을 인자로 사용하면 NullPointerException이 발생하기 때문에 반드시 값이 있어야 한다. 1.2 Optional.ofNullable - 참조변수의 값이 null일 가능성이 있을때 Optional optStr = Optional.ofNullable("Hello World!"); Optional optStrN = Optional.ofNullabl..
복합키를 IdClass로 구성하여 입력 및 가져오는 code를 정리 N + 1 문제는 fetchjoin과 distinct로 해결하고자 했으며, 추후에 QueryDSL로도 정리 예정 Entity @Entity @Table(name = "member") @Getter @Setter @EqualsAndHashCode(onlyExplicitlyIncluded = true) public class Member { @EqualsAndHashCode.Include @Id @GeneratedValue(strategy = GenerationType.IDENTITY) @Column(name = "member_id") private Long id; private String name; @OneToMany(mappedBy =..
- Entity의 OneToMany의 FetchType에 대해 어떤식으로 처리되는지 정리 - JPQL을 사용했을때 발생하는 N + 1 문제를 fetch join + distinct로 해결 1. 준비 1.1 DDL & Records create table `member` ( member_id bigint auto_increment primary key, team_id bigint null, name varchar(255) null ); create table `team` ( team_id bigint auto_increment primary key, name varchar(255) null ); # member member_id,team_id,name 1,1,m1 2,1,m2 3,1,m3 4,2,m4 5,..
- Entity의 ManyToOne의 FetchType에 대해 어떤식으로 처리되는지 정리 - JPQL을 사용했을때 발생하는 N + 1 문제를 fetch join으로 해결 1. 준비 1.1 DDL & Records create table `member` ( member_id bigint auto_increment primary key, team_id bigint null, name varchar(255) null ); create table `team` ( team_id bigint auto_increment primary key, name varchar(255) null ); # member member_id,team_id,name 1,,m1 2,1,m2 3,2,m3 4,2,m4 5,3,m5 6,3,m6..
JOIN문을 사용하고는 있지만 제대로 알고 사용하고 있나 싶어서 다시한번 정리 * MYSQL에는 FULL JOIN은 없음 union을 통해서 구현 가능함 Tables member member_id member_name team_id 1 m1 0 2 m2 1 3 m3 1 4 m4 2 team team_id team_name 1 team1 2 team2 3 team3 SELECT JOIN INNERT JOIN (JOIN) SELECT * FROM `member` m INNER JOIN `team` t ON t.team_id = m.team_id; member_id member_name team_id team_id team_name 2 m2 1 1 team1 3 m3 1 1 team1 4 m4 2 2 team..
유튜브에서 좋은 개발자라는 주제로 영상을 하나 시청하였는데, 공감가는 부분이 있어 기록을 위해 글을 하나 남기기로 하였다. 종종 개발주제로 시청하던 OJ tube에 오지완이란 분인데, 어떤 개발자가 좋은 개발자라고 생각하시는지, 될놈될은 좋은 습관과 좋은 태도를 몸에 이미 익혔기 때문에라는 말과 함께 타고난것이 아닌 노력으로 충분히 이룰수 있는 부분이라는 이야기도 해주었다. 내가 관심을 가지고 봤던 부분은 개발을 잘하는 사람의 특징 다섯가지이다. 첫번째, 모르고 막막한 일이 오더라도 포기하지 않는다. 압박감을 이겨낸다. 두번째, 일이 주어졌을때 시킨일만 하지 않고, 일의 본질이 무엇인지 파악하고 그에 맞게끔 일을 해결한다. 세번째,자기개발에 욕심이 있다. 계속 발전하려는 의지가 있다. 네번째, 성실하거나..
Update rule cascade: 참조되는 테이블에서 데이터를 수정하면, 참조하는 테이블의 데이터도 함께 수정됨 set default: 참조되는 테이블에서 데이터를 수정하면, 참조하는 테이블의 데이터가 해당 필드의 default값으로 수정됨 set null: 참조되는 테이블에서 데이터를 수정하면, 참조하는 테이블의 데이터가 null로 수정됨 restrict: 참조하는 테이블에 데이터가 남아 있으면, 참조되는 테이블의 데이터를 수정할 수 없음 noaction: restrict와 동일
org.hibernate.annotations.DynamicUpdate 수정된 데이터만 사용해서 동적으로 UPDATE문을 생성한다. import org.hibernate.annotations.DynamicUpdate; import javax.persistence.Column; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; @Entity @DynamicUpdate @Table(name = "MEMBER") public class Member { @Id @Column(name = "ID") private String id; @Column(name = "NAME") private Strin..
생성자 주입 annotation MsgProvider.java package constructor.annotation; import org.springframework.stereotype.Component; @Component("provider") public class MsgProvider { private String msg = "Hello World!(Constructor Injection annotation)"; public String getMsg() { return msg; } } MsgRender.java package constructor.annotation; import org.springframework.beans.factory.annotation.Autowired; import org..
Python,tkinter Checkbutton생성자 : tkinter.Checkbutton(master=None, cnf={}, **kw)Checkbutton은 체크박스와 같은 옵션의 번호를 표시하며,사용자는 한번에 여러 옵션을 선택할수 있다. ex) python_tkinter_004.py# -*- encoding:utf8 -*-# Python version in the development environment 2.7.11import osos.chdir(os.path.dirname(__file__))from Tkinter import * root = Tk()CheckVar1 = IntVar()CheckVar2 = IntVar()c1 = Checkbutton(root, text="Music", vari..
- Total
- Today
- Yesterday
- indicatoron
- 파이썬
- ManyToOne
- fetch join
- 폼
- JPA
- disabledforeground
- command
- activebackground
- 리눅스
- Private
- FetchType
- IdClass
- apache
- highlightbackground
- 상수
- tkinter command & bind [명령어묶기와 사건묶기] Python
- tkinter
- Composite Key
- borderwidth
- highlightthickness
- Linux
- Module
- Python
- activeforeground
- Java
- vba
- onetomany
- Excel
- checkbutton
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |