From b709d338f1fdaa35d37003c0f23709788bc982a5 Mon Sep 17 00:00:00 2001 From: rahulvaish Date: Fri, 22 Mar 2024 04:09:41 -0400 Subject: [PATCH 1/5] graphql --- README.MD | 25 -- SpringBootGraphQL/.gitattributes | 2 + SpringBootGraphQL/.gitignore | 33 ++ .../.mvn/wrapper/maven-wrapper.jar | Bin 0 -> 58727 bytes .../.mvn/wrapper/maven-wrapper.properties | 2 + SpringBootGraphQL/mvnw | 316 ++++++++++++++++++ SpringBootGraphQL/mvnw.cmd | 188 +++++++++++ SpringBootGraphQL/paint.pdf | Bin 0 -> 994398 bytes SpringBootGraphQL/pom.xml | 78 +++++ .../learn/GraphqlProjectApplication.java | 20 ++ .../learn/controllers/BookController.java | 41 +++ .../java/com/graphql/learn/entities/Book.java | 25 ++ .../com/graphql/learn/model/BookInput.java | 14 + .../graphql/learn/repositories/BookRepo.java | 7 + .../graphql/learn/services/BookService.java | 18 + .../learn/services/impl/BookServiceImpl.java | 66 ++++ .../src/main/resources/application.properties | 10 + .../main/resources/graphql/schema.graphqls | 30 ++ .../learn/GraphqlProjectApplicationTests.java | 13 + 19 files changed, 863 insertions(+), 25 deletions(-) delete mode 100644 README.MD create mode 100644 SpringBootGraphQL/.gitattributes create mode 100644 SpringBootGraphQL/.gitignore create mode 100644 SpringBootGraphQL/.mvn/wrapper/maven-wrapper.jar create mode 100644 SpringBootGraphQL/.mvn/wrapper/maven-wrapper.properties create mode 100644 SpringBootGraphQL/mvnw create mode 100644 SpringBootGraphQL/mvnw.cmd create mode 100644 SpringBootGraphQL/paint.pdf create mode 100644 SpringBootGraphQL/pom.xml create mode 100644 SpringBootGraphQL/src/main/java/com/graphql/learn/GraphqlProjectApplication.java create mode 100644 SpringBootGraphQL/src/main/java/com/graphql/learn/controllers/BookController.java create mode 100644 SpringBootGraphQL/src/main/java/com/graphql/learn/entities/Book.java create mode 100644 SpringBootGraphQL/src/main/java/com/graphql/learn/model/BookInput.java create mode 100644 SpringBootGraphQL/src/main/java/com/graphql/learn/repositories/BookRepo.java create mode 100644 SpringBootGraphQL/src/main/java/com/graphql/learn/services/BookService.java create mode 100644 SpringBootGraphQL/src/main/java/com/graphql/learn/services/impl/BookServiceImpl.java create mode 100644 SpringBootGraphQL/src/main/resources/application.properties create mode 100644 SpringBootGraphQL/src/main/resources/graphql/schema.graphqls create mode 100644 SpringBootGraphQL/src/test/java/com/graphql/learn/GraphqlProjectApplicationTests.java diff --git a/README.MD b/README.MD deleted file mode 100644 index 897617a..0000000 --- a/README.MD +++ /dev/null @@ -1,25 +0,0 @@ -This repository contains SpringBoot examples developed on **Spring Tool suite (STS)**. - -## **Branch Contents:** - -##### [1] [SpringBootMasterExample](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootMasterClass) : SpringBoot examples with Eureka + MySQL + ConfigServer + APIGateway. -##### [2] [SpringBootMongo](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootMongo) : SpringBoot example with MongoDB -##### [3] [SpringBootRedis](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootRedis) : SpringBoot example with Redis -##### [4] [SpringBootActiveMQ](https://github.com/rahulvaish/ApacheActiveMQ) : SpringBoot example with ActiveMQ - Queues and Topics -##### [5] [SpringBootDocker](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootDocker) : Hello Spring Boot example for Docker -##### [6] [SpringBootSwagger*](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootSwagger) : SpringBoot example with Swagger UI. -##### [7] [SpringBootJPA & H2](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootJPA) : SpringBoot example with MySQL | H2. -##### [8] [SpringBoot Circuit Breaker](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootCircuitBreaker) : SpringBoot example with CB. -##### [9] [SpringBoot Consul - Centralised Config](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootConsul) : SpringBootConsul - Centralised Config. -##### [10] [SpringBoot Vault - Centralised Credentials](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootVault) : SpringBoot Vault - Centralised Credentials -##### [11] [SpringBoot Bean XML](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootBeanConfig) : SpringBoot With XML Bean Config and normal @Bean config -##### [12] [SpringBoot Multimodule](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootMultiModule) : SpringBoot Multi Module Project -##### [13] [SpringBoot Profiles and Environments](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootProfiles) : SpringBoot Profiles and Environments -##### [14] [SpringBoot Cache](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootCache) : SpringBoot Cache -##### [15] [SpringBoot API Key](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootAPIKey) : SpringBoot API Key -##### [16] [SpringBoot Header](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootHeader) : SpringBoot Header -##### [17] [SpringBoot Pagination](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootPagination) : SpringBoot Pagination -##### [18] [SpringBoot Feature Flag](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootFeatureFlag) : SpringBoot Feature Flag -##### [19] [SpringBoot Rate Limiter](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootRateLimiter): SpringBootRateLimiter -##### [20] [SpringBoot Retry](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootRetry): SpringBootRetry -##### [21] [SpringBoot Neo4j](https://github.com/rahulvaish/SpringBoot-Java/tree/SpringBootNeo4j): SpringBootNeo4j diff --git a/SpringBootGraphQL/.gitattributes b/SpringBootGraphQL/.gitattributes new file mode 100644 index 0000000..dfe0770 --- /dev/null +++ b/SpringBootGraphQL/.gitattributes @@ -0,0 +1,2 @@ +# Auto detect text files and perform LF normalization +* text=auto diff --git a/SpringBootGraphQL/.gitignore b/SpringBootGraphQL/.gitignore new file mode 100644 index 0000000..549e00a --- /dev/null +++ b/SpringBootGraphQL/.gitignore @@ -0,0 +1,33 @@ +HELP.md +target/ +!.mvn/wrapper/maven-wrapper.jar +!**/src/main/**/target/ +!**/src/test/**/target/ + +### STS ### +.apt_generated +.classpath +.factorypath +.project +.settings +.springBeans +.sts4-cache + +### IntelliJ IDEA ### +.idea +*.iws +*.iml +*.ipr + +### NetBeans ### +/nbproject/private/ +/nbbuild/ +/dist/ +/nbdist/ +/.nb-gradle/ +build/ +!**/src/main/**/build/ +!**/src/test/**/build/ + +### VS Code ### +.vscode/ diff --git a/SpringBootGraphQL/.mvn/wrapper/maven-wrapper.jar b/SpringBootGraphQL/.mvn/wrapper/maven-wrapper.jar new file mode 100644 index 0000000000000000000000000000000000000000..c1dd12f17644411d6e840bd5a10c6ecda0175f18 GIT binary patch literal 58727 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%0ANsA|A3-jj|r`KAo%oTajX3>^E` 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 YM{}PByk10KD_nuQ4E7Du?}+~TKh4V)`~Uy| literal 0 HcmV?d00001 diff --git a/SpringBootGraphQL/.mvn/wrapper/maven-wrapper.properties b/SpringBootGraphQL/.mvn/wrapper/maven-wrapper.properties new file mode 100644 index 0000000..b74bf7f --- /dev/null +++ b/SpringBootGraphQL/.mvn/wrapper/maven-wrapper.properties @@ -0,0 +1,2 @@ +distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip +wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar diff --git a/SpringBootGraphQL/mvnw b/SpringBootGraphQL/mvnw new file mode 100644 index 0000000..8a8fb22 --- /dev/null +++ b/SpringBootGraphQL/mvnw @@ -0,0 +1,316 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you 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. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Maven Start Up Batch script +# +# Required ENV vars: +# ------------------ +# JAVA_HOME - location of a JDK home dir +# +# Optional ENV vars +# ----------------- +# M2_HOME - location of maven2's installed home dir +# MAVEN_OPTS - parameters passed to the Java VM when running Maven +# e.g. to debug Maven itself, use +# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +# MAVEN_SKIP_RC - flag to disable loading of mavenrc files +# ---------------------------------------------------------------------------- + +if [ -z "$MAVEN_SKIP_RC" ] ; then + + if [ -f /usr/local/etc/mavenrc ] ; then + . /usr/local/etc/mavenrc + fi + + if [ -f /etc/mavenrc ] ; then + . /etc/mavenrc + fi + + if [ -f "$HOME/.mavenrc" ] ; then + . "$HOME/.mavenrc" + fi + +fi + +# OS specific support. $var _must_ be set to either true or false. +cygwin=false; +darwin=false; +mingw=false +case "`uname`" in + CYGWIN*) cygwin=true ;; + MINGW*) mingw=true;; + Darwin*) darwin=true + # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home + # See https://developer.apple.com/library/mac/qa/qa1170/_index.html + if [ -z "$JAVA_HOME" ]; then + if [ -x "/usr/libexec/java_home" ]; then + export JAVA_HOME="`/usr/libexec/java_home`" + else + export JAVA_HOME="/Library/Java/Home" + fi + fi + ;; +esac + +if [ -z "$JAVA_HOME" ] ; then + if [ -r /etc/gentoo-release ] ; then + JAVA_HOME=`java-config --jre-home` + fi +fi + +if [ -z "$M2_HOME" ] ; then + ## resolve links - $0 may be a link to maven's home + PRG="$0" + + # need this for relative symlinks + while [ -h "$PRG" ] ; do + ls=`ls -ld "$PRG"` + link=`expr "$ls" : '.*-> \(.*\)$'` + if expr "$link" : '/.*' > /dev/null; then + PRG="$link" + else + PRG="`dirname "$PRG"`/$link" + fi + done + + saveddir=`pwd` + + M2_HOME=`dirname "$PRG"`/.. + + # make it fully qualified + M2_HOME=`cd "$M2_HOME" && pwd` + + cd "$saveddir" + # echo Using m2 at $M2_HOME +fi + +# For Cygwin, ensure paths are in UNIX format before anything is touched +if $cygwin ; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --unix "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --unix "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --unix "$CLASSPATH"` +fi + +# For Mingw, ensure paths are in UNIX format before anything is touched +if $mingw ; then + [ -n "$M2_HOME" ] && + M2_HOME="`(cd "$M2_HOME"; pwd)`" + [ -n "$JAVA_HOME" ] && + JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" +fi + +if [ -z "$JAVA_HOME" ]; then + javaExecutable="`which javac`" + if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then + # readlink(1) is not available as standard on Solaris 10. + readLink=`which readlink` + if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then + if $darwin ; then + javaHome="`dirname \"$javaExecutable\"`" + javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" + else + javaExecutable="`readlink -f \"$javaExecutable\"`" + fi + javaHome="`dirname \"$javaExecutable\"`" + javaHome=`expr "$javaHome" : '\(.*\)/bin'` + JAVA_HOME="$javaHome" + export JAVA_HOME + fi + fi +fi + +if [ -z "$JAVACMD" ] ; then + 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 + else + JAVACMD="`\\unset -f command; \\command -v java`" + fi +fi + +if [ ! -x "$JAVACMD" ] ; then + echo "Error: JAVA_HOME is not defined correctly." >&2 + echo " We cannot execute $JAVACMD" >&2 + exit 1 +fi + +if [ -z "$JAVA_HOME" ] ; then + echo "Warning: JAVA_HOME environment variable is not set." +fi + +CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher + +# traverses directory structure from process work directory to filesystem root +# first directory with .mvn subdirectory is considered project base directory +find_maven_basedir() { + + if [ -z "$1" ] + then + echo "Path not specified to find_maven_basedir" + return 1 + fi + + basedir="$1" + wdir="$1" + while [ "$wdir" != '/' ] ; do + if [ -d "$wdir"/.mvn ] ; then + basedir=$wdir + break + fi + # workaround for JBEAP-8937 (on Solaris 10/Sparc) + if [ -d "${wdir}" ]; then + wdir=`cd "$wdir/.."; pwd` + fi + # end of workaround + done + echo "${basedir}" +} + +# concatenates all lines of a file +concat_lines() { + if [ -f "$1" ]; then + echo "$(tr -s '\n' ' ' < "$1")" + fi +} + +BASE_DIR=`find_maven_basedir "$(pwd)"` +if [ -z "$BASE_DIR" ]; then + exit 1; +fi + +########################################################################################## +# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +# This allows using the maven wrapper in projects that prohibit checking in binary data. +########################################################################################## +if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found .mvn/wrapper/maven-wrapper.jar" + fi +else + if [ "$MVNW_VERBOSE" = true ]; then + echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." + fi + if [ -n "$MVNW_REPOURL" ]; then + jarUrl="$MVNW_REPOURL/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + else + jarUrl="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + fi + while IFS="=" read key value; do + case "$key" in (wrapperUrl) jarUrl="$value"; break ;; + esac + done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" + if [ "$MVNW_VERBOSE" = true ]; then + echo "Downloading from: $jarUrl" + fi + wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" + if $cygwin; then + wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` + fi + + if command -v wget > /dev/null; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found wget ... using wget" + fi + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + wget "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + else + wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" || rm -f "$wrapperJarPath" + fi + elif command -v curl > /dev/null; then + if [ "$MVNW_VERBOSE" = true ]; then + echo "Found curl ... using curl" + fi + if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then + curl -o "$wrapperJarPath" "$jarUrl" -f + else + curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f + fi + + else + if [ "$MVNW_VERBOSE" = true ]; then + echo "Falling back to using Java to download" + fi + javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" + # For Cygwin, switch paths to Windows format before running javac + if $cygwin; then + javaClass=`cygpath --path --windows "$javaClass"` + fi + if [ -e "$javaClass" ]; then + if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then + if [ "$MVNW_VERBOSE" = true ]; then + echo " - Compiling MavenWrapperDownloader.java ..." + fi + # Compiling the Java class + ("$JAVA_HOME/bin/javac" "$javaClass") + fi + if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then + # Running the downloader + if [ "$MVNW_VERBOSE" = true ]; then + echo " - Running MavenWrapperDownloader.java ..." + fi + ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") + fi + fi + fi +fi +########################################################################################## +# End of extension +########################################################################################## + +export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} +if [ "$MVNW_VERBOSE" = true ]; then + echo $MAVEN_PROJECTBASEDIR +fi +MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" + +# For Cygwin, switch paths to Windows format before running java +if $cygwin; then + [ -n "$M2_HOME" ] && + M2_HOME=`cygpath --path --windows "$M2_HOME"` + [ -n "$JAVA_HOME" ] && + JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` + [ -n "$CLASSPATH" ] && + CLASSPATH=`cygpath --path --windows "$CLASSPATH"` + [ -n "$MAVEN_PROJECTBASEDIR" ] && + MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` +fi + +# Provide a "standardized" way to retrieve the CLI args that will +# work with both Windows and non-Windows executions. +MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" +export MAVEN_CMD_LINE_ARGS + +WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +exec "$JAVACMD" \ + $MAVEN_OPTS \ + $MAVEN_DEBUG_OPTS \ + -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ + "-Dmaven.home=${M2_HOME}" \ + "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ + ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/SpringBootGraphQL/mvnw.cmd b/SpringBootGraphQL/mvnw.cmd new file mode 100644 index 0000000..1d8ab01 --- /dev/null +++ b/SpringBootGraphQL/mvnw.cmd @@ -0,0 +1,188 @@ +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. 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, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Maven Start Up Batch script +@REM +@REM Required ENV vars: +@REM JAVA_HOME - location of a JDK home dir +@REM +@REM Optional ENV vars +@REM M2_HOME - location of maven2's installed home dir +@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands +@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending +@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven +@REM e.g. to debug Maven itself, use +@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 +@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files +@REM ---------------------------------------------------------------------------- + +@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' +@echo off +@REM set title of command window +title %0 +@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' +@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% + +@REM set %HOME% to equivalent of $HOME +if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") + +@REM Execute a user defined script before this one +if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre +@REM check for pre script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_pre.bat" call "%USERPROFILE%\mavenrc_pre.bat" %* +if exist "%USERPROFILE%\mavenrc_pre.cmd" call "%USERPROFILE%\mavenrc_pre.cmd" %* +:skipRcPre + +@setlocal + +set ERROR_CODE=0 + +@REM To isolate internal variables from possible post scripts, we use another setlocal +@setlocal + +@REM ==== START VALIDATION ==== +if not "%JAVA_HOME%" == "" goto OkJHome + +echo. +echo Error: JAVA_HOME not found in your environment. >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +:OkJHome +if exist "%JAVA_HOME%\bin\java.exe" goto init + +echo. +echo Error: JAVA_HOME is set to an invalid directory. >&2 +echo JAVA_HOME = "%JAVA_HOME%" >&2 +echo Please set the JAVA_HOME variable in your environment to match the >&2 +echo location of your Java installation. >&2 +echo. +goto error + +@REM ==== END VALIDATION ==== + +:init + +@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". +@REM Fallback to current working directory if not found. + +set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% +IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir + +set EXEC_DIR=%CD% +set WDIR=%EXEC_DIR% +:findBaseDir +IF EXIST "%WDIR%"\.mvn goto baseDirFound +cd .. +IF "%WDIR%"=="%CD%" goto baseDirNotFound +set WDIR=%CD% +goto findBaseDir + +:baseDirFound +set MAVEN_PROJECTBASEDIR=%WDIR% +cd "%EXEC_DIR%" +goto endDetectBaseDir + +:baseDirNotFound +set MAVEN_PROJECTBASEDIR=%EXEC_DIR% +cd "%EXEC_DIR%" + +:endDetectBaseDir + +IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig + +@setlocal EnableExtensions EnableDelayedExpansion +for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a +@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% + +:endReadAdditionalConfig + +SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" +set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" +set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain + +set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + +FOR /F "usebackq tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( + IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B +) + +@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central +@REM This allows using the maven wrapper in projects that prohibit checking in binary data. +if exist %WRAPPER_JAR% ( + if "%MVNW_VERBOSE%" == "true" ( + echo Found %WRAPPER_JAR% + ) +) else ( + if not "%MVNW_REPOURL%" == "" ( + SET DOWNLOAD_URL="%MVNW_REPOURL%/org/apache/maven/wrapper/maven-wrapper/3.1.0/maven-wrapper-3.1.0.jar" + ) + if "%MVNW_VERBOSE%" == "true" ( + echo Couldn't find %WRAPPER_JAR%, downloading it ... + echo Downloading from: %DOWNLOAD_URL% + ) + + powershell -Command "&{"^ + "$webclient = new-object System.Net.WebClient;"^ + "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ + "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ + "}"^ + "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ + "}" + if "%MVNW_VERBOSE%" == "true" ( + echo Finished downloading %WRAPPER_JAR% + ) +) +@REM End of extension + +@REM Provide a "standardized" way to retrieve the CLI args that will +@REM work with both Windows and non-Windows executions. +set MAVEN_CMD_LINE_ARGS=%* + +%MAVEN_JAVA_EXE% ^ + %JVM_CONFIG_MAVEN_PROPS% ^ + %MAVEN_OPTS% ^ + %MAVEN_DEBUG_OPTS% ^ + -classpath %WRAPPER_JAR% ^ + "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^ + %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* +if ERRORLEVEL 1 goto error +goto end + +:error +set ERROR_CODE=1 + +:end +@endlocal & set ERROR_CODE=%ERROR_CODE% + +if not "%MAVEN_SKIP_RC%"=="" goto skipRcPost +@REM check for post script, once with legacy .bat ending and once with .cmd ending +if exist "%USERPROFILE%\mavenrc_post.bat" call "%USERPROFILE%\mavenrc_post.bat" +if exist "%USERPROFILE%\mavenrc_post.cmd" call "%USERPROFILE%\mavenrc_post.cmd" +:skipRcPost + +@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' +if "%MAVEN_BATCH_PAUSE%"=="on" pause + +if "%MAVEN_TERMINATE_CMD%"=="on" exit %ERROR_CODE% + +cmd /C exit /B %ERROR_CODE% diff --git a/SpringBootGraphQL/paint.pdf b/SpringBootGraphQL/paint.pdf new file mode 100644 index 0000000000000000000000000000000000000000..43bd5dc9910c7d93824aeb687f2b4de24f46c4e8 GIT binary patch literal 994398 zcmeFa2UJtvp7?txf>Nb-f)qij^iDvei8PVk6hs81Nw1+ul_DUZC|!D!BE3kFBGOCf zT{=RjA%x`Rcki3>yLV>In>Xve|C^b>+AAx`IcJ~mKA&^)ZTq{qbnmMQ2n$LQ5s9(g zWplB1Ad-_K61r#a;jU}@O4-H9)y3J?*@I1rNJ!b`rOPXQ*QYkNY(n>Kz3gplAF16V z5>mB)>0$c{^O5r7`?fYN&uoc=)NSqUUU;xcNZrNk_R!YZ&f^7}w6v&*v>>VejDX;pye=a?d$(BHa;;q1)ZLmU0GdQ z|FyBXwY>v7IzBl)JBME&{*Vg?!27FM|18>?r8sqZD`RCV0o5Pft=WBqEBh?Y}qg$wqFXn&FH|CwN+|F0zbXTknO zu33Nt4+nGc@F)NB$gtFd$UQ~u$>3araC-A zsc?Z$HeSNe#rmRSa<+fz=$|^ozGBA&%K(-EECW~uunb@s_$vbyRK1xpGW>A`_8(0z zK`ki}_ocUl7n%{|e)}%Yv|~N1+iiQowULJmmB5(OFBm9hIp)`Z{Q70SGknPGWKbx^ zJa5K)a{NSy2HwY1%$>Mw(+z#}_B9%)mR{QuHUh1jzwyY~oE~QC18ZlYZ^|st4-8pNFxuG0a;aAI#%VjH20wH zLd6njHkn2Qshp$k<(mz!$frAMJ4T2i_t2WVn<&h?hL-qc3J!!bPLk* z%Xf1r#Nzu|bBVnbnUgqMgxOiVxQ$4XlCy|f<*ArQgJ;$BsHMy;cygIgCX=ob8nB?9 zJNYpwh16MHBHn@6O>k$-xDH>N^9@OxX#_`!`93f9S(&0@_+?>6=RJ?3+ z^d9^MvG=&n3aY=jRY^8+(BiVP+fXp!;*#wvt#$01nAODvAv!?=_&(7sYPrPGDUUX8 zA8inie0oN4iUt@R4cz3(Vq%utZo$U_X;sF>dJLLv$vHpc{R$faeEQG#PuG&hmsauX zmgXdC94Nnue5-9viL8Bgq!60qJ>g`0R+3i%=_A%f1C{pR6DmusV&ns;vr1KU%F7v> z?jKd9gaMhV%j)#KAk$Og51E@C)x&pwCK=ON6G#iMkENe8U2pg0=tD7}fxZJ<)Ls?> zr_#NW1a5~0I9k&#t07witwXi`?6iA4Wmz=lR;E4*o z9`~45lvXNal`PztGLDYAaAAqZPI)jnU6|Xr{mw{oZNWK^u*=2$#fsqPM4RZC zuuxxa!uVjQ_~C93V?|}T=2OhhUH2_HewDmcVgT{5)LiI(^&-UVESAvFGk2GXkm0n# zW|gefJ^KZ*_`6Wq;(Urc8q(S)Nv=Noh)GaH(@;(M%;JJW+C87qDXDg^(y-X9Cc>ip zR%FPwO~hy|h+1uR&i+|-TfA)psX!N>Q%{h!`Jt-lQu>*^jjjcsM$-hNDEnNG)f1_O z_?b$9QKZ`{Ul#40sa8O_6W2&w-jOb8epT!mxZDA$)dpiWqBNc9l^$cA_WhZ?f&`m8msspo|{yGGJxoqWv_2*@-QQ(8*(2tF_i9%qdNJ} zKpx)~%mTJHBwzmW@#J^PiP><%lkbemwP(&w|o2;0_7;*ggpUE&>TmTvz~ z6Dp{E8m@zy8JfW#;^H0f_z8`-Q&WFUJ#HWyQVcn@lbW^5VjYo;P-OruYT4gW%!r#f*PKR(t)u8sx zxTR2Rj_f*gK84>2WXZ|9*y&fT6zkp7G3yNk7tf%;}UVAZkNvTK@3~$01uxprDQ!-HS?=YIt1P zoTI2hj{D{;_j`O?PV-E!*pSSI1B2Qt$M1;Lul7YBJgFQ7e%v`q>84)@Z2$>8CWvY_T}2I)~IWf zPU}Z?l@%k(6u;dcAk4j{daFh)Ee_9nX2XX{Srbc!oGG8&7inKK#FOG~P(VWM)`Td? zNw*62Z79vv7tMJVByEb%=nGDaC?}^Eb6Xybt@XCuCik^<_k$JBy?=i5b|CO03^Ad# zCd6oJ0kLa68E}pJb)n@Pd$A{No{ZeWo98JLA~4@M4+6zFIdN)s?va0>Oa1QNV}u7v zaUOT*)ZYArG@ks*qM#+g$27BV&>g$@Fr1j8o`GZ6ye-9XZP2>U(*C?Dc7&FfY5&rf z#Yd3T35j`FCzSJD^@G!=D!ZI)9#kKuD|;8u%>B6SUTreT#Bg%EfU)q(lh;(tZPcgc zdmGb4+}G3Yq0z)P;`S_8G~i#kO6pG*UHrXl>ufd_DAE2{mz+_U0}3H%iCopLv@3_l zP!xP=xY^Av!Yw=JCdJz7INm~4F#H+*=*QUhgCQJmeI!@3)RjZ-0aLYQ(g2}*j0I>f$GBjQO4<= z?VNpTqeLI0Rn~m_qF%f5A9i)mr=NM^s_Q&Vp7-0#`ej)j=zA?Z7MdnheO}FT&-u36GmHnrbR#C!c@l|0myX{zFG)sV0%nA=5yZVkmg-)1nbepYgzReZs#Xl zQ!DagoiRrPv2xmNbYCLYXPNT&KjL0|6z*~V#5jCN7i-q-+VAL7ly)e%Y81kLGEZnN zd!;twiw5E=Th!cq#TaYd%VWKT&H~R?=!)@3Lz)xZ9~haE$?W*0y_S0*r&BQCB|usg zug{<(8stML{q3}T=g@_8$CAIgCRH9+wxC|b7Wq+$XCY+CzL$QrwNxqf$cgNSg^Gy_ zD~(8mMWL5;-(FzJ>`t@_f+zR$Qx$4m9Bjjm0hR$Q16T&I3}6}fAHx8FOVnuo;bK8_ z#-Jk`JsR+UzCkK{cnYga9~^1sUVR*b++BStIT@a`1SODf%mF4LR(}dvh4ZYe(Zf_xIyIV9u^Eq@g)1VfOj}FN@Wj?*T=I7tF95vg=$^~9l zE;oL#JH8&?72K@8BXyu`I8D`Pv%FR{ek#WQpe#yp7>{kE(JC4Z9LX#|pi*eygu+6t zqaA)U3Euq->4OTvz$i7dO2j4z6?$g^o_0F&_zVKopA29sG_%JjVDXE0+g@t&$HiN` z$JIas^1O?UWhPsuj!Rb3#?asrk)hsfyr~3oNMCaS8i1BT5Z5a}YiwzIre-7;>}sUj z&3K@K9Z!~zH1dylERn`-cHpPu0;`sb{-Vhj){P)apP1wBv_uQb@A$9OK&f&mY!pep z{R&?fkRlT;vNpN>XKy~5StzOp^k#&L3caM7@FzR{iByHY{JP*J`Q>>MJ^K-|^Dgsx zrhH>@QjPlO-ye2ZaXI095BrCI52Ic?_LMEhZ1&up`x&yD3g;;PP4b?-HTfI(h|50f z^d}nFQf<+znCBq9J_abA2)5q!Ki~{INSzK;_2qqWK4A z&)LtvUHYC!p#ci&*>$@jq`vf_i9(Iql_TErgx-f!lbAb+hT?|3Y%DVj=iiW}+3+Ia zB=GhbTE) zV7OxZ8pIFj%WXeB%Icfa>8L!Fsk|IT1A7z7`w)vzh#lg$o25`n1=7Bl&StPbf%^-g z%SomG*HBqUAEeC)c3?}(uRhNXafLp!RRQ__BLCWQA?K(YrxjbQeM zGREHQt4ffdby+09drMcmIfjvq6u(V$K;f2Im*bk&Jt+=~9Nu-Z54QMO-N}|MkaZO_ z(BO?4ucU-YR9-b#S~%Pjx?{`X;7tVJDZpv=3sLv2E+ZlPG8x6--3B!9YZcYZs&hDu zQu7x&e})D|Nc}T>?7F}gEPL$>$!I`P{I_S`%*}e6XDX=@aT6kUdB2?#v=GdI4U5num zkAuD8>(kv`K_p=*@2<~s4j3Fx31|%{gu6(JSz9(Ekgiw)|!)w=Pt*-BsgmLc; zL2jk%z^$Ox?Z0;A23CZSaY+zpDF%B@%Rx)fA@ou0c)%mh)(o~7byH!^xNyR-{{6Am z^xj8R6Nai)%@MzBoXSR}o{))71UfACg*VI5cJge%@>?F|wzve9{ODo}<7R`7Jj2ab z$G4%c%sOemU@Zslv9}{c+Ct=c=?>FQr;7t#UR-uPQCV}6*AK2QAsqJ%#Ipj!At<#s zAOy?T%tyF=fiPD0Txa;*G?wAz@}?Qt=Y*qe|la zFR~~+bSzpMD^o?Hcm-7GtkEIEF-}&*@)CmPMSuj%E5qfpU_y}&OWrr*Ue36$ zEE>a{hh!T0Ix7&UZssmx%Mjl0!Z@5iA9C4i!ofX(`x&yOTGvMTbIeEku}!y;VChL` z)`pfF8lVbLb}V*F}=5{sa zyMNmF;C>2qA5#DAh->03XS0?dGdte{6}>YnJ^d!6A?t~#QEi4<2ZzSj`pFa7wB{%p z-=|XKL$B05xsO(x$;sf&9hf+TKYdR|OGuNtTk}pAxVZGvh+}X1_ts}alAL#;*ZVkH z1=NT6;g~T6nHpUtLBz}2iIAB4_w^f93$;uAy}69!fg{P2^Lak~H6di6z143G{X?g2y0?pTaqpvkKm8$6 zCqpsEAwTSQ0*(yg&axWYh&hR9{>mmAk|3<@8q~rJ<$^Kw$apo{5o8q5rHUmF`hIv2 zs>lYA%MUxu!qxJ1oC+2lL^;?kXpBQZzD8il4aftxX6^MKv&P5!Vh~54o~3;&sm4|U zMc*MSPNR_wzRkgV3`oh<^92TSd(RCvIcMD&t8cMJHD>VMu9|6q&9kqy4n}Tq>$pn$ z^%X&(uc7SBZ4$m}-ESU$h2?L21K#mBu;!~m%%N6mvfBxrgW_)}p?tV~fk9eJgDS2~ zr|X$_U;$$@JwKgoDLPyG=yd~|p0~>OnsR`HgL)kbl&!0(gQaf~kZ)-e&t?tMvS#Ylzet@8(~gHM*gxu1JMGHj=R$1nuC?++AX_D!Y)EA^$!QS4bugS-CP2B zVixxw-!RMlG9It$bMOYVyhi?kl03*2c4v;%{omiy9;lSaXo`-o`e^;uQd>E&h;oQvm8 z;8@|Rk(Zc&irFX7cOAH%{)!b;H{t-XCA*Ay(7%CZot{8WXetmby(^aW1;+N0b@lZl zrv00~VMA|kFFz&|h35NdeeIU?8l9i(t5#-@P_ul^SnT{z<3(;vQfLfMHZHbd#{kO! zmH{jSSO%~R{Lf*acqiQ;zVd~WC-JjPjy}=}kgi|YN$ERX!i+^E_m`x5Q>LHJb|4Yz z-S3ex;{rjHvwRx|M(GA8F}E0y{SGI7Ja|G%BVq^Sv*K-86pHI~UQRzZ3oz~-GCn@b zL)PR<2d5$nEpO(ZIqK09cY0YSp!zE07E1P2H2E!Fsc&b$X9-eMRA_4h-%1c|DRyPs zN5)Gk8~2c>9s1K@)04A2e!q#e5+oq6Q#aN;{JKjCg4Ps?ZLao05Qg)ZPCRbZPV>Jr zzsGLfV?5*Cr{4QhT^cED;YsaF_(4ZwJbO&6PwdiqgPzVIP1(m2bq=QjCK@lW6>cRDF z<;OK_iZ$%1+<(bgK39lzUE59HmJ?nf743TZxqeA}Jg!_W!)=T3sl_#F0i2!Zy9lm| z_5$(nwI7MJA#!%~-&hOkd2(JbeaK`R*_Tr) z_{h|gVzbCB_7D$OAsaCXA@#BB>JlDG7180&RI(Ap^%)WlmUncHp$$G24$xeQlkH9& zU|Fr!1R)ypR?_C?{f)Tn57WnFgQ0%4HTTHp<8Lv5<8_WI)pEnL<#q63zf$TlRtHKo zr3~pgj5~8rKGkl(uiK4z< zTbfBs`Z-O)st)P2Ptp{h{~E8aRwL_eoXDbeikRu#VCgJ!ACSi3S+dNr=#Y)lqmbU6xsBAE2@#Ee(iwJ3Z8m2w)$gr7JOSIwuYAFI5F4}(wY8n z78L2^vAwRr^~P)C;eNlh&+t?M--7o6$|iZzc*DabeAX%D$1ud}{8HNxEHt2uI_&2@ zrdbRI01})Yp4^fv{8yMe>BLOlT3-83B}vu5Mv2&)8tLJ4_k^CN9iDuQ)SL3FR)qF# zT#XT{XJ+r$qb10>CZ5^Jtus!Ji46pTG{bbh3O;@PRP$5SrX0%iRSa!9-o&~9iseNe zqSL`qd^_d#aj4jvdN22@`89=8=%@+{Ka2Cf^eX)~y*3WNNuT^N-;vw>U0_yNtN|sO z9CAWGj0Q?tRU6ysd}M~ZcbOCT%q;Fpl>KO~ZhP$wiu!z}Zoe}VwnBalZlibjt9$}R zJP=Li5r5ludTF6EG1ec-0>gVS>Jewj7szVS1!0-`Hkxli0|W7 zUY_98anp2gXG;9DG^2JCJ)OJXJ`*6SHcycDtrp$2hBA=II9WKKjwAy=P3UIDLa)oV z1((R*r#5nXyKy~x>hrNP-8(wGeJ;~ymSq2hFxgf!V$LvfRQ1ccU-~l+n*953>B3Hpg_Ldwfl8M#Y zVZ?H3WQ2tc2qp{yU~YQ~Tu0s%{Q$ z7+2}&R?Z9ZM-?9mX0|0X>}+tma6R$e z+8jD=GibHKdHa>VsT-}2zB94SZZpCt+dfs;KHaG`mVc0$B5I=k5n;J$?wjo=yRO)@ zTx@DKmH{jSSO%~RU>U$NfMo#70G0tP16T&I3}6|+GJs_O%K(-EECW~uunb@sz%qbk z0LuWD0W1Sp2CxiZ8Nf1tWdO?nmH{jSSO%~RU>U$NfMo#70G0tP16T&I3}6|+GJs_O z%fNpJ2Fe69dlW!pmFrb)6LO_dRjqO#m>7Wgdx;}43zf96@Xy|u$}N^Z9u2U3|K9S@ zsE8zrO#UL9{2m$z4_nbe5MipHw6r6&K!;xf?w|oBD`Z+4rrbqYJKVsO9C@_^K8Jzf zG2j)07vSUbA~dknjRsbE@bpo%kUxGIAW88 z5LdM*J!q9tJUkMm$!T?ZX^+gyCb#|vsE~M~|Gt*O*9-$AW18Bpe6=thXT}u;639vP*lUhu0LuWD0W1Sp2L7G_*wRf*9QxTCRJ#-So#&pxTH7s5 zq`RN)DrgqMvxPVPkMMc?{P%Q}-$)%az+O>_1}yb4Ygjkvgn^DRYh2fXE*}NU%lrde zLAcms{?94=jlGuGYl&q5%K(;v|DQ8(1EACf%Ahc^h*-VT40&T$rA9@yT}8&nMv{^V zasv3}Ognuhe($2^gPy93s~)eqMC{M=Yk7K*!<5MYG|={AgwR&SHS6%J2k7Et0&*}5 zfq6hWCr2Qg<9cYI9kWE*_Yp$x|MV7~IfUIV!~-|I+mZ;t9h_w9n68vS<$$M$5he`u zr<}b%C*&!z$kY7%Q(j=gpHu!u2z6B4|0eG+?{D%7amGi@=N04+YsapS8!GB}$Ebil z=<=zdDCG%JVSe7IYuxY=f()7uXy67braZb*D`uTK++^en%<5F z6#t=exKOFT@3;8XTOxPIccz1)3OxQ7N(#`4oV)3W(If#O+S7TPhw5rScAp@N8{sVM&QMrFt%WQ7{_d?PnI;L5}vGv*&3VaHxK>=E;V{~uG??^MgEhOc|x*Gu~8dJT|?>1%-LMDDNJb54~- zS?1g}a_N8N$iBO(7Qyx=z)0V`{+vBL1P$~C|DhI67!d^BHnRW;X^e^!&$Ktzl3x*e zA7#To_V^{v6u^yVS;H&(*XEt)u3q4^h*OyjKa<9H?6Ih$_pV zV-u*$!E@B%6O5V}=$uVf^9U+den+Eif-N{<#cm*oNE)1CJpiNX9PKgjBzT*!V$9i( z{6@VXy8?~aGnO?Q@aoEG2uSFA0_rxL4+4#{yTZ24uCL_@RO5ml0KXtBPZt&_5jx>t ziRavU(?!54hM@9Wu!I;vh^O81!25i8##fgR1FKDoWdH!au>iTjQabzKXzqkPQYrrf zOYo5Zo;Ey%=a{U%u&X(XKR2UoX=nIYd|_0Pnf@^0jgUr~E-ZFL^J-3a4ty`{1T%f* zXId;l&8o#cl<>KcRPWV^Y4Z;ryzsx9=u%FPVu2fQ7&u9PW_vX#_W_)YW1&Tjli;#q zMQ+x~u0`8dbim2GdHgcH-LBAhnt;~O@T{XL%KGu}I`1Ggpr`WJW*9I_8|TKSsgP*H zAJ^|)ugVQ$ujR=m8HTHgfe^U%OK_sB6*VMBI{6ij*a7mI&SAL>51uHBVvrCOobHXn zEret2hU*&`wOUaNqgLbSBl)yrfS(xE+WimJ`Zh+j4lYJfLpr4~Q+r0Jw9&w~$7q0P zJU3W``>;N;g8fC7N)?gc`<2Jw^k5Y`G|<_GnInYTeq?Qh;%&mLDEA&CdLU*F(ly9> zcRSJmbXeJfnS!KPiF}Wlf)rDc83U}^!7Wy{p9v;eegii$mndRvk9S#9xqmlg6~AME zmA{>&^k3L&dAN)Cx4gHC~X5DMX918|t#Nx3701#Y>a z7+tDb2HDJ&As-B;8POuq@3Bc2OC&e�Pzw(i(n^l=WoL5Ocgs?z2jfHR$>R_g6(t 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≈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 z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs# zzyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d| z0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdb zFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?0 z00Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u<3^2d|0}L?000Rs#zyJdbFu(u< z3^2d|0}L?000Rs#zyJdbFz|0Pa9P2p;Yt0wr=_PRCH5BrF&9%iWR+NV8NxCZQ_fcIG%U==Mi%*?@;23IfAmEA3s@tV3>#>F+l9I^o33oPLjO3>){rjKkTj zeo~=D-BYU`T6*7-`ipzLI;LTtN>OotUxwP}m7!zH2YV-VOAi&6C!t?r&!p&3t>Ec4 zg~12ke<^j%^Kvv!>7Sm|KRqqfB~(}$Z9?~jM>bAP8E{w1!@;Jg>QU!@>eQ_fJgOaC z_&Z3@JgIwf;{TYURbpze*HDdfFCN(@DJ^ACYPY1cP+_ob!Xw+Hqz9E8iVBZx_sD>x zP-Lqh)bj!?%=Z0ZX`C`B*im$NVb-4>*4p3?mvC25tK(tS|3z*wc`$=y;@(o%Y)*9)~uO%BS}E+y0| zzG<+VcFE~|gV$-_KfUll_sZu*`fzGekMO8a?3LkBf4zlj$Hdf(3HA7HTiv=fgRjuJ zXG8t}x-B*~IEsb0^S0HAz9`+f1Q%@!_E)P;P~jKltzG-?)76cQ{ad>9)WqbzNvY@F zRtf!kq=X79`P^Yo2@d6VkJ}~>Neaal7B4M5F*W^M;p*0{6&+JIykf;BEt`h_8Cyj5 AQvd(} literal 0 HcmV?d00001 diff --git a/SpringBootGraphQL/pom.xml b/SpringBootGraphQL/pom.xml new file mode 100644 index 0000000..a31d58f --- /dev/null +++ b/SpringBootGraphQL/pom.xml @@ -0,0 +1,78 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 2.7.2 + + + com.graphql.learn + SpringBootGraphQL + 0.0.1-SNAPSHOT + SpringBootGraphQL + This project is for implementing grqphql in spring boot + + 16 + 16 + 16 + + + + + org.springframework.boot + spring-boot-starter-graphql + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-data-jpa + + + + com.h2database + h2 + runtime + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + + org.springframework.graphql + spring-graphql-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + + + + diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/GraphqlProjectApplication.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/GraphqlProjectApplication.java new file mode 100644 index 0000000..a3f468c --- /dev/null +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/GraphqlProjectApplication.java @@ -0,0 +1,20 @@ +package com.graphql.learn; + +import com.graphql.learn.entities.Book; +import com.graphql.learn.services.BookService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.boot.CommandLineRunner; +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class GraphqlProjectApplication { + + @Autowired + private BookService bookService; + + public static void main(String[] args) { + SpringApplication.run(GraphqlProjectApplication.class, args); + } + +} diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/controllers/BookController.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/controllers/BookController.java new file mode 100644 index 0000000..55c05f0 --- /dev/null +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/controllers/BookController.java @@ -0,0 +1,41 @@ +package com.graphql.learn.controllers; + +import com.graphql.learn.entities.Book; +import com.graphql.learn.model.BookInput; +import com.graphql.learn.services.BookService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.graphql.data.method.annotation.Argument; +import org.springframework.graphql.data.method.annotation.MutationMapping; +import org.springframework.graphql.data.method.annotation.QueryMapping; +import org.springframework.stereotype.Controller; + +import java.util.List; + +@Controller +public class BookController { + + @Autowired + private BookService bookService; + + @MutationMapping("createBook") + public Book create(@Argument BookInput book) { + Book b=new Book(); + b.setTitle(book.getTitle()); + b.setDesc(book.getDesc()); + b.setPrice(book.getPrice()); + b.setAuthor(book.getAuthor()); + b.setPages(book.getPages()); + return this.bookService.create(b); + } + + @QueryMapping("allBooks") + public List getAll() { + return this.bookService.getAll(); + } + + @QueryMapping("getBook") + public Book get(@Argument int bookId) { + return this.bookService.get(bookId); + } +} + diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/entities/Book.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/entities/Book.java new file mode 100644 index 0000000..7898743 --- /dev/null +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/entities/Book.java @@ -0,0 +1,25 @@ +package com.graphql.learn.entities; + +import lombok.*; + +import javax.persistence.*; + +@Entity +@Table(name = "project_books") +@Data +@ToString +@AllArgsConstructor +@NoArgsConstructor +public class Book { + + @Id + @GeneratedValue(strategy = GenerationType.IDENTITY) + private int id; + private String title; + private String desc; + private String author; + private double price; + private int pages; + + +} diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/model/BookInput.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/model/BookInput.java new file mode 100644 index 0000000..0c54d58 --- /dev/null +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/model/BookInput.java @@ -0,0 +1,14 @@ +package com.graphql.learn.model; + +import lombok.*; + +@Data +@NoArgsConstructor +@AllArgsConstructor +public class BookInput { + private String title; + private String desc; + private String author; + private double price; + private int pages; +} diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/repositories/BookRepo.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/repositories/BookRepo.java new file mode 100644 index 0000000..530e46f --- /dev/null +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/repositories/BookRepo.java @@ -0,0 +1,7 @@ +package com.graphql.learn.repositories; + +import com.graphql.learn.entities.Book; +import org.springframework.data.jpa.repository.JpaRepository; + +public interface BookRepo extends JpaRepository { +} diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/services/BookService.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/services/BookService.java new file mode 100644 index 0000000..a97feec --- /dev/null +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/services/BookService.java @@ -0,0 +1,18 @@ +package com.graphql.learn.services; + +import com.graphql.learn.entities.Book; + +import java.util.List; + +public interface BookService { + + //create + Book create(Book book); + + //get all + List getAll(); + + //get single book + Book get(int bookId); + +} diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/services/impl/BookServiceImpl.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/services/impl/BookServiceImpl.java new file mode 100644 index 0000000..18f50b1 --- /dev/null +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/services/impl/BookServiceImpl.java @@ -0,0 +1,66 @@ +package com.graphql.learn.services.impl; + +import com.graphql.learn.entities.Book; +import com.graphql.learn.repositories.BookRepo; +import com.graphql.learn.services.BookService; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.PostConstruct; +import java.util.List; + +@Service +public class BookServiceImpl implements BookService { + + + private BookRepo bookRepo; + + @Autowired + public BookServiceImpl(BookRepo bookRepo) { + this.bookRepo = bookRepo; + } + + @Override + public Book create(Book book) { + return this.bookRepo.save(book); + } + + @Override + public List getAll() { + return this.bookRepo.findAll(); + } + + @Override + public Book get(int bookId) { + return this.bookRepo.findById(bookId).orElseThrow(() -> new RuntimeException("Book you are looking for not found on server !!")); + } + + + @PostConstruct + public void init() { + Book b1 = new Book(); + b1.setTitle("Complete Reference"); + b1.setDesc("For learning java"); + b1.setPages(2000); + b1.setPrice(5000); + b1.setAuthor("XYZ"); + + Book b2 = new Book(); + b2.setTitle("Think Java"); + b2.setDesc("For learning java"); + b2.setPages(3000); + b2.setPrice(5000); + b2.setAuthor("ABC"); + + Book b3 = new Book(); + b3.setTitle("Head first to java"); + b3.setDesc("For starting java concepts"); + b3.setPages(1000); + b3.setPrice(2000); + b3.setAuthor("PQR"); + + create(b1); + create(b2); + create(b3); + } +} diff --git a/SpringBootGraphQL/src/main/resources/application.properties b/SpringBootGraphQL/src/main/resources/application.properties new file mode 100644 index 0000000..47d0c78 --- /dev/null +++ b/SpringBootGraphQL/src/main/resources/application.properties @@ -0,0 +1,10 @@ +server.port=8009 +spring.h2.console.enabled=true +spring.datasource.url=jdbc:h2:mem:testdb +spring.datasource.driver-class-name=org.h2.Driver +spring.datasource.username=sa +spring.datasource.password=admin +spring.jpa.database-platform=org.hibernate.dialect.H2Dialect +spring.jpa.hibernate.ddl-auto=update +spring.jpa.show-sql=true + diff --git a/SpringBootGraphQL/src/main/resources/graphql/schema.graphqls b/SpringBootGraphQL/src/main/resources/graphql/schema.graphqls new file mode 100644 index 0000000..cb65aa2 --- /dev/null +++ b/SpringBootGraphQL/src/main/resources/graphql/schema.graphqls @@ -0,0 +1,30 @@ +type Mutation{ +createBook(book:BookInput):Book +} + +type Query{ + +allBooks:[Book] +getBook(bookId:Int):Book + +} + +type Book{ + + id:ID! + title:String + desc:String + author:String + price:Float + pages:Int + + +} + +input BookInput{ + title:String + desc:String + author:String + price:Float + pages:Int +} \ No newline at end of file diff --git a/SpringBootGraphQL/src/test/java/com/graphql/learn/GraphqlProjectApplicationTests.java b/SpringBootGraphQL/src/test/java/com/graphql/learn/GraphqlProjectApplicationTests.java new file mode 100644 index 0000000..efdd85b --- /dev/null +++ b/SpringBootGraphQL/src/test/java/com/graphql/learn/GraphqlProjectApplicationTests.java @@ -0,0 +1,13 @@ +package com.graphql.learn; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class GraphqlProjectApplicationTests { + + @Test + void contextLoads() { + } + +} From 0134a931b1d6df3257e86b7c24b27a8060027f99 Mon Sep 17 00:00:00 2001 From: Rahul Vaish Date: Fri, 22 Mar 2024 04:23:05 -0400 Subject: [PATCH 2/5] Create README.md --- README.md | 11 +++++++++++ 1 file changed, 11 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..5d264cc --- /dev/null +++ b/README.md @@ -0,0 +1,11 @@ +Launch GraphQL Request on Postman: +image + +Enter the URL with /grpahql +image +Now try two things: +First: +image +Second: +image +Basis on what you select, the response is delivered. From 87671e62b43431434ac94d69c0c902d470b511dd Mon Sep 17 00:00:00 2001 From: Rahul Vaish Date: Fri, 22 Mar 2024 04:28:16 -0400 Subject: [PATCH 3/5] Update README.md --- README.md | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 5d264cc..6ba3df8 100644 --- a/README.md +++ b/README.md @@ -3,9 +3,10 @@ Launch GraphQL Request on Postman: Enter the URL with /grpahql image -Now try two things: -First: +Now try two things, to understand how GraphQL solves the problem of Over Fetching and under fetching:
+#### First: image -Second: + +#### Second: image Basis on what you select, the response is delivered. From adffcdb0287bcb838915faf1c11d539a5909d434 Mon Sep 17 00:00:00 2001 From: rahulvaish Date: Fri, 22 Mar 2024 04:39:03 -0400 Subject: [PATCH 4/5] graphql --- SpringBootGraphQL/pom.xml | 6 ++---- .../src/main/java/com/graphql/learn/entities/Book.java | 2 +- .../com/graphql/learn/services/impl/BookServiceImpl.java | 3 ++- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/SpringBootGraphQL/pom.xml b/SpringBootGraphQL/pom.xml index a31d58f..d68d23d 100644 --- a/SpringBootGraphQL/pom.xml +++ b/SpringBootGraphQL/pom.xml @@ -5,7 +5,7 @@ org.springframework.boot spring-boot-starter-parent - 2.7.2 + 3.2.4 com.graphql.learn @@ -14,9 +14,7 @@ SpringBootGraphQL This project is for implementing grqphql in spring boot - 16 - 16 - 16 + 17 diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/entities/Book.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/entities/Book.java index 7898743..cc57a6e 100644 --- a/SpringBootGraphQL/src/main/java/com/graphql/learn/entities/Book.java +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/entities/Book.java @@ -1,8 +1,8 @@ package com.graphql.learn.entities; +import jakarta.persistence.*; import lombok.*; -import javax.persistence.*; @Entity @Table(name = "project_books") diff --git a/SpringBootGraphQL/src/main/java/com/graphql/learn/services/impl/BookServiceImpl.java b/SpringBootGraphQL/src/main/java/com/graphql/learn/services/impl/BookServiceImpl.java index 18f50b1..4b81d77 100644 --- a/SpringBootGraphQL/src/main/java/com/graphql/learn/services/impl/BookServiceImpl.java +++ b/SpringBootGraphQL/src/main/java/com/graphql/learn/services/impl/BookServiceImpl.java @@ -3,10 +3,11 @@ import com.graphql.learn.entities.Book; import com.graphql.learn.repositories.BookRepo; import com.graphql.learn.services.BookService; +import jakarta.annotation.PostConstruct; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import javax.annotation.PostConstruct; + import java.util.List; @Service From b97af07d6936c0a8c989a6b13ac29a4346ab6c6e Mon Sep 17 00:00:00 2001 From: rahulvaish Date: Tue, 28 May 2024 07:12:22 -0400 Subject: [PATCH 5/5] app.prop --- SpringBootGraphQL/src/main/resources/application.properties | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/SpringBootGraphQL/src/main/resources/application.properties b/SpringBootGraphQL/src/main/resources/application.properties index 47d0c78..a1e74ce 100644 --- a/SpringBootGraphQL/src/main/resources/application.properties +++ b/SpringBootGraphQL/src/main/resources/application.properties @@ -8,3 +8,7 @@ spring.jpa.database-platform=org.hibernate.dialect.H2Dialect spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true +#If you want to change the default /graphql path +#spring.graphql.path=/app + +