๐ŸŒป JAVA

๐ŸŒป JAVA/์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ

์‹ค์ „ ์˜ˆ์ œ 2) ์—ฐ๊ด€๊ด€๊ณ„ ๋งคํ•‘ ํ•˜๊ธฐ

์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ์„ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ - ์ธํ”„๋Ÿฐ JPA๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๊ฑฐ๋‚˜, ์‹ค๋ฌด์—์„œ JPA๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๊ธฐ๋ณธ ์ด๋ก ์ด ๋ถ€์กฑํ•˜์‹  ๋ถ„๋“ค์ด JPA์˜ ๊ธฐ๋ณธ ์ด๋ก ์„ ํƒ„ํƒ„ํ•˜๊ฒŒ ํ•™์Šตํ•ด์„œ ์ดˆ๋ณด์ž๋„ ์‹ค๋ฌด์—์„œ ์ž์‹ ์žˆ๊ฒŒ JPA๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธ‰ ์›น ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๏ฟฝ www.inflearn.com ๐ŸŒˆํ…Œ์ด๋ธ” ๊ตฌ์กฐ โ˜”๊ฐ์ฒด ๊ตฌ์กฐ ์–ด๋ ต๊ฒŒ ์ƒ๊ฐํ•˜์ง€๋ง๊ณ , ๋‹ค๋Œ€์ผ ๊ด€๊ณ„์—์„œ '๋‹ค' ์— ํ•ด๋‹นํ•˜๋Š” ์ฐธ์กฐ๊ด€๊ณ„๋Š” @ManyToOne๊ณผ @JoinColumn(name="๊ธฐ๋ณธํ‚ค")๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ฐธ์กฐ๊ด€๊ณ„๋ฅผ ์„ค์ •์‹œ์ผœ์ค€๋‹ค. '์ผ' ๊ด€๊ณ„์—์„œ๋Š” @OneToMany(mappedBy ="์™ธ๋ž˜ํ‚ค") mappedBy๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์ •ํ•ด์ค€๋‹ค. @Entity public class Mem..

๐ŸŒป JAVA/์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ

5 - 3) ์—ฐ๊ด€๊ด€๊ณ„ ๋งคํ•‘ ๊ธฐ์ดˆ - ์–‘๋ฐฉํ–ฅ ์—ฐ๊ด€๊ด€๊ณ„์˜ ์ฃผ์ธ

์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ์„ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ - ์ธํ”„๋Ÿฐ JPA๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๊ฑฐ๋‚˜, ์‹ค๋ฌด์—์„œ JPA๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๊ธฐ๋ณธ ์ด๋ก ์ด ๋ถ€์กฑํ•˜์‹  ๋ถ„๋“ค์ด JPA์˜ ๊ธฐ๋ณธ ์ด๋ก ์„ ํƒ„ํƒ„ํ•˜๊ฒŒ ํ•™์Šตํ•ด์„œ ์ดˆ๋ณด์ž๋„ ์‹ค๋ฌด์—์„œ ์ž์‹ ์žˆ๊ฒŒ JPA๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธ‰ ์›น ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๏ฟฝ www.inflearn.com ๐Ÿš€ ์–‘๋ฐฉํ–ฅ ๋งคํ•‘ ์ „์— ํ–ˆ๋˜ ๋‹จ๋ฐฉํ–ฅ ๋งคํ•‘์—์„œ Team ํ…Œ์ด๋ธ”์— Member๋ฅผ List๋กœ ์ถ”๊ฐ€ํ•ด์ค˜์„œ ์–‘๋ฐฉํ–ฅ์œผ๋กœ ๋งคํ•‘ ์‹œํ‚ค๋Š” ๊ฒƒ์ด๋‹ค. @Entity public class Team { @Id @GenerateValue private Long id; private String name; @OneToMany(mappedBy = "team") // Mem..

๐ŸŒป JAVA/์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ

5 - 2) ์—ฐ๊ด€๊ด€๊ณ„ ๋งคํ•‘ ๊ธฐ์ดˆ - ๋‹จ๋ฐฉํ–ฅ ์—ฐ๊ด€๊ด€๊ณ„

