Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโ€™ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[mainโฌ…๐Ÿš€BE_5]: JPA ์ตœ์ ํ™” | Fetch Join ๊ธฐ๋ฐ˜ Product ๋‹จ๊ฑด ์กฐํšŒ ๋ฐ ์—…๋ฐ์ดํŠธ ์„ฑ๋Šฅ ๊ฐœ์„  | Kafka ๊ธฐ๋ฐ˜ ๊ฒฐ์ œ ์ฒ˜๋ฆฌ & JWT ์ธ์ฆ ์‹œ์Šคํ…œ ๊ณ ๋„ํ™” [๋ฐ•ํ•œ์†”] #83

Merged
merged 21 commits into from
Feb 22, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
45bf03e
Feat: ๊ฒฐ์ œ & ์‹ค์‹œ๊ฐ„ ์žฌ๊ณ  ๋ณ€๋™ ์‹œ ๋ฐ์ดํ„ฐ ๋ฉ”์‹œ์ง€ ์ „์†ก์šฉ(SSE) SseController ๊ตฌํ˜„ [๋ฐ•ํ•œ์†”]
pjhcsols Jun 9, 2024
fc4270b
Feat: User ํ”„๋กœํ•„ ์ด๋ฏธ์ง€ Scheduler ๊ตฌํ˜„ & ์Šคํ† ๋ฆฌ์ง€ ๊ฒฝ๋กœ encoding, decoding[๋ฐ•ํ•œ์†”]
pjhcsols Jun 11, 2024
ecc2c56
Fix: ์ƒํ’ˆ ๊ฒฐ์ œ & ์žฌ๊ณ  ๊ด€๋ฆฌ(Kafka Message Queue) ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜ ๋ฐฉ์ง€ ์ „๋žต ๋„์ž… & SSE ์—ฐ๊ฒฐ ํ•ด์ œ ๋ฌธโ€ฆ
pjhcsols Jun 13, 2024
2ee9864
Fix: ์ƒํ’ˆ ๊ฒฐ์ œ & ์žฌ๊ณ  ๊ด€๋ฆฌ(Kafka Message Queue) controller request์‹œ์— PaymentIโ€ฆ
pjhcsols Jun 16, 2024
428caa4
๊ฒฐ์ œ ๊ด€๋ จ ๋ฉ”๋ชจ๋ฆฌ ๋ˆ„์ˆ˜ ๋ฆฌํŒฉํ† ๋ง[๋ฐ•ํ•œ์†”]
pjhcsols Jul 28, 2024
9d5065d
Refactor: ์ผ๊ด„์ฒ˜๋ฆฌ์ž‘์—… ์ฝ”๋“œ Logger ์‚ฌ์šฉ & ConfigurationProperties๋ฅผ ์ด์šฉํ•œ ImageProโ€ฆ
pjhcsols Jul 29, 2024
ac7ae69
Refactor: RequiredArgsConstructor instead Autowired in Scheduler[๋ฐ•ํ•œ์†”]
pjhcsols Aug 4, 2024
8aa5639
Refactor: payment & ShoppingCart & Like Controller ๋กœ์ง ์ƒ์„ฑ[๋ฐ•ํ•œ์†”]
pjhcsols Aug 5, 2024
61dc362
Refactor: DTO DAO Layer ์ˆ˜์ • [๋ฐ•ํ•œ์†”]
pjhcsols Aug 13, 2024
1001656
Feat: ์œ ์ € Point ๊ด€๋ จ ์„œ๋น„์Šค ์ถ”๊ฐ€[๋ฐ•ํ•œ์†”]
pjhcsols Aug 14, 2024
b9d1c4e
Feat: JwtProperties ์ค‘์•™ ๊ด€๋ฆฌ & ๋ฆฌํ”„๋ ˆ์‰ฌ ํ† ํฐ ๋กœ์ง ์ž‘์„ฑ[๋ฐ•ํ•œ์†”]
pjhcsols Aug 19, 2024
4509282
Refactor: JwtFilter๋ฅผ ํ†ตํ•œ ํ† ํฐ ๊ฒ€์ฆ & ์—‘์„ธ์Šค, ๋ฆฌํ”„๋ ˆ์‰ฌ ๊ธฐ๋Šฅ ๋ถ„๋ฆฌ & User๋ณ„ JPA Generic ๋ ˆโ€ฆ
pjhcsols Aug 21, 2024
2479ee9
Refactor: Domain-based directory ๊ตฌ์กฐ ๋ณ€๊ฒฝ (#71)
pjhcsols Jan 9, 2025
284e2e4
Feat: Product ์—”ํ‹ฐํ‹ฐ ๊ตฌ์กฐ ๊ฐœ์„  - ์ƒ‰์ƒ/์‚ฌ์ด์ฆˆ๋ณ„ ๋ฐ์ดํ„ฐ ๋ถ„๋ฆฌ, Lazy Loading ๋„์ž… ๋ฐ ์—ฐ๊ด€๊ด€๊ณ„ ์ตœ์ ํ™” โ€ฆ
pjhcsols Feb 20, 2025
a0cb3bf
Refactor: JPA Generic ๋ณ€๊ฒฝ ๋ฐ Repository ์ตœ์ ํ™” - ์—”ํ‹ฐํ‹ฐ ๊ตฌ์กฐ, ์ตœ์ ํ™” ์ „๋žต(Fetch Joinโ€ฆ
pjhcsols Feb 20, 2025
97719aa
Fix: Service ๋ ˆ์ด์–ด ๊ฐœ์„  - Fetch Join ๊ธฐ๋ฐ˜ ๋‹จ๊ฑด ์กฐํšŒ, @BatchSize ๋ฐ Pagination ์ ์šฉโ€ฆ
pjhcsols Feb 20, 2025
f93a624
Feat: RESTful Product API ์—”๋“œํฌ์ธํŠธ ๋ฐ API Docs ์ถ”๊ฐ€ - Swagger ๊ธฐ๋ฐ˜ API ๋ฌธ์„œํ™”์™€ Pโ€ฆ
pjhcsols Feb 20, 2025
cbc1238
Feat: ๊ฒฐ์ œ ๋กœ์ง ์ตœ์ ํ™” ๋ฐ ์ƒํ’ˆ ๋„๋ฉ”์ธ ๊ฐœ์„  - ์—”ํ‹ฐํ‹ฐ ์ฝœ๋ฐฑ ๊ธฐ๋ฐ˜ ์˜ต์…˜ ์žฌ๊ณ  ํ•ฉ์‚ฐ ์ž๋™ ๊ณ„์‚ฐ, Kafka ๋น„๋™๊ธฐ ๊ฒฐ์ œ โ€ฆ
pjhcsols Feb 20, 2025
a5ae149
Feat: P6Spy ๋„์ž… ๋ฐ ์ฟผ๋ฆฌ ๋ชจ๋‹ˆํ„ฐ๋ง, ์ƒํ’ˆ ๋กœ์ง ์ˆ˜์ •, ์ฟผ๋ฆฌ ์ตœ์ ํ™” [๋ฐ•ํ•œ์†”](#81)
pjhcsols Feb 21, 2025
9b25880
Feat: Product ์ƒ์„ธ์กฐํšŒ ๊ธฐ๋Šฅ ๊ฐœ์„  - ์ƒ‰์ƒ๋ณ„ ์ด๋ฏธ์ง€ ์กฐํšŒ, Lazy Loading ๋„์ž… ๋ฐ ์—ฐ๊ด€๊ด€๊ณ„ ์ตœ์ ํ™” [๋ฐ•ํ•œโ€ฆ
pjhcsols Feb 21, 2025
2859496
Feat: Product ๋‹จ๊ฑด ์กฐํšŒ ๋ฐ ์—…๋ฐ์ดํŠธ ๋กœ์ง ๊ตฌํ˜„ ๋ฐ ์„ฑ๋Šฅ ์ตœ์ ํ™” (Fetch Join ์ ์šฉ, N+1 ๋ฌธ์ œ ํ•ด๊ฒฐ, โ€ฆ
pjhcsols Feb 21, 2025
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
17 changes: 10 additions & 7 deletions basilium-server/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,6 @@ repositories {
dependencies {
//import
implementation group: 'com.github.iamport', name: 'iamport-rest-client-java', version: '0.2.22'
/*
implementation group: 'com.squareup.retrofit2', name: 'adapter-rxjava2', version: '2.9.0'
implementation group: 'com.google.code.gson', name: 'gson', version: '2.8.5'
implementation group: 'com.squareup.okhttp3', name: 'okhttp', version: '4.9.3'
implementation group: 'com.squareup.retrofit2', name: 'converter-gson', version: '2.3.0'
*/

//spring
implementation 'org.springframework.boot:spring-boot-starter-web'
Expand All @@ -37,8 +31,13 @@ dependencies {
testImplementation 'org.springframework.boot:spring-boot-starter-test'

//mysql
//db CustomDatabaseHealthIndicator
//implementation 'org.springframework.boot:spring-boot-starter-actuator'

//implementation 'com.mysql:mysql-connector-java'
runtimeOnly 'com.mysql:mysql-connector-j'
//runtimeOnly 'mysql:mysql-connector-java'
//runtimeOnly 'mysql:mysql-connector-java:8.0.32'
testImplementation 'org.springframework.security:spring-security-test'
testImplementation 'org.springframework.boot:spring-boot-starter-test'
compileOnly 'org.projectlombok:lombok'
Expand Down Expand Up @@ -72,7 +71,7 @@ dependencies {
implementation 'software.amazon.awssdk:s3:2.17.84' // ์‚ฌ์šฉํ•˜๊ณ ์ž ํ•˜๋Š” AWS SDK ๋ฒ„์ „์— ๋งž๊ฒŒ ๋ณ€๊ฒฝ

//rabbit mq
implementation 'org.springframework.boot:spring-boot-starter-amqp'
//implementation 'org.springframework.boot:spring-boot-starter-amqp'
//implementation 'org.springframework.boot:spring-boot-starter-scheduling:3.2.3'
runtimeOnly 'com.h2database:h2'

Expand All @@ -82,6 +81,10 @@ dependencies {
//sse
implementation 'com.fasterxml.jackson.core:jackson-databind' // ํ•„์š”ํ•œ ๊ฒฝ์šฐ
developmentOnly 'org.springframework.boot:spring-boot-devtools' // ๊ฐœ๋ฐœ ํ™˜๊ฒฝ์—์„œ ์‚ฌ์šฉ

//p6spy : ์‹ค์ œ ์‹คํ–‰๋˜๋Š” ์ฟผ๋ฆฌ(๋ฐฐ์น˜ ์ฟผ๋ฆฌ ํฌํ•จ)๋ฅผ ๋กœ๊ทธ
implementation 'p6spy:p6spy:3.9.1'
implementation 'com.github.gavlyukovskiy:p6spy-spring-boot-starter:1.9.1'
}

ext {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,13 @@
package basilium.basiliumserver;

import javax.sql.DataSource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.boot.ApplicationRunner;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.ImportAutoConfiguration;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.context.properties.ConfigurationPropertiesScan;
import org.springframework.cloud.openfeign.EnableFeignClients;
import org.springframework.cloud.openfeign.FeignAutoConfiguration;
import org.springframework.context.annotation.Bean;
Expand All @@ -18,20 +21,28 @@
//์œ„ ์Šค์ผ€์ค„๋ง
@EnableFeignClients
@SpringBootApplication
@ConfigurationPropertiesScan("basilium.basiliumserver.properties")
@ImportAutoConfiguration({FeignAutoConfiguration.class})
public class BasiliumServerApplication {

private static final Logger logger = LoggerFactory.getLogger(BasiliumServerApplication.class);

public static void main(String[] args) {
SpringApplication.run(BasiliumServerApplication.class, args);

}

@Bean
public ApplicationRunner initializeDatabase(DataSource dataSource) {
return args -> {
ResourceDatabasePopulator populator = new ResourceDatabasePopulator(
new ClassPathResource("data.sql"));
populator.execute(dataSource);
try {
ResourceDatabasePopulator populator = new ResourceDatabasePopulator(
new ClassPathResource("data.sql"));
populator.execute(dataSource);
logger.info("Database initialized successfully");
} catch (Exception e) {
logger.error("Database initialization failed: {}", e.getMessage());
logger.error("Exception stack trace: ", e);
}
};
}

Expand Down

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading