├── .idea
├── .gitignore
├── compiler.xml
├── dataSources.xml
├── encodings.xml
├── inspectionProfiles
│ └── Project_Default.xml
├── jarRepositories.xml
├── libraries
│ ├── Maven__antlr_antlr_2_7_7.xml
│ ├── Maven__ch_qos_logback_logback_classic_1_2_6.xml
│ ├── Maven__ch_qos_logback_logback_core_1_2_6.xml
│ ├── Maven__classworlds_classworlds_1_1_alpha_2.xml
│ ├── Maven__com_fasterxml_classmate_1_5_1.xml
│ ├── Maven__com_fasterxml_jackson_core_jackson_annotations_2_12_5.xml
│ ├── Maven__com_fasterxml_jackson_core_jackson_core_2_12_5.xml
│ ├── Maven__com_fasterxml_jackson_core_jackson_databind_2_12_5.xml
│ ├── Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_12_5.xml
│ ├── Maven__com_fasterxml_jackson_datatype_jackson_datatype_jsr310_2_12_5.xml
│ ├── Maven__com_fasterxml_jackson_module_jackson_module_parameter_names_2_12_5.xml
│ ├── Maven__com_google_code_findbugs_annotations_2_0_1.xml
│ ├── Maven__com_google_code_findbugs_jsr305_1_3_9.xml
│ ├── Maven__com_google_code_gson_gson_2_8_8.xml
│ ├── Maven__com_google_guava_guava_20_0.xml
│ ├── Maven__com_h2database_h2_1_4_200.xml
│ ├── Maven__com_infradna_tool_bridge_method_annotation_1_13.xml
│ ├── Maven__com_jayway_jsonpath_json_path_2_5_0.xml
│ ├── Maven__com_mysema_codegen_codegen_0_6_8.xml
│ ├── Maven__com_mysema_commons_mysema_commons_lang_0_2_4.xml
│ ├── Maven__com_querydsl_querydsl_apt_4_4_0.xml
│ ├── Maven__com_querydsl_querydsl_codegen_4_4_0.xml
│ ├── Maven__com_querydsl_querydsl_core_4_4_0.xml
│ ├── Maven__com_querydsl_querydsl_jpa_4_4_0.xml
│ ├── Maven__com_sun_activation_jakarta_activation_1_2_2.xml
│ ├── Maven__com_sun_istack_istack_commons_runtime_3_0_12.xml
│ ├── Maven__com_vaadin_external_google_android_json_0_0_20131108_vaadin1.xml
│ ├── Maven__com_zaxxer_HikariCP_4_0_3.xml
│ ├── Maven__commons_codec_commons_codec_1_15.xml
│ ├── Maven__io_jsonwebtoken_jjwt_0_9_1.xml
│ ├── Maven__io_micrometer_micrometer_core_1_7_5.xml
│ ├── Maven__io_netty_netty_buffer_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_codec_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_codec_dns_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_codec_http2_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_codec_http_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_codec_socks_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_common_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_handler_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_handler_proxy_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_resolver_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_resolver_dns_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_resolver_dns_native_macos_osx_x86_64_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_transport_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_transport_native_epoll_linux_x86_64_4_1_69_Final.xml
│ ├── Maven__io_netty_netty_transport_native_unix_common_4_1_69_Final.xml
│ ├── Maven__io_projectreactor_netty_reactor_netty_core_1_0_12.xml
│ ├── Maven__io_projectreactor_netty_reactor_netty_http_1_0_12.xml
│ ├── Maven__io_projectreactor_reactor_core_3_4_11.xml
│ ├── Maven__io_springfox_springfox_core_2_9_2.xml
│ ├── Maven__io_springfox_springfox_schema_2_9_2.xml
│ ├── Maven__io_springfox_springfox_spi_2_9_2.xml
│ ├── Maven__io_springfox_springfox_spring_web_2_9_2.xml
│ ├── Maven__io_springfox_springfox_swagger2_2_9_2.xml
│ ├── Maven__io_springfox_springfox_swagger_common_2_9_2.xml
│ ├── Maven__io_springfox_springfox_swagger_ui_2_9_2.xml
│ ├── Maven__io_swagger_swagger_annotations_1_5_20.xml
│ ├── Maven__io_swagger_swagger_models_1_5_20.xml
│ ├── Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml
│ ├── Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml
│ ├── Maven__jakarta_persistence_jakarta_persistence_api_2_2_3.xml
│ ├── Maven__jakarta_transaction_jakarta_transaction_api_1_3_3.xml
│ ├── Maven__jakarta_validation_jakarta_validation_api_2_0_2.xml
│ ├── Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml
│ ├── Maven__javax_inject_javax_inject_1.xml
│ ├── Maven__junit_junit_4_13_2.xml
│ ├── Maven__net_bytebuddy_byte_buddy_1_10_22.xml
│ ├── Maven__net_bytebuddy_byte_buddy_agent_1_10_22.xml
│ ├── Maven__net_minidev_accessors_smart_2_4_7.xml
│ ├── Maven__net_minidev_json_smart_2_4_7.xml
│ ├── Maven__org_apache_httpcomponents_httpclient_4_5_13.xml
│ ├── Maven__org_apache_httpcomponents_httpcore_4_4_14.xml
│ ├── Maven__org_apache_logging_log4j_log4j_api_2_14_1.xml
│ ├── Maven__org_apache_logging_log4j_log4j_to_slf4j_2_14_1.xml
│ ├── Maven__org_apache_maven_doxia_doxia_sink_api_1_0.xml
│ ├── Maven__org_apache_maven_maven_aether_provider_3_0.xml
│ ├── Maven__org_apache_maven_maven_artifact_3_0.xml
│ ├── Maven__org_apache_maven_maven_artifact_manager_2_0_2.xml
│ ├── Maven__org_apache_maven_maven_core_3_0.xml
│ ├── Maven__org_apache_maven_maven_model_3_0.xml
│ ├── Maven__org_apache_maven_maven_model_builder_3_0.xml
│ ├── Maven__org_apache_maven_maven_plugin_api_3_0.xml
│ ├── Maven__org_apache_maven_maven_repository_metadata_3_0.xml
│ ├── Maven__org_apache_maven_maven_settings_3_0.xml
│ ├── Maven__org_apache_maven_maven_settings_builder_3_0.xml
│ ├── Maven__org_apache_maven_reporting_maven_reporting_api_3_0.xml
│ ├── Maven__org_apache_maven_shared_file_management_1_2_1.xml
│ ├── Maven__org_apache_maven_shared_maven_shared_io_1_1.xml
│ ├── Maven__org_apache_maven_wagon_wagon_provider_api_1_0_alpha_6.xml
│ ├── Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_54.xml
│ ├── Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_54.xml
│ ├── Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_54.xml
│ ├── Maven__org_apiguardian_apiguardian_api_1_1_0.xml
│ ├── Maven__org_aspectj_aspectjweaver_1_9_7.xml
│ ├── Maven__org_assertj_assertj_core_3_19_0.xml
│ ├── Maven__org_codehaus_plexus_plexus_classworlds_2_2_3.xml
│ ├── Maven__org_codehaus_plexus_plexus_component_annotations_1_5_5.xml
│ ├── Maven__org_codehaus_plexus_plexus_container_default_1_0_alpha_9.xml
│ ├── Maven__org_codehaus_plexus_plexus_interpolation_1_14.xml
│ ├── Maven__org_codehaus_plexus_plexus_utils_3_0_22.xml
│ ├── Maven__org_dom4j_dom4j_2_1_3.xml
│ ├── Maven__org_eclipse_jdt_core_compiler_ecj_4_3_1.xml
│ ├── Maven__org_glassfish_jaxb_jaxb_runtime_2_3_5.xml
│ ├── Maven__org_glassfish_jaxb_txw2_2_3_5.xml
│ ├── Maven__org_hamcrest_hamcrest_2_2.xml
│ ├── Maven__org_hamcrest_hamcrest_core_2_2.xml
│ ├── Maven__org_hdrhistogram_HdrHistogram_2_1_12.xml
│ ├── Maven__org_hibernate_common_hibernate_commons_annotations_5_1_2_Final.xml
│ ├── Maven__org_hibernate_hibernate_core_5_4_32_Final.xml
│ ├── Maven__org_hibernate_validator_hibernate_validator_6_2_0_Final.xml
│ ├── Maven__org_jacoco_jacoco_maven_plugin_0_8_7.xml
│ ├── Maven__org_jacoco_org_jacoco_agent_runtime_0_8_7.xml
│ ├── Maven__org_jacoco_org_jacoco_core_0_8_7.xml
│ ├── Maven__org_jacoco_org_jacoco_report_0_8_7.xml
│ ├── Maven__org_javassist_javassist_3_27_0_GA.xml
│ ├── Maven__org_jboss_jandex_2_2_3_Final.xml
│ ├── Maven__org_jboss_logging_jboss_logging_3_4_2_Final.xml
│ ├── Maven__org_junit_jupiter_junit_jupiter_5_7_2.xml
│ ├── Maven__org_junit_jupiter_junit_jupiter_api_5_7_2.xml
│ ├── Maven__org_junit_jupiter_junit_jupiter_engine_5_7_2.xml
│ ├── Maven__org_junit_jupiter_junit_jupiter_params_5_7_2.xml
│ ├── Maven__org_junit_platform_junit_platform_commons_1_7_2.xml
│ ├── Maven__org_junit_platform_junit_platform_engine_1_7_2.xml
│ ├── Maven__org_latencyutils_LatencyUtils_2_0_3.xml
│ ├── Maven__org_mapstruct_mapstruct_1_2_0_Final.xml
│ ├── Maven__org_mariadb_jdbc_mariadb_java_client_2_7_3.xml
│ ├── Maven__org_mariadb_jdbc_mariadb_java_client_2_7_4.xml
│ ├── Maven__org_mockito_mockito_core_3_9_0.xml
│ ├── Maven__org_mockito_mockito_junit_jupiter_3_9_0.xml
│ ├── Maven__org_objenesis_objenesis_3_2.xml
│ ├── Maven__org_opentest4j_opentest4j_1_2_0.xml
│ ├── Maven__org_ow2_asm_asm_9_1.xml
│ ├── Maven__org_ow2_asm_asm_analysis_9_1.xml
│ ├── Maven__org_ow2_asm_asm_commons_9_1.xml
│ ├── Maven__org_ow2_asm_asm_tree_9_1.xml
│ ├── Maven__org_projectlombok_lombok_1_18_22.xml
│ ├── Maven__org_reactivestreams_reactive_streams_1_0_3.xml
│ ├── Maven__org_reflections_reflections_0_9_9.xml
│ ├── Maven__org_skyscreamer_jsonassert_1_5_0.xml
│ ├── Maven__org_slf4j_jul_to_slf4j_1_7_32.xml
│ ├── Maven__org_slf4j_slf4j_api_1_7_32.xml
│ ├── Maven__org_sonatype_aether_aether_api_1_7.xml
│ ├── Maven__org_sonatype_aether_aether_impl_1_7.xml
│ ├── Maven__org_sonatype_aether_aether_spi_1_7.xml
│ ├── Maven__org_sonatype_aether_aether_util_1_7.xml
│ ├── Maven__org_sonatype_plexus_plexus_cipher_1_4.xml
│ ├── Maven__org_sonatype_plexus_plexus_sec_dispatcher_1_3.xml
│ ├── Maven__org_sonatype_sisu_sisu_guice_noaop_2_1_7.xml
│ ├── Maven__org_sonatype_sisu_sisu_inject_bean_1_4_2.xml
│ ├── Maven__org_sonatype_sisu_sisu_inject_plexus_1_4_2.xml
│ ├── Maven__org_springframework_boot_spring_boot_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_actuator_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_actuator_autoconfigure_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_autoconfigure_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_configuration_processor_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_actuator_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_aop_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_data_jpa_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_jdbc_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_json_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_logging_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_reactor_netty_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_security_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_test_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_tomcat_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_validation_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_web_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_starter_webflux_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_test_2_5_6.xml
│ ├── Maven__org_springframework_boot_spring_boot_test_autoconfigure_2_5_6.xml
│ ├── Maven__org_springframework_data_spring_data_commons_2_5_6.xml
│ ├── Maven__org_springframework_data_spring_data_jpa_2_5_6.xml
│ ├── Maven__org_springframework_plugin_spring_plugin_core_1_2_0_RELEASE.xml
│ ├── Maven__org_springframework_plugin_spring_plugin_metadata_1_2_0_RELEASE.xml
│ ├── Maven__org_springframework_security_spring_security_config_5_5_3.xml
│ ├── Maven__org_springframework_security_spring_security_core_5_5_3.xml
│ ├── Maven__org_springframework_security_spring_security_crypto_5_5_3.xml
│ ├── Maven__org_springframework_security_spring_security_web_5_5_3.xml
│ ├── Maven__org_springframework_spring_aop_5_3_12.xml
│ ├── Maven__org_springframework_spring_aspects_5_3_12.xml
│ ├── Maven__org_springframework_spring_beans_5_3_12.xml
│ ├── Maven__org_springframework_spring_context_5_3_12.xml
│ ├── Maven__org_springframework_spring_core_5_3_12.xml
│ ├── Maven__org_springframework_spring_expression_5_3_12.xml
│ ├── Maven__org_springframework_spring_jcl_5_3_12.xml
│ ├── Maven__org_springframework_spring_jdbc_5_3_12.xml
│ ├── Maven__org_springframework_spring_orm_5_3_12.xml
│ ├── Maven__org_springframework_spring_test_5_3_12.xml
│ ├── Maven__org_springframework_spring_tx_5_3_12.xml
│ ├── Maven__org_springframework_spring_web_5_3_12.xml
│ ├── Maven__org_springframework_spring_webflux_5_3_12.xml
│ ├── Maven__org_springframework_spring_webmvc_5_3_12.xml
│ ├── Maven__org_xmlunit_xmlunit_core_2_8_3.xml
│ └── Maven__org_yaml_snakeyaml_1_28.xml
├── misc.xml
├── modules.xml
├── uiDesigner.xml
└── vcs.xml
├── README.md
├── chapter1
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── wikibooks
│ │ │ └── chapter1
│ │ │ ├── Chapter1Application.java
│ │ │ ├── controller
│ │ │ ├── DIController.java
│ │ │ ├── FieldInjectionController.java
│ │ │ ├── NoDIController.java
│ │ │ └── SetterInjectionController.java
│ │ │ └── service
│ │ │ ├── MyService.java
│ │ │ └── MyServiceImpl.java
│ └── resources
│ │ └── application.properties
│ └── test
│ └── java
│ └── com
│ └── wikibooks
│ └── chapter1
│ └── Chapter1ApplicationTests.java
├── chapter10_valid_exception
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── valid_exception
│ │ │ ├── ValidExceptionApplication.java
│ │ │ ├── common
│ │ │ ├── Constants.java
│ │ │ └── exception
│ │ │ │ ├── CustomException.java
│ │ │ │ └── CustomExceptionHandler.java
│ │ │ ├── config
│ │ │ ├── JpaAuditingConfiguration.java
│ │ │ ├── SwaggerConfiguration.java
│ │ │ └── annotation
│ │ │ │ ├── Telephone.java
│ │ │ │ └── TelephoneValidator.java
│ │ │ ├── controller
│ │ │ ├── ExceptionController.java
│ │ │ ├── ProductController.java
│ │ │ └── ValidationController.java
│ │ │ ├── data
│ │ │ ├── dto
│ │ │ │ ├── ChangeProductNameDto.java
│ │ │ │ ├── ProductDto.java
│ │ │ │ ├── ProductResponseDto.java
│ │ │ │ ├── ValidRequestDto.java
│ │ │ │ └── ValidatedRequestDto.java
│ │ │ ├── entity
│ │ │ │ ├── BaseEntity.java
│ │ │ │ └── Product.java
│ │ │ ├── group
│ │ │ │ ├── ValidationGroup1.java
│ │ │ │ └── ValidationGroup2.java
│ │ │ └── repository
│ │ │ │ └── ProductRepository.java
│ │ │ └── service
│ │ │ ├── ProductService.java
│ │ │ └── impl
│ │ │ └── ProductServiceImpl.java
│ └── resources
│ │ ├── application.properties
│ │ └── logback-spring.xml
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── valid_exception
│ └── ValidExceptionApplicationTests.java
├── chapter11_actuator
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── actuator
│ │ │ ├── ActuatorApplication.java
│ │ │ ├── config
│ │ │ ├── SwaggerConfiguration.java
│ │ │ └── actuator
│ │ │ │ ├── CustomInfoContributor.java
│ │ │ │ └── NoteEndpoint.java
│ │ │ └── controller
│ │ │ └── BasicController.java
│ └── resources
│ │ ├── application.properties
│ │ └── logback-spring.xml
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── actuator
│ └── ActuatorApplicationTests.java
├── chapter12_rest
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── rest
│ │ │ ├── RestApplication.java
│ │ │ ├── config
│ │ │ └── SwaggerConfiguration.java
│ │ │ ├── controller
│ │ │ ├── RestTemplateController.java
│ │ │ └── WebClientController.java
│ │ │ ├── dto
│ │ │ └── MemberDto.java
│ │ │ └── service
│ │ │ ├── RestTemplateService.java
│ │ │ └── WebClientService.java
│ └── resources
│ │ └── application.properties
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── rest
│ └── RestApplicationTests.java
├── chapter13_security
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── security
│ │ │ ├── SecurityApplication.java
│ │ │ ├── common
│ │ │ └── CommonResponse.java
│ │ │ ├── config
│ │ │ ├── JpaAuditingConfiguration.java
│ │ │ ├── PasswordEncoderConfiguration.java
│ │ │ ├── SwaggerConfiguration.java
│ │ │ └── security
│ │ │ │ ├── CustomAccessDeniedHandler.java
│ │ │ │ ├── CustomAuthenticationEntryPoint.java
│ │ │ │ ├── JwtAuthenticationFilter.java
│ │ │ │ ├── JwtTokenProvider.java
│ │ │ │ └── SecurityConfiguration.java
│ │ │ ├── controller
│ │ │ ├── ProductController.java
│ │ │ └── SignController.java
│ │ │ ├── data
│ │ │ ├── dto
│ │ │ │ ├── ChangeProductNameDto.java
│ │ │ │ ├── EntryPointErrorResponse.java
│ │ │ │ ├── ProductDto.java
│ │ │ │ ├── ProductResponseDto.java
│ │ │ │ ├── SignInRequestDto.java
│ │ │ │ ├── SignInResultDto.java
│ │ │ │ ├── SignUpRequestDto.java
│ │ │ │ └── SignUpResultDto.java
│ │ │ ├── entity
│ │ │ │ ├── Product.java
│ │ │ │ └── User.java
│ │ │ └── repository
│ │ │ │ ├── ProductRepository.java
│ │ │ │ └── UserRepository.java
│ │ │ └── service
│ │ │ ├── ProductService.java
│ │ │ ├── SignService.java
│ │ │ └── impl
│ │ │ ├── ProductServiceImpl.java
│ │ │ ├── SignServiceImpl.java
│ │ │ └── UserDetailsServiceImpl.java
│ └── resources
│ │ ├── application.properties
│ │ └── logback-spring.xml
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── security
│ └── SecurityApplicationTests.java
├── chapter2_design_pattern
├── design_pattern.iml
├── pom.xml
└── src
│ └── main
│ └── java
│ └── design_pattern
│ ├── abstract_factory
│ ├── ACustomFactory.java
│ ├── AObject.java
│ ├── AbstractFactory.java
│ ├── AbstractObject.java
│ ├── BCustomFactory.java
│ ├── BObject.java
│ └── Main.java
│ ├── adapter
│ ├── AirConditioner.java
│ ├── Computer.java
│ ├── Electronic110v.java
│ ├── Electronic220v.java
│ ├── Main.java
│ ├── PowerAdapter.java
│ └── Radio.java
│ ├── proxy
│ ├── Main.java
│ ├── Proxy.java
│ ├── Service.java
│ └── ServiceImpl.java
│ └── singleton
│ ├── Main.java
│ ├── MyObject.java
│ └── SingletonObject.java
├── chapter4_hello
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── hello
│ │ │ ├── HelloApplication.java
│ │ │ └── controller
│ │ │ └── HelloController.java
│ └── resources
│ │ └── application.properties
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── hello
│ └── Chapter4HelloApplicationTests.java
├── chapter5_api
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── api
│ │ │ ├── ApiApplication.java
│ │ │ ├── config
│ │ │ └── SwaggerConfiguration.java
│ │ │ ├── controller
│ │ │ ├── DeleteController.java
│ │ │ ├── GetController.java
│ │ │ ├── PostController.java
│ │ │ └── PutController.java
│ │ │ └── dto
│ │ │ └── MemberDto.java
│ └── resources
│ │ ├── application.properties
│ │ └── logback-spring.xml
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── api
│ └── Chapter5ApiApplicationTests.java
├── chapter6_jpa
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── jpa
│ │ │ ├── JpaApplication.java
│ │ │ ├── config
│ │ │ └── SwaggerConfiguration.java
│ │ │ ├── controller
│ │ │ └── ProductController.java
│ │ │ ├── data
│ │ │ ├── dao
│ │ │ │ ├── ProductDAO.java
│ │ │ │ └── impl
│ │ │ │ │ └── ProductDAOImpl.java
│ │ │ ├── dto
│ │ │ │ ├── ChangeProductNameDto.java
│ │ │ │ ├── ProductDto.java
│ │ │ │ └── ProductResponseDto.java
│ │ │ ├── entity
│ │ │ │ └── Product.java
│ │ │ └── repository
│ │ │ │ └── ProductRepository.java
│ │ │ └── service
│ │ │ ├── ProductService.java
│ │ │ └── impl
│ │ │ └── ProductServiceImpl.java
│ └── resources
│ │ ├── application.properties
│ │ └── logback-spring.xml
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── jpa
│ └── JpaApplicationTests.java
├── chapter7_test
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── test
│ │ │ ├── TestApplication.java
│ │ │ ├── controller
│ │ │ └── ProductController.java
│ │ │ ├── data
│ │ │ ├── dto
│ │ │ │ ├── ChangeProductNameDto.java
│ │ │ │ ├── ProductDto.java
│ │ │ │ └── ProductResponseDto.java
│ │ │ ├── entity
│ │ │ │ └── Product.java
│ │ │ └── repository
│ │ │ │ └── ProductRepository.java
│ │ │ └── service
│ │ │ ├── ProductService.java
│ │ │ └── impl
│ │ │ └── ProductServiceImpl.java
│ └── resources
│ │ ├── application.properties
│ │ └── logback-spring.xml
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── test
│ ├── TestApplicationTests.java
│ ├── TestLifeCycle.java
│ ├── controller
│ └── ProductControllerTest.java
│ ├── data
│ └── repository
│ │ ├── ProductRepositoryTest.java
│ │ ├── ProductRepositoryTest2.java
│ │ └── ProductRepositoryTestByH2.java
│ └── service
│ └── impl
│ ├── ProductServiceTest.java
│ └── ProductServiceTest2.java
├── chapter8_advanced_jpa
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── advanced_jpa
│ │ │ ├── AdvancedJpaApplication.java
│ │ │ ├── config
│ │ │ ├── JpaAuditingConfiguration.java
│ │ │ ├── QueryDSLConfiguration.java
│ │ │ └── SwaggerConfiguration.java
│ │ │ ├── controller
│ │ │ └── ProductController.java
│ │ │ ├── data
│ │ │ ├── dto
│ │ │ │ ├── ChangeProductNameDto.java
│ │ │ │ ├── ProductDto.java
│ │ │ │ └── ProductResponseDto.java
│ │ │ ├── entity
│ │ │ │ ├── BaseEntity.java
│ │ │ │ └── Product.java
│ │ │ └── repository
│ │ │ │ ├── ProductRepository.java
│ │ │ │ ├── QProductRepository.java
│ │ │ │ ├── QProductRepositorySupport.java
│ │ │ │ └── support
│ │ │ │ ├── ProductRepository.java
│ │ │ │ ├── ProductRepositoryCustom.java
│ │ │ │ └── ProductRepositoryCustomImpl.java
│ │ │ └── service
│ │ │ ├── ProductService.java
│ │ │ └── impl
│ │ │ └── ProductServiceImpl.java
│ └── resources
│ │ ├── application.properties
│ │ └── logback-spring.xml
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── advanced_jpa
│ ├── AdvancedJpaApplicationTests.java
│ └── data
│ └── repository
│ ├── ProductRepositoryTest.java
│ ├── QProductRepositorySupportTest.java
│ ├── QProductRepositoryTest.java
│ └── support
│ └── ProductRepositoryTest.java
├── chapter9_relationship
├── .gitignore
├── .mvn
│ └── wrapper
│ │ ├── MavenWrapperDownloader.java
│ │ ├── maven-wrapper.jar
│ │ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
│ ├── main
│ ├── java
│ │ └── com
│ │ │ └── springboot
│ │ │ └── relationship
│ │ │ ├── RelationshipApplication.java
│ │ │ ├── config
│ │ │ ├── JpaAuditingConfiguration.java
│ │ │ └── QueryDSLConfiguration.java
│ │ │ ├── controller
│ │ │ └── ProductController.java
│ │ │ ├── data
│ │ │ ├── dto
│ │ │ │ ├── ChangeProductNameDto.java
│ │ │ │ ├── ProductDto.java
│ │ │ │ └── ProductResponseDto.java
│ │ │ ├── entity
│ │ │ │ ├── BaseEntity.java
│ │ │ │ ├── Category.java
│ │ │ │ ├── Producer.java
│ │ │ │ ├── Product.java
│ │ │ │ ├── ProductDetail.java
│ │ │ │ └── Provider.java
│ │ │ └── repository
│ │ │ │ ├── CategoryRepository.java
│ │ │ │ ├── ProducerRepository.java
│ │ │ │ ├── ProductDetailRepository.java
│ │ │ │ ├── ProductRepository.java
│ │ │ │ ├── ProviderRepository.java
│ │ │ │ ├── QProductRepository.java
│ │ │ │ ├── QProductRepositorySupport.java
│ │ │ │ └── support
│ │ │ │ ├── ProductRepository.java
│ │ │ │ ├── ProductRepositoryCustom.java
│ │ │ │ └── ProductRepositoryImpl.java
│ │ │ └── service
│ │ │ ├── ProductDetailService.java
│ │ │ ├── ProductService.java
│ │ │ └── impl
│ │ │ ├── ProductDetailServiceImpl.java
│ │ │ └── ProductServiceImpl.java
│ └── resources
│ │ ├── application.properties
│ │ └── logback-spring.xml
│ └── test
│ └── java
│ └── com
│ └── springboot
│ └── relationship
│ ├── RelationshipApplicationTests.java
│ └── data
│ └── repository
│ ├── CategoryRepositoryTest.java
│ ├── ProducerRepositoryTest.java
│ ├── ProductDetailRepositoryTest.java
│ ├── ProductRepositoryTest.java
│ └── ProviderRepositoryTest.java
├── cover.jpg
└── serverBox
├── .gitignore
├── .mvn
└── wrapper
│ ├── MavenWrapperDownloader.java
│ ├── maven-wrapper.jar
│ └── maven-wrapper.properties
├── mvnw
├── mvnw.cmd
├── pom.xml
└── src
├── main
├── java
│ └── com
│ │ └── springboot
│ │ └── serverbox
│ │ ├── ServerBoxApplication.java
│ │ ├── controller
│ │ └── CrudController.java
│ │ └── dto
│ │ └── MemberDto.java
└── resources
│ ├── application.properties
│ └── logback-spring.xml
└── test
└── java
└── com
└── springboot
└── serverbox
└── ServerBoxApplicationTests.java
/.idea/.gitignore:
--------------------------------------------------------------------------------
1 | # Default ignored files
2 | /shelf/
3 | /workspace.xml
4 | # Datasource local storage ignored files
5 | /dataSources/
6 | /dataSources.local.xml
7 | # Editor-based HTTP Client requests
8 | /httpRequests/
9 |
--------------------------------------------------------------------------------
/.idea/dataSources.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | mariadb
6 | true
7 | org.mariadb.jdbc.Driver
8 | jdbc:mariadb://localhost:3306/springboot
9 | $ProjectFileDir$
10 |
11 |
12 |
--------------------------------------------------------------------------------
/.idea/inspectionProfiles/Project_Default.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__antlr_antlr_2_7_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__ch_qos_logback_logback_classic_1_2_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__ch_qos_logback_logback_core_1_2_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__classworlds_classworlds_1_1_alpha_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_fasterxml_classmate_1_5_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_annotations_2_12_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_core_2_12_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_fasterxml_jackson_core_jackson_databind_2_12_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_fasterxml_jackson_datatype_jackson_datatype_jdk8_2_12_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_google_code_findbugs_annotations_2_0_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_google_code_findbugs_jsr305_1_3_9.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_google_code_gson_gson_2_8_8.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_google_guava_guava_20_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_h2database_h2_1_4_200.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_infradna_tool_bridge_method_annotation_1_13.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_jayway_jsonpath_json_path_2_5_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_mysema_codegen_codegen_0_6_8.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_mysema_commons_mysema_commons_lang_0_2_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_querydsl_querydsl_apt_4_4_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_querydsl_querydsl_codegen_4_4_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_querydsl_querydsl_core_4_4_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_querydsl_querydsl_jpa_4_4_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_sun_activation_jakarta_activation_1_2_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_sun_istack_istack_commons_runtime_3_0_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__com_zaxxer_HikariCP_4_0_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__commons_codec_commons_codec_1_15.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_jsonwebtoken_jjwt_0_9_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_micrometer_micrometer_core_1_7_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_buffer_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_codec_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_codec_dns_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_codec_http2_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_codec_http_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_codec_socks_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_common_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_handler_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_handler_proxy_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_resolver_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_resolver_dns_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_netty_netty_transport_4_1_69_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_projectreactor_netty_reactor_netty_core_1_0_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_projectreactor_netty_reactor_netty_http_1_0_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_projectreactor_reactor_core_3_4_11.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_springfox_springfox_core_2_9_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_springfox_springfox_schema_2_9_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_springfox_springfox_spi_2_9_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_springfox_springfox_spring_web_2_9_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_springfox_springfox_swagger2_2_9_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_springfox_springfox_swagger_common_2_9_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_springfox_springfox_swagger_ui_2_9_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_swagger_swagger_annotations_1_5_20.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__io_swagger_swagger_models_1_5_20.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__jakarta_activation_jakarta_activation_api_1_2_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__jakarta_annotation_jakarta_annotation_api_1_3_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__jakarta_persistence_jakarta_persistence_api_2_2_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__jakarta_transaction_jakarta_transaction_api_1_3_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__jakarta_validation_jakarta_validation_api_2_0_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__jakarta_xml_bind_jakarta_xml_bind_api_2_3_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__javax_inject_javax_inject_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__junit_junit_4_13_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__net_bytebuddy_byte_buddy_1_10_22.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__net_bytebuddy_byte_buddy_agent_1_10_22.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__net_minidev_accessors_smart_2_4_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__net_minidev_json_smart_2_4_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_httpcomponents_httpclient_4_5_13.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_httpcomponents_httpcore_4_4_14.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_logging_log4j_log4j_api_2_14_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_logging_log4j_log4j_to_slf4j_2_14_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_doxia_doxia_sink_api_1_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_aether_provider_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_artifact_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_artifact_manager_2_0_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_core_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_model_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_model_builder_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_plugin_api_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_repository_metadata_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_settings_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_maven_settings_builder_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_reporting_maven_reporting_api_3_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_shared_file_management_1_2_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_shared_maven_shared_io_1_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_maven_wagon_wagon_provider_api_1_0_alpha_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_core_9_0_54.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_el_9_0_54.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apache_tomcat_embed_tomcat_embed_websocket_9_0_54.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_apiguardian_apiguardian_api_1_1_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_aspectj_aspectjweaver_1_9_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_assertj_assertj_core_3_19_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_codehaus_plexus_plexus_classworlds_2_2_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_codehaus_plexus_plexus_component_annotations_1_5_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_codehaus_plexus_plexus_interpolation_1_14.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_codehaus_plexus_plexus_utils_3_0_22.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_dom4j_dom4j_2_1_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_eclipse_jdt_core_compiler_ecj_4_3_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_glassfish_jaxb_jaxb_runtime_2_3_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_glassfish_jaxb_txw2_2_3_5.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_hamcrest_hamcrest_2_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_hamcrest_hamcrest_core_2_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_hdrhistogram_HdrHistogram_2_1_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_hibernate_hibernate_core_5_4_32_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_hibernate_validator_hibernate_validator_6_2_0_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_jacoco_jacoco_maven_plugin_0_8_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_jacoco_org_jacoco_agent_runtime_0_8_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_jacoco_org_jacoco_core_0_8_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_jacoco_org_jacoco_report_0_8_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_javassist_javassist_3_27_0_GA.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_jboss_jandex_2_2_3_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_jboss_logging_jboss_logging_3_4_2_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_5_7_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_api_5_7_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_engine_5_7_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_junit_jupiter_junit_jupiter_params_5_7_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_junit_platform_junit_platform_commons_1_7_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_junit_platform_junit_platform_engine_1_7_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_latencyutils_LatencyUtils_2_0_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_mapstruct_mapstruct_1_2_0_Final.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_mariadb_jdbc_mariadb_java_client_2_7_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_mariadb_jdbc_mariadb_java_client_2_7_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_mockito_mockito_core_3_9_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_mockito_mockito_junit_jupiter_3_9_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_objenesis_objenesis_3_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_opentest4j_opentest4j_1_2_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_ow2_asm_asm_9_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_ow2_asm_asm_analysis_9_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_ow2_asm_asm_commons_9_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_ow2_asm_asm_tree_9_1.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_projectlombok_lombok_1_18_22.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_reactivestreams_reactive_streams_1_0_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_reflections_reflections_0_9_9.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_skyscreamer_jsonassert_1_5_0.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_slf4j_jul_to_slf4j_1_7_32.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_slf4j_slf4j_api_1_7_32.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_aether_aether_api_1_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_aether_aether_impl_1_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_aether_aether_spi_1_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_aether_aether_util_1_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_plexus_plexus_cipher_1_4.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_plexus_plexus_sec_dispatcher_1_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_sisu_sisu_guice_noaop_2_1_7.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_sisu_sisu_inject_bean_1_4_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_sonatype_sisu_sisu_inject_plexus_1_4_2.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_actuator_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_autoconfigure_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_aop_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_jdbc_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_json_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_test_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_tomcat_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_starter_web_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_boot_spring_boot_test_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_data_spring_data_commons_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_data_spring_data_jpa_2_5_6.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_security_spring_security_config_5_5_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_security_spring_security_core_5_5_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_security_spring_security_crypto_5_5_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_security_spring_security_web_5_5_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_aop_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_aspects_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_beans_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_context_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_core_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_expression_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_jcl_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_jdbc_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_orm_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_test_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_tx_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_web_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_webflux_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_springframework_spring_webmvc_5_3_12.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_xmlunit_xmlunit_core_2_8_3.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/libraries/Maven__org_yaml_snakeyaml_1_28.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/.idea/vcs.xml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
--------------------------------------------------------------------------------
/chapter1/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter1/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter1/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter1/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter1/src/main/java/com/wikibooks/chapter1/Chapter1Application.java:
--------------------------------------------------------------------------------
1 | package com.wikibooks.chapter1;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class Chapter1Application {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(Chapter1Application.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter1/src/main/java/com/wikibooks/chapter1/controller/DIController.java:
--------------------------------------------------------------------------------
1 | package com.wikibooks.chapter1.controller;
2 |
3 | import com.wikibooks.chapter1.service.MyService;
4 | import org.springframework.beans.factory.annotation.Autowired;
5 | import org.springframework.web.bind.annotation.GetMapping;
6 | import org.springframework.web.bind.annotation.RestController;
7 |
8 | @RestController
9 | public class DIController {
10 |
11 | MyService myService;
12 |
13 | @Autowired
14 | public DIController(MyService myService) {
15 | this.myService = myService;
16 | }
17 |
18 | @GetMapping("/di/hello")
19 | public String getHello() {
20 | return myService.getHello();
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/chapter1/src/main/java/com/wikibooks/chapter1/controller/FieldInjectionController.java:
--------------------------------------------------------------------------------
1 | package com.wikibooks.chapter1.controller;
2 |
3 | import com.wikibooks.chapter1.service.MyService;
4 | import org.springframework.beans.factory.annotation.Autowired;
5 | import org.springframework.web.bind.annotation.RestController;
6 |
7 | @RestController
8 | public class FieldInjectionController {
9 |
10 | @Autowired
11 | private MyService myService;
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter1/src/main/java/com/wikibooks/chapter1/controller/NoDIController.java:
--------------------------------------------------------------------------------
1 | package com.wikibooks.chapter1.controller;
2 |
3 | import com.wikibooks.chapter1.service.MyService;
4 | import com.wikibooks.chapter1.service.MyServiceImpl;
5 | import org.springframework.web.bind.annotation.GetMapping;
6 | import org.springframework.web.bind.annotation.RestController;
7 |
8 | @RestController
9 | public class NoDIController {
10 |
11 | private MyService service = new MyServiceImpl();
12 |
13 | @GetMapping("/no-di/hello")
14 | public String getHello() {
15 | return service.getHello();
16 | }
17 |
18 | }
19 |
--------------------------------------------------------------------------------
/chapter1/src/main/java/com/wikibooks/chapter1/controller/SetterInjectionController.java:
--------------------------------------------------------------------------------
1 | package com.wikibooks.chapter1.controller;
2 |
3 | import com.wikibooks.chapter1.service.MyService;
4 | import org.springframework.beans.factory.annotation.Autowired;
5 | import org.springframework.web.bind.annotation.RestController;
6 |
7 | @RestController
8 | public class SetterInjectionController {
9 |
10 | MyService myService;
11 |
12 | @Autowired
13 | public void setMyService(MyService myService) {
14 | this.myService = myService;
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/chapter1/src/main/java/com/wikibooks/chapter1/service/MyService.java:
--------------------------------------------------------------------------------
1 | package com.wikibooks.chapter1.service;
2 |
3 | public interface MyService {
4 |
5 | public String getHello();
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/chapter1/src/main/java/com/wikibooks/chapter1/service/MyServiceImpl.java:
--------------------------------------------------------------------------------
1 | package com.wikibooks.chapter1.service;
2 |
3 | import org.springframework.stereotype.Service;
4 |
5 | @Service
6 | public class MyServiceImpl implements MyService {
7 |
8 | @Override
9 | public String getHello() {
10 | return "Hello";
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/chapter1/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/chapter1/src/test/java/com/wikibooks/chapter1/Chapter1ApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.wikibooks.chapter1;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class Chapter1ApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter10_valid_exception/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter10_valid_exception/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/ValidExceptionApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ValidExceptionApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ValidExceptionApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/common/Constants.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.common;
2 |
3 | // 예제 10.17
4 | public class Constants {
5 |
6 | public enum ExceptionClass {
7 |
8 | PRODUCT("Product");
9 |
10 | private String exceptionClass;
11 |
12 | ExceptionClass(String exceptionClass) {
13 | this.exceptionClass = exceptionClass;
14 | }
15 |
16 | public String getExceptionClass() {
17 | return exceptionClass;
18 | }
19 |
20 | @Override
21 | public String toString() {
22 | return getExceptionClass() + " Exception. ";
23 | }
24 |
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/config/JpaAuditingConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.config;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
5 |
6 | @Configuration
7 | @EnableJpaAuditing
8 | public class JpaAuditingConfiguration {
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/config/annotation/Telephone.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.config.annotation;
2 |
3 | import java.lang.annotation.ElementType;
4 | import java.lang.annotation.Retention;
5 | import java.lang.annotation.RetentionPolicy;
6 | import java.lang.annotation.Target;
7 | import javax.validation.Constraint;
8 |
9 | // 예제 10.9
10 | @Target(ElementType.FIELD)
11 | @Retention(RetentionPolicy.RUNTIME)
12 | @Constraint(validatedBy = TelephoneValidator.class)
13 | public @interface Telephone {
14 | String message() default "전화번호 형식이 일치하지 않습니다.";
15 | Class[] groups() default {};
16 | Class[] payload() default {};
17 | }
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/config/annotation/TelephoneValidator.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.config.annotation;
2 |
3 | import javax.validation.ConstraintValidator;
4 | import javax.validation.ConstraintValidatorContext;
5 |
6 | // 예제 10.8
7 | public class TelephoneValidator implements ConstraintValidator {
8 |
9 | @Override
10 | public boolean isValid(String value, ConstraintValidatorContext context) {
11 | if(value==null){
12 | return false;
13 | }
14 | return value.matches("01(?:0|1|[6-9])[.-]?(\\d{3}|\\d{4})[.-]?(\\d{4})$");
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/data/dto/ProductResponseDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.ToString;
7 |
8 | @Data
9 | @NoArgsConstructor
10 | @AllArgsConstructor
11 | @ToString
12 | public class ProductResponseDto {
13 |
14 | private Long number;
15 |
16 | private String name;
17 |
18 | private int price;
19 |
20 | private int stock;
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/data/group/ValidationGroup1.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.data.group;
2 |
3 | // 예제 10.4
4 | public interface ValidationGroup1 {
5 |
6 | }
7 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/data/group/ValidationGroup2.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.data.group;
2 |
3 | // 예제 10.5
4 | public interface ValidationGroup2 {
5 |
6 | }
7 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/data/repository/ProductRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.data.repository;
2 |
3 |
4 | import com.springboot.valid_exception.data.entity.Product;
5 | import org.springframework.data.jpa.repository.JpaRepository;
6 |
7 | public interface ProductRepository extends JpaRepository {
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/java/com/springboot/valid_exception/service/ProductService.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception.service;
2 |
3 |
4 | import com.springboot.valid_exception.data.dto.ProductDto;
5 | import com.springboot.valid_exception.data.dto.ProductResponseDto;
6 |
7 | public interface ProductService {
8 |
9 | ProductResponseDto getProduct(Long number);
10 |
11 | ProductResponseDto saveProduct(ProductDto productDto);
12 |
13 | ProductResponseDto changeProductName(Long number, String name) throws Exception;
14 |
15 | void deleteProduct(Long number) throws Exception;
16 |
17 | }
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | spring.datasource.driverClassName=org.mariadb.jdbc.Driver
2 | spring.datasource.url=jdbc:mariadb://localhost:3306/springboot
3 | spring.datasource.username=flature
4 | spring.datasource.password=aroundhub12#
5 |
6 | spring.jpa.hibernate.ddl-auto=create
7 | spring.jpa.show-sql=true
8 | spring.jpa.properties.hibernate.format_sql=true
--------------------------------------------------------------------------------
/chapter10_valid_exception/src/test/java/com/springboot/valid_exception/ValidExceptionApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.valid_exception;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class ValidExceptionApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter11_actuator/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter11_actuator/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter11_actuator/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter11_actuator/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter11_actuator/src/main/java/com/springboot/actuator/ActuatorApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.actuator;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ActuatorApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ActuatorApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter11_actuator/src/main/java/com/springboot/actuator/config/actuator/CustomInfoContributor.java:
--------------------------------------------------------------------------------
1 | package com.springboot.actuator.config.actuator;
2 |
3 | import java.util.HashMap;
4 | import java.util.Map;
5 | import org.springframework.boot.actuate.info.Info.Builder;
6 | import org.springframework.boot.actuate.info.InfoContributor;
7 | import org.springframework.stereotype.Component;
8 |
9 | // 예제 11.14
10 | @Component
11 | public class CustomInfoContributor implements InfoContributor {
12 |
13 | @Override
14 | public void contribute(Builder builder) {
15 | Map content = new HashMap<>();
16 | content.put("code-info", "InfoContributor 구현체에서 정의한 정보입니다.");
17 | builder.withDetail("custom-info-contributor", content);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/chapter11_actuator/src/main/java/com/springboot/actuator/controller/BasicController.java:
--------------------------------------------------------------------------------
1 | package com.springboot.actuator.controller;
2 |
3 | import org.springframework.web.bind.annotation.GetMapping;
4 | import org.springframework.web.bind.annotation.RequestMapping;
5 | import org.springframework.web.bind.annotation.RestController;
6 |
7 | @RestController
8 | @RequestMapping("/basic")
9 | public class BasicController {
10 |
11 | @GetMapping
12 | public String getHello(){
13 | return "Hello Spring Boot!";
14 | }
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/chapter11_actuator/src/test/java/com/springboot/actuator/ActuatorApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.actuator;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class ActuatorApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter12_rest/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter12_rest/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter12_rest/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter12_rest/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter12_rest/src/main/java/com/springboot/rest/RestApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.rest;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class RestApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(RestApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter12_rest/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/chapter12_rest/src/test/java/com/springboot/rest/RestApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.rest;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class RestApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter13_security/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter13_security/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter13_security/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter13_security/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/SecurityApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class SecurityApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(SecurityApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/common/CommonResponse.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.common;
2 |
3 | // 예제 13.27
4 | public enum CommonResponse {
5 |
6 | SUCCESS(0, "Success"), FAIL(-1, "Fail");
7 |
8 | int code;
9 | String msg;
10 |
11 | CommonResponse(int code, String msg) {
12 | this.code = code;
13 | this.msg = msg;
14 | }
15 |
16 | public int getCode() {
17 | return code;
18 | }
19 |
20 | public String getMsg() {
21 | return msg;
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/config/JpaAuditingConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.config;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
5 |
6 | @Configuration
7 | @EnableJpaAuditing
8 | public class JpaAuditingConfiguration {
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/config/PasswordEncoderConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.config;
2 |
3 | import org.springframework.context.annotation.Bean;
4 | import org.springframework.context.annotation.Configuration;
5 | import org.springframework.security.crypto.factory.PasswordEncoderFactories;
6 | import org.springframework.security.crypto.password.PasswordEncoder;
7 |
8 | // 예제 13.26
9 | @Configuration
10 | public class PasswordEncoderConfiguration {
11 |
12 | @Bean
13 | public PasswordEncoder passwordEncoder() {
14 | return PasswordEncoderFactories.createDelegatingPasswordEncoder();
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/data/dto/EntryPointErrorResponse.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.ToString;
7 |
8 | // 예제 13.22
9 | @Data
10 | @NoArgsConstructor
11 | @AllArgsConstructor
12 | @ToString
13 | public class EntryPointErrorResponse {
14 |
15 | private String msg;
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/data/dto/ProductDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Builder;
5 | import lombok.Data;
6 | import lombok.NoArgsConstructor;
7 | import lombok.ToString;
8 |
9 | @Data
10 | @NoArgsConstructor
11 | @AllArgsConstructor
12 | @ToString
13 | @Builder
14 | public class ProductDto {
15 |
16 | private String name;
17 |
18 | private int price;
19 |
20 | private int stock;
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/data/dto/ProductResponseDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.ToString;
7 |
8 | @Data
9 | @NoArgsConstructor
10 | @AllArgsConstructor
11 | @ToString
12 | public class ProductResponseDto {
13 |
14 | private Long number;
15 |
16 | private String name;
17 |
18 | private int price;
19 |
20 | private int stock;
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/data/dto/SignInRequestDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Builder;
5 | import lombok.Data;
6 | import lombok.NoArgsConstructor;
7 | import lombok.ToString;
8 |
9 | @Data
10 | @NoArgsConstructor
11 | @AllArgsConstructor
12 | @ToString
13 | @Builder
14 | public class SignInRequestDto {
15 |
16 | private String id;
17 |
18 | private String password;
19 |
20 | }
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/data/dto/SignInResultDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Builder;
5 | import lombok.Data;
6 | import lombok.NoArgsConstructor;
7 | import lombok.ToString;
8 |
9 | // 예제 13.30
10 | @Data
11 | @NoArgsConstructor
12 | @AllArgsConstructor
13 | @ToString
14 | public class SignInResultDto extends SignUpResultDto {
15 |
16 | private String token;
17 |
18 | @Builder
19 | public SignInResultDto(boolean success, int code, String msg, String token) {
20 | super(success, code, msg);
21 | this.token = token;
22 | }
23 |
24 | }
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/data/dto/SignUpRequestDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Builder;
5 | import lombok.Data;
6 | import lombok.NoArgsConstructor;
7 | import lombok.ToString;
8 |
9 | @Data
10 | @NoArgsConstructor
11 | @AllArgsConstructor
12 | @ToString
13 | @Builder
14 | public class SignUpRequestDto {
15 |
16 | private String id;
17 |
18 | private String password;
19 |
20 | private String name;
21 |
22 | }
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/data/dto/SignUpResultDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.ToString;
7 |
8 | // 예제 13.29
9 | @Data
10 | @NoArgsConstructor
11 | @AllArgsConstructor
12 | @ToString
13 | public class SignUpResultDto {
14 |
15 | private boolean success;
16 |
17 | private int code;
18 |
19 | private String msg;
20 |
21 | }
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/data/repository/UserRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.data.repository;
2 |
3 | import com.springboot.security.data.entity.User;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 |
6 | // 예제 13.7
7 | public interface UserRepository extends JpaRepository {
8 |
9 | User getByUid(String uid);
10 |
11 | }
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/service/ProductService.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.service;
2 |
3 |
4 | import com.springboot.security.data.dto.ProductDto;
5 | import com.springboot.security.data.dto.ProductResponseDto;
6 |
7 | public interface ProductService {
8 |
9 | ProductResponseDto getProduct(Long number);
10 |
11 | ProductResponseDto saveProduct(ProductDto productDto);
12 |
13 | ProductResponseDto changeProductName(Long number, String name) throws Exception;
14 |
15 | void deleteProduct(Long number) throws Exception;
16 |
17 | }
--------------------------------------------------------------------------------
/chapter13_security/src/main/java/com/springboot/security/service/SignService.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security.service;
2 |
3 |
4 | import com.springboot.security.data.dto.SignInResultDto;
5 | import com.springboot.security.data.dto.SignUpResultDto;
6 |
7 | // 예제 13.24
8 | public interface SignService {
9 |
10 | SignUpResultDto signUp(String id, String password, String name, String role);
11 |
12 | SignInResultDto signIn(String id, String password) throws RuntimeException;
13 |
14 | }
--------------------------------------------------------------------------------
/chapter13_security/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | spring.datasource.driverClassName=org.mariadb.jdbc.Driver
2 | spring.datasource.url=jdbc:mariadb://localhost:3306/springboot
3 | spring.datasource.username=flature
4 | spring.datasource.password=aroundhub12#
5 |
6 | spring.jpa.open-in-view=false
7 | spring.jpa.hibernate.ddl-auto=create
8 | spring.jpa.show-sql=true
9 | spring.jpa.properties.hibernate.format_sql=true
10 |
11 | ## Security 관련 (예제 13.11)
12 | springboot.jwt.secret=flature!@#
--------------------------------------------------------------------------------
/chapter13_security/src/test/java/com/springboot/security/SecurityApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.security;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class SecurityApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 | 4.0.0
6 |
7 | com.springboot.design_pattern
8 | design_pattern
9 | 1.0.0
10 |
11 |
12 | 11
13 | 11
14 |
15 |
16 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/abstract_factory/ACustomFactory.java:
--------------------------------------------------------------------------------
1 | package design_pattern.abstract_factory;
2 |
3 | public class ACustomFactory implements AbstractFactory{
4 |
5 | public AbstractObject createObject() {
6 | return new AObject();
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/abstract_factory/AObject.java:
--------------------------------------------------------------------------------
1 | package design_pattern.abstract_factory;
2 |
3 | public class AObject implements AbstractObject{
4 |
5 | public void print() {
6 | System.out.println("A Object가 사용되었습니다.");
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/abstract_factory/AbstractFactory.java:
--------------------------------------------------------------------------------
1 | package design_pattern.abstract_factory;
2 |
3 | public interface AbstractFactory {
4 |
5 | AbstractObject createObject();
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/abstract_factory/AbstractObject.java:
--------------------------------------------------------------------------------
1 | package design_pattern.abstract_factory;
2 |
3 | public interface AbstractObject {
4 |
5 | void print();
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/abstract_factory/BCustomFactory.java:
--------------------------------------------------------------------------------
1 | package design_pattern.abstract_factory;
2 |
3 | public class BCustomFactory implements AbstractFactory{
4 |
5 | public AbstractObject createObject() {
6 | return new BObject();
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/abstract_factory/BObject.java:
--------------------------------------------------------------------------------
1 | package design_pattern.abstract_factory;
2 |
3 | public class BObject implements AbstractObject{
4 |
5 | public void print() {
6 | System.out.println("B Object가 호출되었습니다.");
7 | }
8 | }
9 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/abstract_factory/Main.java:
--------------------------------------------------------------------------------
1 | package design_pattern.abstract_factory;
2 |
3 | public class Main {
4 |
5 | public static void main(String[] args){
6 | AbstractFactory abstractFactory = new ACustomFactory();
7 | AbstractObject abstractObject = abstractFactory.createObject();
8 | abstractObject.print();
9 |
10 | System.out.println("===========================");
11 |
12 | abstractFactory = new BCustomFactory();
13 | abstractObject = abstractFactory.createObject();
14 | abstractObject.print();
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/adapter/AirConditioner.java:
--------------------------------------------------------------------------------
1 | package design_pattern.adapter;
2 |
3 | public class AirConditioner implements Electronic220v{
4 |
5 | @Override
6 | public void power220vOn() {
7 | System.out.println("에어컨 전원 On -- 220v");
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/adapter/Computer.java:
--------------------------------------------------------------------------------
1 | package design_pattern.adapter;
2 |
3 | public class Computer implements Electronic220v{
4 |
5 | @Override
6 | public void power220vOn() {
7 | System.out.println("컴퓨터 전원 On -- 220v");
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/adapter/Electronic110v.java:
--------------------------------------------------------------------------------
1 | package design_pattern.adapter;
2 |
3 | public interface Electronic110v {
4 |
5 | void power110vOn();
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/adapter/Electronic220v.java:
--------------------------------------------------------------------------------
1 | package design_pattern.adapter;
2 |
3 | public interface Electronic220v {
4 |
5 | void power220vOn();
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/adapter/PowerAdapter.java:
--------------------------------------------------------------------------------
1 | package design_pattern.adapter;
2 |
3 | public class PowerAdapter implements Electronic110v{
4 |
5 | public Electronic220v electronic220v;
6 |
7 | public PowerAdapter(Electronic220v electronic220v){
8 | this.electronic220v = electronic220v;
9 | }
10 |
11 | @Override
12 | public void power110vOn() {
13 | electronic220v.power220vOn();
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/adapter/Radio.java:
--------------------------------------------------------------------------------
1 | package design_pattern.adapter;
2 |
3 | public class Radio implements Electronic110v{
4 |
5 | @Override
6 | public void power110vOn() {
7 | System.out.println("라디오 전원 On -- 110v");
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/proxy/Main.java:
--------------------------------------------------------------------------------
1 | package design_pattern.proxy;
2 |
3 | public class Main {
4 |
5 | public static void main(String[] args){
6 | Service service = new Proxy();
7 | service.print();
8 | }
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/proxy/Proxy.java:
--------------------------------------------------------------------------------
1 | package design_pattern.proxy;
2 |
3 | public class Proxy implements Service{
4 |
5 | ServiceImpl service;
6 |
7 | @Override
8 | public void print() {
9 | System.out.println("프록시를 통해 실행");
10 | service = new ServiceImpl();
11 | service.print();
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/proxy/Service.java:
--------------------------------------------------------------------------------
1 | package design_pattern.proxy;
2 |
3 | public interface Service {
4 |
5 | void print();
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/proxy/ServiceImpl.java:
--------------------------------------------------------------------------------
1 | package design_pattern.proxy;
2 |
3 | public class ServiceImpl implements Service{
4 |
5 | @Override
6 | public void print() {
7 | System.out.println("내용을 출력합니다.");
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/singleton/Main.java:
--------------------------------------------------------------------------------
1 | package design_pattern.singleton;
2 |
3 | public class Main {
4 | public static void main(String[] args){
5 |
6 | MyObject myObject1 = new MyObject("클래스 1");
7 | myObject1.print();
8 |
9 | MyObject myObject2 = new MyObject("클래스 2");
10 | myObject2.print();
11 | }
12 | }
13 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/singleton/MyObject.java:
--------------------------------------------------------------------------------
1 | package design_pattern.singleton;
2 |
3 | public class MyObject {
4 |
5 | private final String className;
6 |
7 | public MyObject(String className) {
8 | this.className = className;
9 | }
10 |
11 | public void print() {
12 | SingletonObject singletonObject = SingletonObject.getObject();
13 | System.out.print("MyObject : " + className + ", ");
14 | singletonObject.print();
15 | }
16 |
17 | }
18 |
--------------------------------------------------------------------------------
/chapter2_design_pattern/src/main/java/design_pattern/singleton/SingletonObject.java:
--------------------------------------------------------------------------------
1 | package design_pattern.singleton;
2 |
3 | public class SingletonObject {
4 |
5 | private static SingletonObject singletonObject = null;
6 |
7 | private SingletonObject() {
8 | }
9 |
10 | public synchronized static SingletonObject getObject() {
11 | if (singletonObject == null) {
12 | singletonObject = new SingletonObject();
13 | }
14 | return singletonObject;
15 | }
16 |
17 | public void print() {
18 | System.out.println("Singleton Class : " + singletonObject.hashCode());
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/chapter4_hello/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter4_hello/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter4_hello/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter4_hello/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter4_hello/src/main/java/com/springboot/hello/HelloApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.hello;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class HelloApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(HelloApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter4_hello/src/main/java/com/springboot/hello/controller/HelloController.java:
--------------------------------------------------------------------------------
1 | package com.springboot.hello.controller;
2 |
3 | import org.springframework.web.bind.annotation.RequestMapping;
4 | import org.springframework.web.bind.annotation.RestController;
5 |
6 | // 예제 4.1
7 | @RestController
8 | public class HelloController {
9 |
10 | @RequestMapping("/hello")
11 | public String hello() {
12 | return "Hello World";
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/chapter4_hello/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/chapter4_hello/src/test/java/com/springboot/hello/Chapter4HelloApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.hello;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class Chapter4HelloApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter5_api/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter5_api/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter5_api/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter5_api/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter5_api/src/main/java/com/springboot/api/ApiApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.api;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ApiApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ApiApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter5_api/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/chapter5_api/src/test/java/com/springboot/api/Chapter5ApiApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.api;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class Chapter5ApiApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter6_jpa/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter6_jpa/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter6_jpa/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter6_jpa/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter6_jpa/src/main/java/com/springboot/jpa/JpaApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.jpa;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class JpaApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(JpaApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter6_jpa/src/main/java/com/springboot/jpa/data/dao/ProductDAO.java:
--------------------------------------------------------------------------------
1 | package com.springboot.jpa.data.dao;
2 |
3 | import com.springboot.jpa.data.entity.Product;
4 |
5 | // 예제 6.9
6 | public interface ProductDAO {
7 |
8 | Product insertProduct(Product product);
9 |
10 | Product selectProduct(Long number);
11 |
12 | Product updateProductName(Long number, String name) throws Exception;
13 |
14 | void deleteProduct(Long number) throws Exception;
15 |
16 | }
17 |
--------------------------------------------------------------------------------
/chapter6_jpa/src/main/java/com/springboot/jpa/data/dto/ProductDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.jpa.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Builder;
5 | import lombok.Data;
6 | import lombok.NoArgsConstructor;
7 | import lombok.ToString;
8 |
9 | // 예제 6.19
10 | @Data
11 | @NoArgsConstructor
12 | @AllArgsConstructor
13 | @ToString
14 | @Builder
15 | public class ProductDto {
16 |
17 | private String name;
18 |
19 | private int price;
20 |
21 | private int stock;
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/chapter6_jpa/src/main/java/com/springboot/jpa/data/dto/ProductResponseDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.jpa.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.ToString;
7 |
8 | // 예제 6.20
9 | @Data
10 | @NoArgsConstructor
11 | @AllArgsConstructor
12 | @ToString
13 | public class ProductResponseDto {
14 |
15 | private Long number;
16 |
17 | private String name;
18 |
19 | private int price;
20 |
21 | private int stock;
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/chapter6_jpa/src/main/java/com/springboot/jpa/data/repository/ProductRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.jpa.data.repository;
2 |
3 | import com.springboot.jpa.data.entity.Product;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 |
6 | // 예제 6.7
7 | public interface ProductRepository extends JpaRepository {
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/chapter6_jpa/src/main/java/com/springboot/jpa/service/ProductService.java:
--------------------------------------------------------------------------------
1 | package com.springboot.jpa.service;
2 |
3 | import com.springboot.jpa.data.dto.ProductDto;
4 | import com.springboot.jpa.data.dto.ProductResponseDto;
5 |
6 | // 예제 6.21
7 | public interface ProductService {
8 |
9 | ProductResponseDto getProduct(Long number);
10 |
11 | ProductResponseDto saveProduct(ProductDto productDto);
12 |
13 | ProductResponseDto changeProductName(Long number, String name) throws Exception;
14 |
15 | void deleteProduct(Long number) throws Exception;
16 |
17 | }
--------------------------------------------------------------------------------
/chapter6_jpa/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | ## 예제 6.5
2 | spring.datasource.driverClassName=org.mariadb.jdbc.Driver
3 | spring.datasource.url=jdbc:mariadb://localhost:3306/springboot
4 | spring.datasource.username=flature
5 | spring.datasource.password=aroundhub12#
6 |
7 | spring.jpa.hibernate.ddl-auto=update
8 | spring.jpa.show-sql=true
9 | spring.jpa.properties.hibernate.format_sql=true
--------------------------------------------------------------------------------
/chapter6_jpa/src/test/java/com/springboot/jpa/JpaApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.jpa;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class JpaApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter7_test/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter7_test/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter7_test/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter7_test/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter7_test/src/main/java/com/springboot/test/TestApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.test;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class TestApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(TestApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter7_test/src/main/java/com/springboot/test/data/dto/ProductDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.test.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Builder;
5 | import lombok.Data;
6 | import lombok.NoArgsConstructor;
7 | import lombok.ToString;
8 |
9 | // 예제 7.9
10 | @Data
11 | @NoArgsConstructor
12 | @AllArgsConstructor
13 | @ToString
14 | @Builder
15 | public class ProductDto {
16 |
17 | private String name;
18 |
19 | private int price;
20 |
21 | private int stock;
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/chapter7_test/src/main/java/com/springboot/test/data/dto/ProductResponseDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.test.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.ToString;
7 |
8 | @Data
9 | @NoArgsConstructor
10 | @AllArgsConstructor
11 | @ToString
12 | public class ProductResponseDto {
13 |
14 | private Long number;
15 |
16 | private String name;
17 |
18 | private int price;
19 |
20 | private int stock;
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/chapter7_test/src/main/java/com/springboot/test/data/repository/ProductRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.test.data.repository;
2 |
3 | import com.springboot.test.data.entity.Product;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 |
6 | public interface ProductRepository extends JpaRepository {
7 |
8 | }
9 |
--------------------------------------------------------------------------------
/chapter7_test/src/main/java/com/springboot/test/service/ProductService.java:
--------------------------------------------------------------------------------
1 | package com.springboot.test.service;
2 |
3 |
4 | import com.springboot.test.data.dto.ProductDto;
5 | import com.springboot.test.data.dto.ProductResponseDto;
6 |
7 | public interface ProductService {
8 |
9 | ProductResponseDto getProduct(Long number);
10 |
11 | ProductResponseDto saveProduct(ProductDto productDto);
12 |
13 | ProductResponseDto changeProductName(Long number, String name) throws Exception;
14 |
15 | void deleteProduct(Long number) throws Exception;
16 |
17 | }
--------------------------------------------------------------------------------
/chapter7_test/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | spring.datasource.driverClassName=org.mariadb.jdbc.Driver
2 | spring.datasource.url=jdbc:mariadb://localhost:3306/springboot
3 | spring.datasource.username=flature
4 | spring.datasource.password=aroundhub12#
5 |
6 | spring.jpa.hibernate.ddl-auto=create
7 | spring.jpa.show-sql=true
8 | spring.jpa.properties.hibernate.format_sql=true
--------------------------------------------------------------------------------
/chapter7_test/src/test/java/com/springboot/test/TestApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.test;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class TestApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter8_advanced_jpa/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/AdvancedJpaApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | // 예제 8.40
7 | //@EnableJpaAuditing
8 | @SpringBootApplication
9 | public class AdvancedJpaApplication {
10 |
11 | public static void main(String[] args) {
12 | SpringApplication.run(AdvancedJpaApplication.class, args);
13 | }
14 |
15 | }
16 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/config/JpaAuditingConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.config;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
5 |
6 | // 예제 8.41
7 | @Configuration
8 | @EnableJpaAuditing
9 | public class JpaAuditingConfiguration {
10 |
11 | }
12 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/config/QueryDSLConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.config;
2 |
3 | import com.querydsl.jpa.impl.JPAQueryFactory;
4 | import javax.persistence.EntityManager;
5 | import javax.persistence.PersistenceContext;
6 | import org.springframework.context.annotation.Bean;
7 | import org.springframework.context.annotation.Configuration;
8 |
9 | // 예제 8.29
10 | @Configuration
11 | public class QueryDSLConfiguration {
12 |
13 | @PersistenceContext
14 | EntityManager entityManager;
15 |
16 | @Bean
17 | public JPAQueryFactory jpaQueryFactory(){
18 | return new JPAQueryFactory(entityManager);
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/data/dto/ProductDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Builder;
5 | import lombok.Data;
6 | import lombok.NoArgsConstructor;
7 | import lombok.ToString;
8 |
9 | @Data
10 | @NoArgsConstructor
11 | @AllArgsConstructor
12 | @ToString
13 | @Builder
14 | public class ProductDto {
15 |
16 | private String name;
17 |
18 | private int price;
19 |
20 | private int stock;
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/data/dto/ProductResponseDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.ToString;
7 |
8 | @Data
9 | @NoArgsConstructor
10 | @AllArgsConstructor
11 | @ToString
12 | public class ProductResponseDto {
13 |
14 | private Long number;
15 |
16 | private String name;
17 |
18 | private int price;
19 |
20 | private int stock;
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/data/entity/Product.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.data.entity;
2 |
3 | import lombok.*;
4 |
5 | import javax.persistence.*;
6 |
7 | // 예제 8.43
8 | @Entity
9 | @Getter
10 | @Setter
11 | @NoArgsConstructor
12 | @ToString(callSuper = true)
13 | @EqualsAndHashCode(callSuper = true)
14 | @Table(name = "product")
15 | public class Product extends BaseEntity {
16 |
17 | @Id
18 | @GeneratedValue(strategy = GenerationType.IDENTITY)
19 | private Long number;
20 |
21 | @Column(nullable = false)
22 | private String name;
23 |
24 | @Column(nullable = false)
25 | private Integer price;
26 |
27 | @Column(nullable = false)
28 | private Integer stock;
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/data/repository/QProductRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.data.repository;
2 |
3 | import com.springboot.advanced_jpa.data.entity.Product;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 | import org.springframework.data.querydsl.QuerydslPredicateExecutor;
6 |
7 | // 예제 8.31
8 | public interface QProductRepository extends JpaRepository,
9 | QuerydslPredicateExecutor {
10 |
11 | }
12 |
13 | // Reference (https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/querydsl/QuerydslPredicateExecutor.html)
14 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/data/repository/support/ProductRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.data.repository.support;
2 |
3 | import com.springboot.advanced_jpa.data.entity.Product;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 | import org.springframework.stereotype.Repository;
6 |
7 | // 예제 8.38
8 | // repository 패키지 안에 있는 ProductRepository와 이름이 동일하여 Bean 생성 충돌이 발생하므로 Bean 이름을 지정해줘야함
9 | @Repository("productRepositorySupport")
10 | public interface ProductRepository extends JpaRepository, ProductRepositoryCustom {
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/data/repository/support/ProductRepositoryCustom.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.data.repository.support;
2 |
3 | import com.springboot.advanced_jpa.data.entity.Product;
4 | import java.util.List;
5 |
6 | /**
7 | * 필요한 쿼리를 작성할 메소드를 정의하는 인터페이스
8 | * 예제 8.36
9 | */
10 | public interface ProductRepositoryCustom {
11 |
12 | List findByName(String name);
13 |
14 | }
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/java/com/springboot/advanced_jpa/service/ProductService.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa.service;
2 |
3 |
4 | import com.springboot.advanced_jpa.data.dto.ProductDto;
5 | import com.springboot.advanced_jpa.data.dto.ProductResponseDto;
6 |
7 | public interface ProductService {
8 |
9 | ProductResponseDto getProduct(Long number);
10 |
11 | ProductResponseDto saveProduct(ProductDto productDto);
12 |
13 | ProductResponseDto changeProductName(Long number, String name) throws Exception;
14 |
15 | void deleteProduct(Long number) throws Exception;
16 |
17 | }
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | spring.datasource.driverClassName=org.mariadb.jdbc.Driver
2 | spring.datasource.url=jdbc:mariadb://localhost:3306/springboot
3 | spring.datasource.username=flature
4 | spring.datasource.password=aroundhub12#
5 |
6 | spring.jpa.hibernate.ddl-auto=create
7 | spring.jpa.show-sql=true
8 | spring.jpa.properties.hibernate.format_sql=true
--------------------------------------------------------------------------------
/chapter8_advanced_jpa/src/test/java/com/springboot/advanced_jpa/AdvancedJpaApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.advanced_jpa;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class AdvancedJpaApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter9_relationship/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/chapter9_relationship/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/chapter9_relationship/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/chapter9_relationship/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/RelationshipApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class RelationshipApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(RelationshipApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/config/JpaAuditingConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.config;
2 |
3 | import org.springframework.context.annotation.Configuration;
4 | import org.springframework.data.jpa.repository.config.EnableJpaAuditing;
5 |
6 | @Configuration
7 | @EnableJpaAuditing
8 | public class JpaAuditingConfiguration {
9 |
10 | }
11 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/config/QueryDSLConfiguration.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.config;
2 |
3 | import com.querydsl.jpa.impl.JPAQueryFactory;
4 | import javax.persistence.EntityManager;
5 | import javax.persistence.PersistenceContext;
6 | import org.springframework.context.annotation.Bean;
7 | import org.springframework.context.annotation.Configuration;
8 |
9 | // 예제 7.36
10 | @Configuration
11 | public class QueryDSLConfiguration {
12 |
13 | @PersistenceContext
14 | EntityManager entityManager;
15 |
16 | @Bean
17 | public JPAQueryFactory jpaQueryFactory(){
18 | return new JPAQueryFactory(entityManager);
19 | }
20 |
21 | }
22 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/dto/ProductDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Builder;
5 | import lombok.Data;
6 | import lombok.NoArgsConstructor;
7 | import lombok.ToString;
8 |
9 | @Data
10 | @NoArgsConstructor
11 | @AllArgsConstructor
12 | @ToString
13 | @Builder
14 | public class ProductDto {
15 |
16 | private String name;
17 |
18 | private int price;
19 |
20 | private int stock;
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/dto/ProductResponseDto.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.dto;
2 |
3 | import lombok.AllArgsConstructor;
4 | import lombok.Data;
5 | import lombok.NoArgsConstructor;
6 | import lombok.ToString;
7 |
8 | @Data
9 | @NoArgsConstructor
10 | @AllArgsConstructor
11 | @ToString
12 | public class ProductResponseDto {
13 |
14 | private Long number;
15 |
16 | private String name;
17 |
18 | private int price;
19 |
20 | private int stock;
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/entity/ProductDetail.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.entity;
2 |
3 | import lombok.*;
4 |
5 | import javax.persistence.*;
6 |
7 | // 예제 9.1
8 | @Entity
9 | @Table(name = "product_detail")
10 | @Getter
11 | @Setter
12 | @NoArgsConstructor
13 | @ToString(callSuper = true)
14 | @EqualsAndHashCode(callSuper = true)
15 | public class ProductDetail extends BaseEntity {
16 |
17 | @Id
18 | @GeneratedValue(strategy = GenerationType.IDENTITY)
19 | private Long id;
20 |
21 | private String description;
22 |
23 | @OneToOne //(optional=false) 예제 9.5
24 | @JoinColumn(name = "product_number")
25 | private Product product;
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/repository/CategoryRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.repository;
2 |
3 | import com.springboot.relationship.data.entity.Category;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 |
6 | // 예제 9.18
7 | public interface CategoryRepository extends JpaRepository {
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/repository/ProducerRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.repository;
2 |
3 | import com.springboot.relationship.data.entity.Producer;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 |
6 | // 예제 9.21
7 | public interface ProducerRepository extends JpaRepository {
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/repository/ProductDetailRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.repository;
2 |
3 | import com.springboot.relationship.data.entity.ProductDetail;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 |
6 | // 예제 9.2
7 | public interface ProductDetailRepository extends JpaRepository {
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/repository/ProviderRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.repository;
2 |
3 | import com.springboot.relationship.data.entity.Provider;
4 | import org.springframework.data.jpa.repository.JpaRepository;
5 |
6 | // 예제 9.11
7 | public interface ProviderRepository extends JpaRepository {
8 |
9 | }
10 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/repository/QProductRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.repository;
2 |
3 |
4 | import com.springboot.relationship.data.entity.Product;
5 | import org.springframework.data.jpa.repository.JpaRepository;
6 | import org.springframework.data.querydsl.QuerydslPredicateExecutor;
7 |
8 | public interface QProductRepository extends JpaRepository,
9 | QuerydslPredicateExecutor {
10 |
11 | }
12 |
13 | // Reference (https://docs.spring.io/spring-data/commons/docs/current/api/org/springframework/data/querydsl/QuerydslPredicateExecutor.html)
14 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/repository/support/ProductRepository.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.repository.support;
2 |
3 |
4 | import com.springboot.relationship.data.entity.Product;
5 | import org.springframework.data.jpa.repository.JpaRepository;
6 | import org.springframework.stereotype.Repository;
7 |
8 | // repository 패키지 안에 있는 ProductRepository와 이름이 동일하여 Bean 생성 충돌이 발생하므로 Bean 이름을 지정해줘야함
9 | @Repository("productRepositorySupport")
10 | public interface ProductRepository extends JpaRepository, ProductRepositoryCustom {
11 |
12 | }
13 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/data/repository/support/ProductRepositoryCustom.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.data.repository.support;
2 |
3 |
4 | import com.springboot.relationship.data.entity.Product;
5 | import java.util.List;
6 |
7 | /**
8 | * 필요한 쿼리를 작성할 메소드를 정의하는 인터페이스
9 | */
10 | public interface ProductRepositoryCustom {
11 |
12 | List findByName(String name);
13 |
14 | }
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/service/ProductDetailService.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.service;
2 |
3 | public interface ProductDetailService {
4 |
5 | }
6 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/service/ProductService.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.service;
2 |
3 |
4 | import com.springboot.relationship.data.dto.ProductDto;
5 | import com.springboot.relationship.data.dto.ProductResponseDto;
6 |
7 | public interface ProductService {
8 |
9 | ProductResponseDto getProduct(Long number);
10 |
11 | ProductResponseDto saveProduct(ProductDto productDto);
12 |
13 | ProductResponseDto changeProductName(Long number, String name) throws Exception;
14 |
15 | void deleteProduct(Long number) throws Exception;
16 |
17 | }
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/java/com/springboot/relationship/service/impl/ProductDetailServiceImpl.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship.service.impl;
2 |
3 | import com.springboot.relationship.service.ProductDetailService;
4 |
5 | public class ProductDetailServiceImpl implements ProductDetailService {
6 |
7 | }
8 |
--------------------------------------------------------------------------------
/chapter9_relationship/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | spring.datasource.driverClassName=org.mariadb.jdbc.Driver
2 | spring.datasource.url=jdbc:mariadb://localhost:3306/springboot
3 | spring.datasource.username=flature
4 | spring.datasource.password=aroundhub12#
5 |
6 | spring.jpa.hibernate.ddl-auto=create
7 | spring.jpa.show-sql=true
8 | spring.jpa.properties.hibernate.format_sql=true
--------------------------------------------------------------------------------
/chapter9_relationship/src/test/java/com/springboot/relationship/RelationshipApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.relationship;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class RelationshipApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/cover.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/cover.jpg
--------------------------------------------------------------------------------
/serverBox/.gitignore:
--------------------------------------------------------------------------------
1 | HELP.md
2 | target/
3 | !.mvn/wrapper/maven-wrapper.jar
4 | !**/src/main/**/target/
5 | !**/src/test/**/target/
6 |
7 | ### STS ###
8 | .apt_generated
9 | .classpath
10 | .factorypath
11 | .project
12 | .settings
13 | .springBeans
14 | .sts4-cache
15 |
16 | ### IntelliJ IDEA ###
17 | .idea
18 | *.iws
19 | *.iml
20 | *.ipr
21 |
22 | ### NetBeans ###
23 | /nbproject/private/
24 | /nbbuild/
25 | /dist/
26 | /nbdist/
27 | /.nb-gradle/
28 | build/
29 | !**/src/main/**/build/
30 | !**/src/test/**/build/
31 |
32 | ### VS Code ###
33 | .vscode/
34 |
--------------------------------------------------------------------------------
/serverBox/.mvn/wrapper/maven-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/wikibook/springboot/5ef2089b95ee7b6d8b70793c9cc48d6ab879d41c/serverBox/.mvn/wrapper/maven-wrapper.jar
--------------------------------------------------------------------------------
/serverBox/.mvn/wrapper/maven-wrapper.properties:
--------------------------------------------------------------------------------
1 | distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.3/apache-maven-3.8.3-bin.zip
2 | wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar
3 |
--------------------------------------------------------------------------------
/serverBox/src/main/java/com/springboot/serverbox/ServerBoxApplication.java:
--------------------------------------------------------------------------------
1 | package com.springboot.serverbox;
2 |
3 | import org.springframework.boot.SpringApplication;
4 | import org.springframework.boot.autoconfigure.SpringBootApplication;
5 |
6 | @SpringBootApplication
7 | public class ServerBoxApplication {
8 |
9 | public static void main(String[] args) {
10 | SpringApplication.run(ServerBoxApplication.class, args);
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------
/serverBox/src/main/resources/application.properties:
--------------------------------------------------------------------------------
1 | server.port=9090
2 |
--------------------------------------------------------------------------------
/serverBox/src/test/java/com/springboot/serverbox/ServerBoxApplicationTests.java:
--------------------------------------------------------------------------------
1 | package com.springboot.serverbox;
2 |
3 | import org.junit.jupiter.api.Test;
4 | import org.springframework.boot.test.context.SpringBootTest;
5 |
6 | @SpringBootTest
7 | class ServerBoxApplicationTests {
8 |
9 | @Test
10 | void contextLoads() {
11 | }
12 |
13 | }
14 |
--------------------------------------------------------------------------------