์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ์„ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ - ์ธํ”„๋Ÿฐ JPA๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๊ฑฐ๋‚˜, ์‹ค๋ฌด์—์„œ JPA๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๊ธฐ๋ณธ ์ด๋ก ์ด ๋ถ€์กฑํ•˜์‹  ๋ถ„๋“ค์ด JPA์˜ ๊ธฐ๋ณธ ์ด๋ก ์„ ํƒ„ํƒ„ํ•˜๊ฒŒ ํ•™์Šตํ•ด์„œ ์ดˆ๋ณด์ž๋„ ์‹ค๋ฌด์—์„œ ์ž์‹ ์žˆ๊ฒŒ JPA๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธ‰ ์›น ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๏ฟฝ www.inflearn.com โœ…๊ฐ์ฒด ์ง€ํ–ฅ ๋ชจ๋ธ๋ง ( ๊ฐ์ฒด ์—ฐ๊ด€๊ด€๊ณ„ ์‚ฌ์šฉ ) @Entity public class Member { @Id @GenerateValue private Long id; @ManyToOne// Member์‹œ์ ์œผ๋กœ ๋‹ค๋Œ€์ผ์ด๋ฏ€๋กœ, ManyToOne! @JoinColumn(name = "TEAM_ID") private Team team; @Column(n..

๐ŸŒป JAVA/์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ

5 - 1) ์—ฐ๊ด€๊ด€๊ณ„ ๋งคํ•‘ ๊ธฐ์ดˆ - ์—ฐ๊ด€๊ด€๊ณ„๊ฐ€ ํ•„์š”ํ•œ ์ด์œ 

