From e6fb0ed4e1ae7adfe410c87e20b068fa22fbf398 Mon Sep 17 00:00:00 2001 From: yoonyoungyang Date: Mon, 9 Mar 2026 14:22:11 +0900 Subject: [PATCH 1/2] chore: initialize spring boot project --- HELP.md | 27 ++ build.gradle | 37 +++ gradle/wrapper/gradle-wrapper.properties | 7 + gradlew | 251 ++++++++++++++++++ gradlew.bat | 94 +++++++ settings.gradle | 1 + .../sb_zeee/SbZeeeApplication.java | 13 + src/main/resources/application.properties | 1 + .../sb_zeee/SbZeeeApplicationTests.java | 13 + 9 files changed, 444 insertions(+) create mode 100644 HELP.md create mode 100644 build.gradle create mode 100644 gradle/wrapper/gradle-wrapper.properties create mode 100755 gradlew create mode 100644 gradlew.bat create mode 100644 settings.gradle create mode 100644 src/main/java/com/springstudy/sb_zeee/SbZeeeApplication.java create mode 100644 src/main/resources/application.properties create mode 100644 src/test/java/com/springstudy/sb_zeee/SbZeeeApplicationTests.java diff --git a/HELP.md b/HELP.md new file mode 100644 index 0000000..502d8d2 --- /dev/null +++ b/HELP.md @@ -0,0 +1,27 @@ +# Read Me First +The following was discovered as part of building this project: + +* The original package name 'com.springstudy.sb-zeee' is invalid and this project uses 'com.springstudy.sb_zeee' instead. + +# Getting Started + +### Reference Documentation +For further reference, please consider the following sections: + +* [Official Gradle documentation](https://docs.gradle.org) +* [Spring Boot Gradle Plugin Reference Guide](https://docs.spring.io/spring-boot/3.5.11/gradle-plugin) +* [Create an OCI image](https://docs.spring.io/spring-boot/3.5.11/gradle-plugin/packaging-oci-image.html) +* [Spring Web](https://docs.spring.io/spring-boot/3.5.11/reference/web/servlet.html) + +### Guides +The following guides illustrate how to use some features concretely: + +* [Building a RESTful Web Service](https://spring.io/guides/gs/rest-service/) +* [Serving Web Content with Spring MVC](https://spring.io/guides/gs/serving-web-content/) +* [Building REST services with Spring](https://spring.io/guides/tutorials/rest/) + +### Additional Links +These additional references should also help you: + +* [Gradle Build Scans – insights for your project's build](https://scans.gradle.com#gradle) + diff --git a/build.gradle b/build.gradle new file mode 100644 index 0000000..70db643 --- /dev/null +++ b/build.gradle @@ -0,0 +1,37 @@ +plugins { + id 'java' + id 'org.springframework.boot' version '3.5.11' + id 'io.spring.dependency-management' version '1.1.7' +} + +group = 'com.springstudy' +version = '0.0.1-SNAPSHOT' +description = 'spring boot study project' + +java { + toolchain { + languageVersion = JavaLanguageVersion.of(17) + } +} + +configurations { + compileOnly { + extendsFrom annotationProcessor + } +} + +repositories { + mavenCentral() +} + +dependencies { + implementation 'org.springframework.boot:spring-boot-starter-web' + compileOnly 'org.projectlombok:lombok' + annotationProcessor 'org.projectlombok:lombok' + testImplementation 'org.springframework.boot:spring-boot-starter-test' + testRuntimeOnly 'org.junit.platform:junit-platform-launcher' +} + +tasks.named('test') { + useJUnitPlatform() +} diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties new file mode 100644 index 0000000..aaaabb3 --- /dev/null +++ b/gradle/wrapper/gradle-wrapper.properties @@ -0,0 +1,7 @@ +distributionBase=GRADLE_USER_HOME +distributionPath=wrapper/dists +distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.4-bin.zip +networkTimeout=10000 +validateDistributionUrl=true +zipStoreBase=GRADLE_USER_HOME +zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew new file mode 100755 index 0000000..23d15a9 --- /dev/null +++ b/gradlew @@ -0,0 +1,251 @@ +#!/bin/sh + +# +# Copyright © 2015-2021 the original authors. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# SPDX-License-Identifier: Apache-2.0 +# + +############################################################################## +# +# Gradle start up script for POSIX generated by Gradle. +# +# Important for running: +# +# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is +# noncompliant, but you have some other compliant shell such as ksh or +# bash, then to run this script, type that shell name before the whole +# command line, like: +# +# ksh Gradle +# +# Busybox and similar reduced shells will NOT work, because this script +# requires all of these POSIX shell features: +# * functions; +# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», +# «${var#prefix}», «${var%suffix}», and «$( cmd )»; +# * compound commands having a testable exit status, especially «case»; +# * various built-in commands including «command», «set», and «ulimit». +# +# Important for patching: +# +# (2) This script targets any POSIX shell, so it avoids extensions provided +# by Bash, Ksh, etc; in particular arrays are avoided. +# +# The "traditional" practice of packing multiple parameters into a +# space-separated string is a well documented source of bugs and security +# problems, so this is (mostly) avoided, by progressively accumulating +# options in "$@", and eventually passing that to Java. +# +# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, +# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; +# see the in-line comments for details. +# +# There are tweaks for specific operating systems such as AIX, CygWin, +# Darwin, MinGW, and NonStop. +# +# (3) This script is generated from the Groovy template +# https://github.com/gradle/gradle/blob/HEAD/platforms/jvm/plugins-application/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt +# within the Gradle project. +# +# You can find Gradle at https://github.com/gradle/gradle/. +# +############################################################################## + +# Attempt to set APP_HOME + +# Resolve links: $0 may be a link +app_path=$0 + +# Need this for daisy-chained symlinks. +while + APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path + [ -h "$app_path" ] +do + ls=$( ls -ld "$app_path" ) + link=${ls#*' -> '} + case $link in #( + /*) app_path=$link ;; #( + *) app_path=$APP_HOME$link ;; + esac +done + +# This is normally unused +# shellcheck disable=SC2034 +APP_BASE_NAME=${0##*/} +# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) +APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit + +# Use the maximum available, or set MAX_FD != -1 to use that value. +MAX_FD=maximum + +warn () { + echo "$*" +} >&2 + +die () { + echo + echo "$*" + echo + exit 1 +} >&2 + +# OS specific support (must be 'true' or 'false'). +cygwin=false +msys=false +darwin=false +nonstop=false +case "$( uname )" in #( + CYGWIN* ) cygwin=true ;; #( + Darwin* ) darwin=true ;; #( + MSYS* | MINGW* ) msys=true ;; #( + NONSTOP* ) nonstop=true ;; +esac + +CLASSPATH="\\\"\\\"" + + +# Determine the Java command to use to start the JVM. +if [ -n "$JAVA_HOME" ] ; then + if [ -x "$JAVA_HOME/jre/sh/java" ] ; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD=$JAVA_HOME/jre/sh/java + else + JAVACMD=$JAVA_HOME/bin/java + fi + if [ ! -x "$JAVACMD" ] ; then + die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +else + JAVACMD=java + if ! command -v java >/dev/null 2>&1 + then + die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. + +Please set the JAVA_HOME variable in your environment to match the +location of your Java installation." + fi +fi + +# Increase the maximum file descriptors if we can. +if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then + case $MAX_FD in #( + max*) + # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + MAX_FD=$( ulimit -H -n ) || + warn "Could not query maximum file descriptor limit" + esac + case $MAX_FD in #( + '' | soft) :;; #( + *) + # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. + # shellcheck disable=SC2039,SC3045 + ulimit -n "$MAX_FD" || + warn "Could not set maximum file descriptor limit to $MAX_FD" + esac +fi + +# Collect all arguments for the java command, stacking in reverse order: +# * args from the command line +# * the main class name +# * -classpath +# * -D...appname settings +# * --module-path (only if needed) +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. + +# For Cygwin or MSYS, switch paths to Windows format before running java +if "$cygwin" || "$msys" ; then + APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) + CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) + + JAVACMD=$( cygpath --unix "$JAVACMD" ) + + # Now convert the arguments - kludge to limit ourselves to /bin/sh + for arg do + if + case $arg in #( + -*) false ;; # don't mess with options #( + /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath + [ -e "$t" ] ;; #( + *) false ;; + esac + then + arg=$( cygpath --path --ignore --mixed "$arg" ) + fi + # Roll the args list around exactly as many times as the number of + # args, so each arg winds up back in the position where it started, but + # possibly modified. + # + # NB: a `for` loop captures its iteration list before it begins, so + # changing the positional parameters here affects neither the number of + # iterations, nor the values presented in `arg`. + shift # remove old arg + set -- "$@" "$arg" # push replacement arg + done +fi + + +# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' + +# Collect all arguments for the java command: +# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, +# and any embedded shellness will be escaped. +# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be +# treated as '${Hostname}' itself on the command line. + +set -- \ + "-Dorg.gradle.appname=$APP_BASE_NAME" \ + -classpath "$CLASSPATH" \ + -jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \ + "$@" + +# Stop when "xargs" is not available. +if ! command -v xargs >/dev/null 2>&1 +then + die "xargs is not available" +fi + +# Use "xargs" to parse quoted args. +# +# With -n1 it outputs one arg per line, with the quotes and backslashes removed. +# +# In Bash we could simply go: +# +# readarray ARGS < <( xargs -n1 <<<"$var" ) && +# set -- "${ARGS[@]}" "$@" +# +# but POSIX shell has neither arrays nor command substitution, so instead we +# post-process each arg (as a line of input to sed) to backslash-escape any +# character that might be a shell metacharacter, then use eval to reverse +# that process (while maintaining the separation between arguments), and wrap +# the whole thing up as a single "set" statement. +# +# This will of course break if any of these variables contains a newline or +# an unmatched quote. +# + +eval "set -- $( + printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | + xargs -n1 | + sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | + tr '\n' ' ' + )" '"$@"' + +exec "$JAVACMD" "$@" diff --git a/gradlew.bat b/gradlew.bat new file mode 100644 index 0000000..5eed7ee --- /dev/null +++ b/gradlew.bat @@ -0,0 +1,94 @@ +@rem +@rem Copyright 2015 the original author or authors. +@rem +@rem Licensed under the Apache License, Version 2.0 (the "License"); +@rem you may not use this file except in compliance with the License. +@rem You may obtain a copy of the License at +@rem +@rem https://www.apache.org/licenses/LICENSE-2.0 +@rem +@rem Unless required by applicable law or agreed to in writing, software +@rem distributed under the License is distributed on an "AS IS" BASIS, +@rem WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +@rem See the License for the specific language governing permissions and +@rem limitations under the License. +@rem +@rem SPDX-License-Identifier: Apache-2.0 +@rem + +@if "%DEBUG%"=="" @echo off +@rem ########################################################################## +@rem +@rem Gradle startup script for Windows +@rem +@rem ########################################################################## + +@rem Set local scope for the variables with windows NT shell +if "%OS%"=="Windows_NT" setlocal + +set DIRNAME=%~dp0 +if "%DIRNAME%"=="" set DIRNAME=. +@rem This is normally unused +set APP_BASE_NAME=%~n0 +set APP_HOME=%DIRNAME% + +@rem Resolve any "." and ".." in APP_HOME to make it shorter. +for %%i in ("%APP_HOME%") do set APP_HOME=%%~fi + +@rem Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. +set DEFAULT_JVM_OPTS="-Xmx64m" "-Xms64m" + +@rem Find java.exe +if defined JAVA_HOME goto findJavaFromJavaHome + +set JAVA_EXE=java.exe +%JAVA_EXE% -version >NUL 2>&1 +if %ERRORLEVEL% equ 0 goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:findJavaFromJavaHome +set JAVA_HOME=%JAVA_HOME:"=% +set JAVA_EXE=%JAVA_HOME%/bin/java.exe + +if exist "%JAVA_EXE%" goto execute + +echo. 1>&2 +echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% 1>&2 +echo. 1>&2 +echo Please set the JAVA_HOME variable in your environment to match the 1>&2 +echo location of your Java installation. 1>&2 + +goto fail + +:execute +@rem Setup the command line + +set CLASSPATH= + + +@rem Execute Gradle +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %* + +:end +@rem End local scope for the variables with windows NT shell +if %ERRORLEVEL% equ 0 goto mainEnd + +:fail +rem Set variable GRADLE_EXIT_CONSOLE if you need the _script_ return code instead of +rem the _cmd.exe /c_ return code! +set EXIT_CODE=%ERRORLEVEL% +if %EXIT_CODE% equ 0 set EXIT_CODE=1 +if not ""=="%GRADLE_EXIT_CONSOLE%" exit %EXIT_CODE% +exit /b %EXIT_CODE% + +:mainEnd +if "%OS%"=="Windows_NT" endlocal + +:omega diff --git a/settings.gradle b/settings.gradle new file mode 100644 index 0000000..6d50b68 --- /dev/null +++ b/settings.gradle @@ -0,0 +1 @@ +rootProject.name = 'sb-zeee' diff --git a/src/main/java/com/springstudy/sb_zeee/SbZeeeApplication.java b/src/main/java/com/springstudy/sb_zeee/SbZeeeApplication.java new file mode 100644 index 0000000..c0dbc72 --- /dev/null +++ b/src/main/java/com/springstudy/sb_zeee/SbZeeeApplication.java @@ -0,0 +1,13 @@ +package com.springstudy.sb_zeee; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class SbZeeeApplication { + + public static void main(String[] args) { + SpringApplication.run(SbZeeeApplication.class, args); + } + +} diff --git a/src/main/resources/application.properties b/src/main/resources/application.properties new file mode 100644 index 0000000..65f6d9b --- /dev/null +++ b/src/main/resources/application.properties @@ -0,0 +1 @@ +spring.application.name=sb-zeee diff --git a/src/test/java/com/springstudy/sb_zeee/SbZeeeApplicationTests.java b/src/test/java/com/springstudy/sb_zeee/SbZeeeApplicationTests.java new file mode 100644 index 0000000..f4fa6cc --- /dev/null +++ b/src/test/java/com/springstudy/sb_zeee/SbZeeeApplicationTests.java @@ -0,0 +1,13 @@ +package com.springstudy.sb_zeee; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class SbZeeeApplicationTests { + + @Test + void contextLoads() { + } + +} From f14db1faf84d531bb0ce9320e98ea02d4b8d4c6f Mon Sep 17 00:00:00 2001 From: yoonyoungyang Date: Mon, 9 Mar 2026 14:48:48 +0900 Subject: [PATCH 2/2] feat: ping api and common response --- .gradle/8.14.4/checksums/checksums.lock | Bin 0 -> 17 bytes .gradle/8.14.4/checksums/md5-checksums.bin | Bin 0 -> 30347 bytes .gradle/8.14.4/checksums/sha1-checksums.bin | Bin 0 -> 43661 bytes .../executionHistory/executionHistory.bin | Bin 0 -> 36753 bytes .../executionHistory/executionHistory.lock | Bin 0 -> 17 bytes .gradle/8.14.4/fileChanges/last-build.bin | Bin 0 -> 1 bytes .gradle/8.14.4/fileHashes/fileHashes.bin | Bin 0 -> 19447 bytes .gradle/8.14.4/fileHashes/fileHashes.lock | Bin 0 -> 17 bytes .../8.14.4/fileHashes/resourceHashesCache.bin | Bin 0 -> 18667 bytes .gradle/8.14.4/gc.properties | 0 .../buildOutputCleanup.lock | Bin 0 -> 17 bytes .gradle/buildOutputCleanup/cache.properties | 2 + .gradle/buildOutputCleanup/outputFiles.bin | Bin 0 -> 18911 bytes .gradle/file-system.probe | Bin 0 -> 8 bytes .gradle/vcs-1/gc.properties | 0 .idea/.gitignore | 10 +++++ .idea/compiler.xml | 18 +++++++++ .idea/gradle.xml | 15 ++++++++ .idea/misc.xml | 5 +++ .idea/vcs.xml | 6 +++ build/resources/main/application.properties | 1 + .../stash-dir/ApiResponse.class.uniqueId0 | Bin 0 -> 320 bytes .../stash-dir/PingController.class.uniqueId1 | Bin 0 -> 337 bytes .../compileJava/previous-compilation-data.bin | Bin 0 -> 25986 bytes .../sb_zeee/common/ApiResponse.java | 36 ++++++++++++++++++ .../sb_zeee/controller/PingController.java | 14 +++++++ 26 files changed, 107 insertions(+) create mode 100644 .gradle/8.14.4/checksums/checksums.lock create mode 100644 .gradle/8.14.4/checksums/md5-checksums.bin create mode 100644 .gradle/8.14.4/checksums/sha1-checksums.bin create mode 100644 .gradle/8.14.4/executionHistory/executionHistory.bin create mode 100644 .gradle/8.14.4/executionHistory/executionHistory.lock create mode 100644 .gradle/8.14.4/fileChanges/last-build.bin create mode 100644 .gradle/8.14.4/fileHashes/fileHashes.bin create mode 100644 .gradle/8.14.4/fileHashes/fileHashes.lock create mode 100644 .gradle/8.14.4/fileHashes/resourceHashesCache.bin create mode 100644 .gradle/8.14.4/gc.properties create mode 100644 .gradle/buildOutputCleanup/buildOutputCleanup.lock create mode 100644 .gradle/buildOutputCleanup/cache.properties create mode 100644 .gradle/buildOutputCleanup/outputFiles.bin create mode 100644 .gradle/file-system.probe create mode 100644 .gradle/vcs-1/gc.properties create mode 100644 .idea/.gitignore create mode 100644 .idea/compiler.xml create mode 100644 .idea/gradle.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/vcs.xml create mode 100644 build/resources/main/application.properties create mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/ApiResponse.class.uniqueId0 create mode 100644 build/tmp/compileJava/compileTransaction/stash-dir/PingController.class.uniqueId1 create mode 100644 build/tmp/compileJava/previous-compilation-data.bin create mode 100644 src/main/java/com/springstudy/sb_zeee/common/ApiResponse.java create mode 100644 src/main/java/com/springstudy/sb_zeee/controller/PingController.java diff --git a/.gradle/8.14.4/checksums/checksums.lock b/.gradle/8.14.4/checksums/checksums.lock new file mode 100644 index 0000000000000000000000000000000000000000..50e24fb658f7deaa4a74b67fa99c860839735534 GIT binary patch literal 17 VcmZSPnPu~aX;+ph0~jzJ1pp{61M~m@ literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/checksums/md5-checksums.bin b/.gradle/8.14.4/checksums/md5-checksums.bin new file mode 100644 index 0000000000000000000000000000000000000000..4bdfc23c5f85fef64c74abe45eb2f91a292260e9 GIT binary patch literal 30347 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 literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/checksums/sha1-checksums.bin b/.gradle/8.14.4/checksums/sha1-checksums.bin new file mode 100644 index 0000000000000000000000000000000000000000..33463bf413d0ab50d6c80d0cebf2b7d4b0bd0969 GIT binary patch literal 43661 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 Y@OMcVh95MBDtyF|Uyt&@uLLsx4+$0QRsaA1 literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/executionHistory/executionHistory.bin b/.gradle/8.14.4/executionHistory/executionHistory.bin new file mode 100644 index 0000000000000000000000000000000000000000..95df83693230f81dd3af764c9e13a13d94407b38 GIT binary patch literal 36753 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 literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/executionHistory/executionHistory.lock b/.gradle/8.14.4/executionHistory/executionHistory.lock new file mode 100644 index 0000000000000000000000000000000000000000..e3ea6fe57bd207d9f6057e18f69fba1150600761 GIT binary patch literal 17 UcmZQ(T@m>7!dBHb1_)pW05UNI9smFU literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/fileChanges/last-build.bin b/.gradle/8.14.4/fileChanges/last-build.bin new file mode 100644 index 0000000000000000000000000000000000000000..f76dd238ade08917e6712764a16a22005a50573d GIT binary patch literal 1 IcmZPo000310RR91 literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/fileHashes/fileHashes.bin b/.gradle/8.14.4/fileHashes/fileHashes.bin new file mode 100644 index 0000000000000000000000000000000000000000..2f7a5303cc6a3ff45ea58169fd560304e6b1e827 GIT binary patch literal 19447 zcmeI({ZA8T00;1=R1`XhOa##w29hx<4Be2Rt2#6VDXlIm!h~&^3_3A@n?qi#f+9i5 zV7@`kSkcP+3}y)+#f+e%j39O!mm@# zJcx*W7_T4)%V23XA?sb3fx9-?wPid(naG}&rPKcp>WAMbYRTJsl+ER(G;fx7s+*EG z9%l3CP@1=@j@&eEn%TwXQ5iJ9QJ1E;@=yL|F5gCTli`#Dznvd`KZMxv?FTUsUE}BnF9BOs!nT}#}Ss%^aJNK0o&5W0GxrF8+A%Pc-=DIRA zkDjCX2T3kZMyk`FaM$Z-t|(KFYsOO7vblU6&6QoM+dltY+rZsNNb|T=#T8pB=fb$W zoaPDfUH5mEnEvAOeKc2Pm9CBy{}{sNQMEMR-~7%u2Lo!nxqO)Bsd+zT8Tvbyu(`~c z=Jb;g!3cW}M+iUw0uX=z1Rwwb2tWV=5P$##AOHafKmY;|fB*y_009U<00Izz00bZa z0SG_<0uX=z1Rwwb2tWV=5O`e$EH9ypncdg2yZHy0Tt_djP+aJa%AHs0nK$(X73ztq zUzwAHIDZz$9D{8erGJOtXn6dmC|Md_nB`&q#HMjTw};<|Hs$C$l2RL8r+?1;;po|L zo5spG%Ukz$b39(u`(3DH(Z3xHW4~{@bTZhcA$)L<-_XYzZkIf*k9(#v4hD@#Ds38$ z>+bR!1L~qT3o^U{o0`Jj|9o<*-ljqNb^OMu^c2bL^7$3}<5wQIdM`(2({TK@o!^KY zi_l8_r3IsN&+=C-Yh=FnOS)cPw(=X7(meb86GugoX~p3BQ-RD1j)jIpN}&(G;kMMz zFtq#QocyXFO?G2${L2jz(9Yb!UN@rp!$W%E&O5VhLkXb`24=N_prTLIewn$F*#wqV z9Cp9QEwOS(&Gpk}=l)u8e4(rLTlKA()e{xqqH`Bn;u!NC&XcjIoLJYW?Zgm{{KqcH8d4A zA@$tI&LIh~7Kku|-xw&qSKRc8!vQ;4}XqVHhlHmY8STg92$cCUjP6A literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/fileHashes/fileHashes.lock b/.gradle/8.14.4/fileHashes/fileHashes.lock new file mode 100644 index 0000000000000000000000000000000000000000..3c614835fae7ee01891c63476a902f25b4bde8cd GIT binary patch literal 17 UcmZSHs<`p7_jJ!t1_)3G05Z1(6#xJL literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/fileHashes/resourceHashesCache.bin b/.gradle/8.14.4/fileHashes/resourceHashesCache.bin new file mode 100644 index 0000000000000000000000000000000000000000..59b437b2313c9fbd2c2b3d386206c1e9cbef6fd6 GIT binary patch literal 18667 zcmeI(K_~=K9LMo7aoJs&IbdCg62(D{gTg`CvKO~W30V$1E>2s@7A_7-TdPfRT9iFW zV{;%5%t7nuL?I~$HA>VTlz7w3w6PaweP6wK|9AvC%9l5!(x@$!R0tq| z00IagfB*srAb@bkL%LSH0lU3q!I&kcRnI-ghjy?olw z{Z-^E?jBzR5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~0R#|0009ILKmY**5I_I{ z1Q0*~0R#|0009IL_=|uhni|AZovE}cwpsN{Ws literal 0 HcmV?d00001 diff --git a/.gradle/8.14.4/gc.properties b/.gradle/8.14.4/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/.gradle/buildOutputCleanup/buildOutputCleanup.lock b/.gradle/buildOutputCleanup/buildOutputCleanup.lock new file mode 100644 index 0000000000000000000000000000000000000000..5e76e7694d4fc08dd8e42fe7481392d9b8824b87 GIT binary patch literal 17 UcmZQ}yR^Bt`{c)43=p6Q075|poB#j- literal 0 HcmV?d00001 diff --git a/.gradle/buildOutputCleanup/cache.properties b/.gradle/buildOutputCleanup/cache.properties new file mode 100644 index 0000000..0a2e973 --- /dev/null +++ b/.gradle/buildOutputCleanup/cache.properties @@ -0,0 +1,2 @@ +#Mon Mar 09 14:39:13 KST 2026 +gradle.version=8.14.4 diff --git a/.gradle/buildOutputCleanup/outputFiles.bin b/.gradle/buildOutputCleanup/outputFiles.bin new file mode 100644 index 0000000000000000000000000000000000000000..95948be01d1e0547cd9538b37cae778288883fb9 GIT binary patch literal 18911 zcmeI%Pe>GD7=ZCf5K)&BQZ$4T$};@Ju0|y$5tQj=w}=E$ia-;U4IENh)}dab(^X=^9BA&%o?_Jp0Wz-~6s~*)R%n zOgW6*BX4)e2mu5TKmY**5I_I{1Q0*~0R#|0009ILKmY**{uhCp){A7>FH=yKwlg^7 zHw>r48stAroe$19i>}*$H$?UO!J}tukE^4zJ<vXB^l|N)bEJm(l*l=*kGn?FAewHz&< zm-!#GJ6yMm3tJmb%KV7-Q_szdxyf*y^q6+nR!R8Q**6o?Yqg)L3k}4^BEO_R(C)5T zyD%{m8@7A>Q|*m!gI(_SFS?&O?RT$DcO(;uPFbf^yZ1?PR?ro3$vW%W@2^DX-X+7? z(wDV&`#N59F4bsn)2>&;NUOH*;THh}5I_I{1Q0*~0R#|0009ILKmY**5I_I{1Q0*~ z0R#|0009ILKmY**5I_I{1Q0*~0R#|0;9m(;Sr5*%&I5892Y)L&d4CscgL|~YKU?{) G-n9){RzfuZ literal 0 HcmV?d00001 diff --git a/.gradle/file-system.probe b/.gradle/file-system.probe new file mode 100644 index 0000000000000000000000000000000000000000..c9c990808f192a40150c058ee7bca45e1562119e GIT binary patch literal 8 PcmZQzV4QPNaa}(E2&@9l literal 0 HcmV?d00001 diff --git a/.gradle/vcs-1/gc.properties b/.gradle/vcs-1/gc.properties new file mode 100644 index 0000000..e69de29 diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..9879198 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,10 @@ +# 디폴트 무시된 파일 +/shelf/ +/workspace.xml +# 쿼리 파일을 포함한 무시된 디폴트 폴더 +/queries/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +# 에디터 기반 HTTP 클라이언트 요청 +/httpRequests/ diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..347155e --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/gradle.xml b/.idea/gradle.xml new file mode 100644 index 0000000..f9163b4 --- /dev/null +++ b/.idea/gradle.xml @@ -0,0 +1,15 @@ + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..4ba5914 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/build/resources/main/application.properties b/build/resources/main/application.properties new file mode 100644 index 0000000..65f6d9b --- /dev/null +++ b/build/resources/main/application.properties @@ -0,0 +1 @@ +spring.application.name=sb-zeee diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/ApiResponse.class.uniqueId0 b/build/tmp/compileJava/compileTransaction/stash-dir/ApiResponse.class.uniqueId0 new file mode 100644 index 0000000000000000000000000000000000000000..7a8541015dade7a68e22bdf0444ef67abf92ca33 GIT binary patch literal 320 zcma)1%SyyR5UkE)qj7bEf8b3QaX!EYh~OzGsO(iH*=C(3nF*Oh(7*B|c<=-KD6wbp z;L&cV>Z*or>g)UC6Tmr&91-FS$rLFjgkr6qwQ96osoQGJ^+1@M8Eb|MLVS3%$goA2 z*REB*>y2IcVO+i_Up>Auvl72`R$X@Hj(z8>XF_u2mO``ASiTwCiu(s$HR9}-uGY;$ z_a^9HGZ~(YCmfgme{o94@7>tfd~L$r;?Mh&5C;dyBxNX)mYjmyqSQtM>HHn^CPsu@ WFsy+XJA%{AoC@!XBJ2r9nEe2SjZ3ir literal 0 HcmV?d00001 diff --git a/build/tmp/compileJava/compileTransaction/stash-dir/PingController.class.uniqueId1 b/build/tmp/compileJava/compileTransaction/stash-dir/PingController.class.uniqueId1 new file mode 100644 index 0000000000000000000000000000000000000000..a138bfedd1e54c55923bbaebad243adfbeb9c856 GIT binary patch literal 337 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 { + + private boolean isSuccess; + private String code; + private String message; + private T result; + + public ApiResponse(boolean isSuccess, String code, String message, T result) { + this.isSuccess = isSuccess; + this.code = code; + this.message = message; + this.result = result; + } + + public static ApiResponse success(T result) { + return new ApiResponse<>(true, "COMMON200", "요청에 성공했습니다.", result); + } + + public boolean getIsSuccess() { + return isSuccess; + } + + public String getCode() { + return code; + } + + public String getMessage() { + return message; + } + + public T getResult() { + return result; + } +} \ No newline at end of file diff --git a/src/main/java/com/springstudy/sb_zeee/controller/PingController.java b/src/main/java/com/springstudy/sb_zeee/controller/PingController.java new file mode 100644 index 0000000..07ebbdf --- /dev/null +++ b/src/main/java/com/springstudy/sb_zeee/controller/PingController.java @@ -0,0 +1,14 @@ +package com.springstudy.sb_zeee.controller; + +import com.springstudy.sb_zeee.common.ApiResponse; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RestController; + +@RestController +public class PingController { + + @GetMapping("/api/ping") + public ApiResponse ping() { + return ApiResponse.success("pong"); + } +} \ No newline at end of file