Search
Duplicate

ํŒŒ์ผ ์—…๋กœ๋“œ - BackEnd (Spring Boot)

ํŒŒ์ผ ์—…๋กœ๋“œ - BackEnd (Spring Boot)

Spring Boot ๋กœ ํŒŒ์ผ ์—…๋กœ๋“œ, ์กฐํšŒ, ์‚ญ์ œ ๊ธฐ๋Šฅ์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.

๊ตฌํ˜„ ๊ธฐ๋Šฅ

โ€ข
ํŒŒ์ผ ์—…๋กœ๋“œ
โ—ฆ
๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋“ฑ๋ก
โ—ฆ
ํŒŒ์ผ ์‹œ์Šคํ…œ์— ์ €์žฅ
โ€ข
๏ธŽ ํŒŒ์ผ ์กฐํšŒ
โ—ฆ
ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ
โ—ฆ
๋‹ค์šด๋กœ๋“œ
โ—ฆ
์ธ๋„ค์ผ ์ด๋ฏธ์ง€ ๋ณด๊ธฐ
โ—ฆ
ํƒ€์ž…๋ณ„ ํŒŒ์ผ ์กฐํšŒ
โ€ข
ํŒŒ์ผ ์‚ญ์ œ
โ—ฆ
๊ฒŒ์‹œ๊ธ€์— ์ข…์†๋œ ์—ฌ๋Ÿฌ ํŒŒ์ผ ์‚ญ์ œ
โ—ฆ
์„ ํƒ ํŒŒ์ผ ์‚ญ์ œ
โ—ฆ
๊ฐœ๋ณ„ ํŒŒ์ผ ์‚ญ์ œ

ํŒŒ์ผ ์—…๋กœ๋“œ

๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ๋“ฑ๋ก

1.
๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค - ํ…Œ์ด๋ธ” ์ƒ์„ฑ
2.
SQL ์ฟผ๋ฆฌ Mapper ์ž‘์„ฑ
3.
Domain (DTO)
4.
Mapper
5.
Service
6.
Controller

๋ฐ์ดํ„ฐ ๋ฒ ์ด์Šค - ํ…Œ์ด๋ธ” ์ƒ์„ฑ

DROP TABLE IF EXISTS `files`; CREATE TABLE `files` ( `no` BIGINT NOT NULL AUTO_INCREMENT PRIMARY KEY COMMENT 'PK', `id` VARCHAR(64) NOT NULL COMMENT 'UK', `p_table` VARCHAR(100) NOT NULL COMMENT '๋ถ€๋ชจํ…Œ์ด๋ธ”', `p_no` BIGINT NOT NULL COMMENT '๋ถ€๋ชจPK', `type` ENUM('MAIN', 'SUB') NOT NULL DEFAULT 'SUB' COMMENT 'ํƒ€์ž…', `file_name` TEXT NOT NULL COMMENT 'ํŒŒ์ผ๋ช…', `origin_name` TEXT NOT NULL COMMENT '์›๋ณธํŒŒ์ผ๋ช…', `file_path` TEXT NOT NULL COMMENT 'ํŒŒ์ผ๊ฒฝ๋กœ', `file_size` BIGINT NULL DEFAULT 0 COMMENT '์šฉ๋Ÿ‰', `seq` BIGINT NULL DEFAULT 0 COMMENT '์ˆœ์„œ', `created_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '๋“ฑ๋ก์ผ์ž', `updated_at` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '์ˆ˜์ •์ผ์ž' );
SQL
๋ณต์‚ฌ

SQL ์ฟผ๋ฆฌ Mapper ์ž‘์„ฑ

XML
๋ณต์‚ฌ

Domain (DTO)

Java
๋ณต์‚ฌ

Mapper

โ€ข
BaseMapper.java
โ€ข
Filemapper.java

BaseMapper.java

Java
๋ณต์‚ฌ

Filemapper.java

Java
๋ณต์‚ฌ

Service

โ€ข
BaseService.java
โ€ข
FileService.java
โ€ข
FileServiceImpl.java

BaseService.java

Java
๋ณต์‚ฌ

FileService.java

Java
๋ณต์‚ฌ

FileServiceImpl.java

Java
๋ณต์‚ฌ

Controller

Java
๋ณต์‚ฌ

๏ธŽ ํŒŒ์ผ ์กฐํšŒ

โ€ข
ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ
โ€ข
๋‹ค์šด๋กœ๋“œ
โ€ข
์ธ๋„ค์ผ ์ด๋ฏธ์ง€ ๋ณด๊ธฐ
โ€ข
ํƒ€์ž…๋ณ„ ํŒŒ์ผ ์กฐํšŒ

ํŒŒ์ผ ๋ชฉ๋ก ์กฐํšŒ

๋‹ค์šด๋กœ๋“œ

์ธ๋„ค์ผ ์ด๋ฏธ์ง€ ๋ณด๊ธฐ

ํƒ€์ž…๋ณ„ ํŒŒ์ผ ์กฐํšŒ

โ€ข
๋ถ€๋ชจ ๊ธฐ์ค€ ํŒŒ์ผ ์กฐํšŒ
โ—ฆ
URL : /files/{pTable}/{pNo}?type={MAIN, SUB}
โ—ฆ
MAIN ํƒ€์ž… ์กฐํšŒ
โ–ช
Files selectMainFile( Files file )
โ–ช
SQL
SELECT * FROM files WHERE p_table = #{pTable} AND p_no = #{pNo} AND type = #{type}
SQL
๋ณต์‚ฌ
โ—ฆ
SUB ํƒ€์ž… ์กฐํšŒ
โ–ช
List<Files> listByType( Files file )
โ–ช
SQL
SELECT * FROM files WHERE p_table = #{pTable} AND p_no = #{pNo} AND type = #{type}
SQL
๋ณต์‚ฌ