์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ์„ ๊ณต๋ถ€ํ•˜๋ฉฐ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค. ์ž๋ฐ” ORM ํ‘œ์ค€ JPA ํ”„๋กœ๊ทธ๋ž˜๋ฐ - ๊ธฐ๋ณธํŽธ - ์ธํ”„๋Ÿฐ JPA๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜๊ฑฐ๋‚˜, ์‹ค๋ฌด์—์„œ JPA๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๊ธฐ๋ณธ ์ด๋ก ์ด ๋ถ€์กฑํ•˜์‹  ๋ถ„๋“ค์ด JPA์˜ ๊ธฐ๋ณธ ์ด๋ก ์„ ํƒ„ํƒ„ํ•˜๊ฒŒ ํ•™์Šตํ•ด์„œ ์ดˆ๋ณด์ž๋„ ์‹ค๋ฌด์—์„œ ์ž์‹ ์žˆ๊ฒŒ JPA๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ดˆ๊ธ‰ ์›น ๊ฐœ๋ฐœ ํ”„๋กœ๊ทธ๏ฟฝ www.inflearn.com โœ…๊ฐ์ฒด๋ฅผ ํ…Œ์ด๋ธ”์— ๋งž์ถฐ ๋ชจ๋ธ๋ง @Entity public class Member { @Id @GeneratedValue private Long id; @Column(name = "USERNAME") private String name; @Column(name = "TEAM_ID") private Long teamId; // getter & se..

๐ŸŒป JAVA/์ •๋ฆฌ์ •๋ฆฌ์ •๋ฆฌ

[Java] BufferedReader, BufferedWriter๋กœ ๋น ๋ฅธ ์ž…์ถœ๋ ฅ ํ•˜๊ธฐ

๋ฒ„ํผ๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ํ‚ค๋ณด๋“œ์˜ ์ž…๋ ฅ๊ฐ’์„ ๋ฒ„ํผ์— ํ•œ๋ฒˆ์— ๋ชจ์•˜๋‹ค๊ฐ€ , ๋ฒ„ํผ์˜ ๋‚ด์šฉ์„ ํ•œ๋ฒˆ์— ์ „์†กํ•˜๊ธฐ ๋•Œ๋ฌธ์— Scanner, System.out.println ๋ณด๋‹ค ํ›จ์”ฌ ๋น ๋ฅด๊ณ  ํšจ์œจ์ ์ด๋‹ค. ๋ฒ„ํผ ์ž…์ถœ๋ ฅ ๋ฒ„ํผ(buffer) ๋ฐ์ดํ„ฐ๋ฅผ ํ•œ ๊ณณ์—์„œ ๋‹ค๋ฅธ ํ•œ๊ณณ์œผ๋กœ ์ „์†กํ•˜๋Š” ๋™์•ˆ ์ผ์‹œ์ ์œผ๋กœ ๊ทธ ๋ฐ์ดํ„ฐ๋ฅผ ๋ณด๊ด€ํ•˜๋Š” ์ž„์‹œ ๋ฉ”๋ชจ๋ฆฌ ์˜์—ญ ์ž…์ถœ๋ ฅ ์†๋„ ํ–ฅ์ƒ์„ ์œ„ํ•ด ๋ฒ„ํผ ์‚ฌ์šฉ ๋ฒ„ํผ ํ”Œ๋Ÿฌ์‹œ(buffer flush) ๋ฒ„ํผ์— ๋‚จ์•„ ์žˆ๋Š” ๋ฐ์ดํ„ฐ๋ฅผ ์ถœ๋ ฅ์‹œํ‚ด(๋ฒ„ํผ๋ฅผ ๋น„์šฐ๋Š” ๋™์ž‘) BufferedReader ๋ฒ„ํผ๋ฅผ ์ด์šฉํ•œ ์ž…๋ ฅ BufferedWriter ๋ฒ„ํผ๋ฅผ ์ด์šฉํ•œ ์ถœ๋ ฅ BufferedReader Java๋ฅผ ์ฒ˜์Œ ์ ‘ํ•˜์‹œ๋Š” ๋ถ„๋“ค์ด ์ฃผ๋กœ ๋ฐ›๋Š” ์ž…๋ ฅ๋ฐฉ์‹์€ Scanner์ž…๋‹ˆ๋‹ค. Scanner๋ฅผ ํ†ตํ•ด ์ž…๋ ฅ์„ ๋ฐ›์„๊ฒฝ์šฐ Space Enter๋ฅผ ๋ชจ๋‘ ๊ฒฝ๊ณ„๋กœ ์ธ์‹..

๐ŸŒป JAVA/์•Œ๊ณ ๋ฆฌ์ฆ˜, ์ž๋ฃŒ๊ตฌ์กฐ

์•Œ๊ณ ๋ฆฌ์ฆ˜ - ์—๋ผํ† ์Šคํ…Œ๋„ค์Šค์˜ ์ฒด - ์†Œ์ˆ˜ ํŒ๋ณ„ ์•Œ๊ณ ๋ฆฌ์ฆ˜

์•ˆ๋…•ํ•˜์„ธ์š”, ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ •๋ฆฌํ•˜๋Š” ํฌ์ŠคํŒ…์ž…๋‹ˆ๋‹ค. ๋‹ค๋ฅธ ์•Œ๊ณ ๋ฆฌ์ฆ˜์„ ์ฐธ๊ณ ํ•˜์‹œ๋ ค๋ฉด ํ•ด๋‹น ์นดํ…Œ๊ณ ๋ฆฌ๋ฅผ ์ด์šฉํ•ด์ฃผ์„ธ์š”. ๐Ÿ˜Š '๐ŸŒป JAVA/์•Œ๊ณ ๋ฆฌ์ฆ˜, ์ž๋ฃŒ๊ตฌ์กฐ' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก ๊ณต๋ถ€ํ•œ ๊ฒƒ๋“ค ์ •๋ฆฌํ•œ ๋‚ด์šฉ์„ ํฌ์ŠคํŒ…ํ•ฉ๋‹ˆ๋‹ค. iseunghan.tistory.com ์†Œ์ˆ˜ ๋ž€? 1์„ ์ œ์™ธํ•œ ์ˆ˜๋“ค ์ค‘, ๊ทธ ์ˆ˜์˜ ์•ฝ์ˆ˜๊ฐ€ 1 ๊ณผ ์ž๊ธฐ ์ž์‹ ์œผ๋กœ๋งŒ ์ด๋ฃจ์–ด์ง„ ์ˆ˜๋ฅผ ๋งํ•œ๋‹ค. ex) 2, 3, 5, 7, 11, 13 ...... ์†Œ์ˆ˜๋ฅผ ์ฐพ์•„๋ณด์ž 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ์ด ์ค‘์—์„œ ์†Œ์ˆ˜์ธ 2, 3์„ ์ด์šฉํ•ด์„œ 2์™€ 3์˜ ๋ฐฐ์ˆ˜๋“ค์„ ์ฐจ๋ก€๋กœ ๋‹ค ์ง€์›Œ ๋ณด๊ฒ ๋‹ค. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 ๊ทธ๋Ÿฌ๋ฉด ๋‚จ๋Š” ์ˆ˜๋Š” ์†Œ์ˆ˜๊ฐ€ ๋œ๋‹ค. [2..

iseunghan
'๐ŸŒป JAVA' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๊ธ€ ๋ชฉ๋ก (10 Page)