{"id":102226,"date":"2021-05-17T11:00:00","date_gmt":"2021-05-17T08:00:00","guid":{"rendered":"https:\/\/examples.javacodegeeks.com\/?p=102226"},"modified":"2022-02-24T11:48:12","modified_gmt":"2022-02-24T09:48:12","slug":"spring-initializr-tutorial","status":"publish","type":"post","link":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/","title":{"rendered":"Spring Initializr Tutorial"},"content":{"rendered":"<p>Welcome, in this tutorial, we will see how to use <a href=\"https:\/\/start.spring.io\/\" target=\"_blank\" rel=\"noopener\">Spring Initializr<\/a>.<\/p>\n<h2 class=\"wp-block-heading\" id=\"h-1-introduction\">1. Introduction<\/h2>\n<ul class=\"wp-block-list\">\n<li><strong>Spring Initializr<\/strong> is a web UI provided by the spring framework to easily create the spring project structure<\/li>\n<li>The initializer helps to speed up the groundwork required for the project structure such as identifying the spring boot version, maven libraries, plugins, creating a folder structure, programming language, etc<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\" id=\"h-1-1-spring-initializr-modules\">1.1 Spring Initializr modules<\/h3>\n<p>The spring initializr consists of the following modules \u2013<\/p>\n<ul class=\"wp-block-list\">\n<li><strong>initializr-actuator<\/strong>: Optional module that provides additional information and statistics on project generation<\/li>\n<li><strong>initializr-bom<\/strong>: BOM stands for Bill of Materials. Provides easy dependency management for the project<\/li>\n<li><strong>initializr-docs<\/strong>: Module to provide the documentation<\/li>\n<li><strong>initializr-generator<\/strong>: Core project generation library<\/li>\n<li><strong>initializr-generator-spring<\/strong>: Optional module defining the typical spring boot project conventions. Can be reused or replaced by own conventions<\/li>\n<li><strong> initializr-generator-test<\/strong>: Provides a test infrastructure for the project generation<\/li>\n<li><strong>initializr-metadata<\/strong>: Provides metadata infrastructure for various aspects of the project<\/li>\n<li><strong>initializr-version-resolver<\/strong>: Optional module to extract version number for an arbitrary POM<\/li>\n<li><strong>initializr-web<\/strong>: Provides web endpoints for the third party clients<\/li>\n<\/ul>\n<h3 class=\"wp-block-heading\" id=\"h-1-2-supported-interface\">1.2 Supported interface<\/h3>\n<p>Once you have downloaded the project from the spring initializer interface you can use the IDE of your choice such as IntelliJ, Eclipse, etc. I am using <a href=\"https:\/\/www.jetbrains.com\/idea\/\" target=\"_blank\" rel=\"noopener\">IntelliJ<\/a> as my preferred IDE.<\/p>\n<h2 class=\"wp-block-heading\" id=\"h-2-generating-a-project\">2. Generating a project<\/h2>\n<p>To generate a spring project via the spring initializr. Go to <a href=\"https:\/\/start.spring.io\/\">Spring Initializr<\/a> interface and it will open an interface as shown in Fig. 1.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img1.jpg\"><img decoding=\"async\" width=\"785\" height=\"487\" src=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img1.jpg\" alt=\"\" class=\"wp-image-102227\" srcset=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img1.jpg 785w, https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img1-300x186.jpg 300w, https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img1-768x476.jpg 768w\" sizes=\"(max-width: 785px) 100vw, 785px\" \/><\/a><figcaption>Fig. 1: Spring initializr website<\/figcaption><\/figure>\n<\/div>\n<p>Select the project type, programming language (Java is selected by default), and the Spring boot version you want to use (the latest version is selected by default). In addition, we will also specify the project metadata such as artifact, group, project name, package name, project packaging (such as jar or war), and a specific Java version we want to use.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img2.jpg\"><img decoding=\"async\" width=\"746\" height=\"677\" src=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img2.jpg\" alt=\"\" class=\"wp-image-102228\" srcset=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img2.jpg 746w, https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img2-300x272.jpg 300w\" sizes=\"(max-width: 746px) 100vw, 746px\" \/><\/a><figcaption>Fig. 2: Project and Metadata configuration<\/figcaption><\/figure>\n<\/div>\n<p>In the next step add the required dependencies. Click the Add dependencies button and a pop-up list of dependencies will appear. You are free to search for dependencies and select the required ones. Remember to press the <code>Ctrl<\/code> button if you would like to add more than one dependency in a single go. Once all dependencies are selected they will under the <em>Dependencies<\/em> section as shown in Fig. 3.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img3.jpg\"><img decoding=\"async\" width=\"731\" height=\"561\" src=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img3.jpg\" alt=\"\" class=\"wp-image-102229\" srcset=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img3.jpg 731w, https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img3-300x230.jpg 300w\" sizes=\"(max-width: 731px) 100vw, 731px\" \/><\/a><figcaption>Fig. 3: Adding project dependencies<\/figcaption><\/figure>\n<\/div>\n<p>Once everything is done click on the <em>Generate<\/em> button to download the zip file based on the selections made in the Spring Intializr interface.<div style=\"display:inline-block; margin: 15px 0;\"> <div id=\"adngin-JavaCodeGeeks_incontent_video-0\" style=\"display:inline-block;\"><\/div> <\/div><\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img4.jpg\"><img decoding=\"async\" width=\"645\" height=\"221\" src=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img4.jpg\" alt=\"\" class=\"wp-image-102230\" srcset=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img4.jpg 645w, https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-demo-guide-img4-300x103.jpg 300w\" sizes=\"(max-width: 645px) 100vw, 645px\" \/><\/a><figcaption>Fig. 4: Downloaded project<\/figcaption><\/figure>\n<\/div>\n<h2>3. Run Spring Initializr generated project<\/h2>\n<p>You can import the generated project to any IDE of your choice. I will use the IntelliJ IDE to import this project into the IDE. Once the project is successfully imported it will be shown as in Fig. 5.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-project-structure-demo-guide-img1.jpg\"><img decoding=\"async\" width=\"313\" height=\"342\" src=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-project-structure-demo-guide-img1.jpg\" alt=\"\" class=\"wp-image-102231\" srcset=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-project-structure-demo-guide-img1.jpg 313w, https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-project-structure-demo-guide-img1-275x300.jpg 275w\" sizes=\"(max-width: 313px) 100vw, 313px\" \/><\/a><figcaption>Fig. 5: Imported project structure<\/figcaption><\/figure>\n<\/div>\n<h2>4. Creating a Spring boot application<\/h2>\n<p>Once the project is successfully imported into the IDE you can refer to the below steps to add some sample code to the application.<\/p>\n<h3>4.1 Maven Dependencies<\/h3>\n<p>Let us validate the dependencies added via the Spring Initializr web interface. The dependencies added via the web interface will be present in the <code>pom.xml<\/code> file.<\/p>\n<p><span style=\"text-decoration: underline\"><em>pom.xml<\/em><\/span><\/p>\n<pre class=\"brush:xml; wrap-lines:false;\">&lt;?xml version=\"1.0\" encoding=\"UTF-8\"?&gt;\n&lt;project xmlns:xsi=\"http:\/\/www.w3.org\/2001\/XMLSchema-instance\" xmlns=\"http:\/\/maven.apache.org\/POM\/4.0.0\"\n         xsi:schemaLocation=\"http:\/\/maven.apache.org\/POM\/4.0.0 https:\/\/maven.apache.org\/xsd\/maven-4.0.0.xsd\"&gt;\n    &lt;modelVersion&gt;4.0.0&lt;\/modelVersion&gt;\n    &lt;parent&gt;\n        &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n        &lt;artifactId&gt;spring-boot-starter-parent&lt;\/artifactId&gt;\n        &lt;version&gt;2.4.5&lt;\/version&gt;\n        &lt;relativePath\/&gt; &lt;!-- lookup parent from repository --&gt;\n    &lt;\/parent&gt;\n    &lt;groupId&gt;com.javacodegeek&lt;\/groupId&gt;\n    &lt;artifactId&gt;com.springboot.initializr&lt;\/artifactId&gt;\n    &lt;version&gt;0.0.1-SNAPSHOT&lt;\/version&gt;\n    &lt;name&gt;com.springboot.initializr&lt;\/name&gt;\n    &lt;description&gt;Demo project for Spring Boot&lt;\/description&gt;\n    &lt;properties&gt;\n        &lt;java.version&gt;1.8&lt;\/java.version&gt;\n    &lt;\/properties&gt;\n    &lt;dependencies&gt;\n        &lt;dependency&gt;\n            &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n            &lt;artifactId&gt;spring-boot-starter-data-jpa&lt;\/artifactId&gt;\n        &lt;\/dependency&gt;\n        &lt;dependency&gt;\n            &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n            &lt;artifactId&gt;spring-boot-starter-web&lt;\/artifactId&gt;\n        &lt;\/dependency&gt;\n\n        &lt;dependency&gt;\n            &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n            &lt;artifactId&gt;spring-boot-devtools&lt;\/artifactId&gt;\n            &lt;scope&gt;runtime&lt;\/scope&gt;\n            &lt;optional&gt;true&lt;\/optional&gt;\n        &lt;\/dependency&gt;\n        &lt;dependency&gt;\n            &lt;groupId&gt;com.h2database&lt;\/groupId&gt;\n            &lt;artifactId&gt;h2&lt;\/artifactId&gt;\n            &lt;scope&gt;runtime&lt;\/scope&gt;\n        &lt;\/dependency&gt;\n        &lt;dependency&gt;\n            &lt;groupId&gt;org.projectlombok&lt;\/groupId&gt;\n            &lt;artifactId&gt;lombok&lt;\/artifactId&gt;\n            &lt;optional&gt;true&lt;\/optional&gt;\n        &lt;\/dependency&gt;\n        &lt;dependency&gt;\n            &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n            &lt;artifactId&gt;spring-boot-starter-test&lt;\/artifactId&gt;\n            &lt;scope&gt;test&lt;\/scope&gt;\n        &lt;\/dependency&gt;\n    &lt;\/dependencies&gt;\n\n    &lt;build&gt;\n        &lt;plugins&gt;\n            &lt;plugin&gt;\n                &lt;groupId&gt;org.springframework.boot&lt;\/groupId&gt;\n                &lt;artifactId&gt;spring-boot-maven-plugin&lt;\/artifactId&gt;\n                &lt;configuration&gt;\n                    &lt;excludes&gt;\n                        &lt;exclude&gt;\n                            &lt;groupId&gt;org.projectlombok&lt;\/groupId&gt;\n                            &lt;artifactId&gt;lombok&lt;\/artifactId&gt;\n                        &lt;\/exclude&gt;\n                    &lt;\/excludes&gt;\n                &lt;\/configuration&gt;\n            &lt;\/plugin&gt;\n        &lt;\/plugins&gt;\n    &lt;\/build&gt;\n\n&lt;\/project&gt;\n<\/pre>\n<h3>4.2 Application properties file<\/h3>\n<p>Creating a properties file in the <code>resources<\/code> folder and add the following code to it. You are free to change the details as per your wish.<\/p>\n<p><span style=\"text-decoration: underline\"><em>application.properties<\/em><\/span><\/p>\n<pre class=\"brush:plain; wrap-lines:false;\">server.port=9090\nspring.application.name=spring-initializr-application\n#h2 configuration\nspring.datasource.driver-class-name=org.h2.Driver\nspring.datasource.url=jdbc:h2:mem:testdb\nspring.datasource.username=sa\nspring.datasource.password=\n#h2 console settings\n#browser url = http:\/\/localhost:9090\/h2-console\nspring.h2.console.path=\/h2-console\nspring.h2.console.enabled=true\n#spring jpa settings\nspring.jpa.database-platform=org.hibernate.dialect.H2Dialect\nspring.jpa.hibernate.ddl-auto=create-drop\nspring.jpa.show-sql=true\n<\/pre>\n<h3>4.3 Java Classes<\/h3>\n<p>Let us write the classes involved in this application.<\/p>\n<h4>4.3.1 Implementation\/Main class<\/h4>\n<p>Add the following code to the main class to bootstrap the application from the main method. Always remember, the entry point of the spring boot application is the class containing <code>@SpringBootApplication<\/code> annotation and the static main method.<\/p>\n<p><span style=\"text-decoration: underline\"><em>Application.java<\/em><\/span><\/p>\n<pre class=\"brush:java; wrap-lines:false;\">package com.javacodegeek.demo;\n\nimport lombok.extern.slf4j.Slf4j;\nimport org.springframework.boot.SpringApplication;\nimport org.springframework.boot.autoconfigure.SpringBootApplication;\n\n\/\/lombok annotation\n@Slf4j\n\/\/spring annotation\n@SpringBootApplication\npublic class Application {\n\n    public static void main(String[] args) {\n        SpringApplication.run(Application.class, args);\n        log.info(\"Application started successfully.\");\n    }\n}\n<\/pre>\n<h4>4.3.2 Controller class<\/h4>\n<p>Add the following code to the controller class which consists of an HTTP GET endpoint to fetch the employees from the database and show it to the user. You can the endpoint in the browser or via the <a href=\"https:\/\/www.postman.com\/\" target=\"_blank\" rel=\"noopener\">postman<\/a> tool.<\/p>\n<p><span style=\"text-decoration: underline\"><em>EmployeeController.java<\/em><\/span><\/p>\n<pre class=\"brush:java; wrap-lines:false;\">package com.javacodegeek.demo.controller;\n\nimport com.javacodegeek.demo.model.Employee;\nimport com.javacodegeek.demo.service.EmployeeService;\nimport org.springframework.beans.factory.annotation.Autowired;\nimport org.springframework.http.HttpStatus;\nimport org.springframework.web.bind.annotation.GetMapping;\nimport org.springframework.web.bind.annotation.RequestMapping;\nimport org.springframework.web.bind.annotation.ResponseStatus;\nimport org.springframework.web.bind.annotation.RestController;\n\nimport java.util.List;\n\n\/\/spring annotations\n@RestController\n@RequestMapping(\"\/api\")\npublic class EmployeeController {\n\n    @Autowired\n    EmployeeService service;\n\n    \/\/http:\/\/localhost:9090\/api\/getall\n    @GetMapping(\"\/getall\")\n    @ResponseStatus(HttpStatus.OK)\n    public List&lt;Employee&gt; getEmployees() {\n        return service.getEmployees();\n    }\n}\n<\/pre>\n<p>For brevity, we will skip the other classes&#8217; like model, service, and repository as these classes contain a simple code to either persist the employee data into the database or get the data from the database.<\/p>\n<ul>\n<li><code>Employee.java<\/code> &#8211; Entity class that will be persisted in the database<\/li>\n<li><code>EmployeeRepository.java<\/code> &#8211; Repository interface that extends the <code>JpaRepository<\/code> interface to perform the SQL operations<\/li>\n<li><code>EmployeeService.java<\/code> &#8211; Service class that interact with the DAO layer methods<\/li>\n<li><code>DefaultEmployeesLoader.java<\/code> &#8211; Bootstrap class to populate dummy data to the h2 database once the application is started successfully<\/li>\n<\/ul>\n<h2>5. Run the application<\/h2>\n<p>To run this application locally you can right-click on the <code>Application.java<\/code> class, <code>Run As -&gt; Java Application<\/code>.<\/p>\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large\"><a href=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-project-run-demo-guide-img1.jpg\"><img decoding=\"async\" width=\"511\" height=\"464\" src=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-project-run-demo-guide-img1.jpg\" alt=\"spring initializr - project run\" class=\"wp-image-102232\" srcset=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-project-run-demo-guide-img1.jpg 511w, https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/spring-initializr-project-run-demo-guide-img1-300x272.jpg 300w\" sizes=\"(max-width: 511px) 100vw, 511px\" \/><\/a><figcaption>Fig. 6: Project run<\/figcaption><\/figure>\n<\/div>\n<p>Once the application is started successfully it would expose the following endpoint on the port number \u2013 <em>9090<\/em> and you can hit them in the browser for the testing purpose.<\/p>\n<p><span style=\"text-decoration: underline;\"><em>Application endpoints<\/em><\/span><\/p>\n<pre class=\"brush:plain; wrap-lines:false;\">-- HTTP GET : Get all employees endpoint --\nhttp:\/\/localhost:9090\/api\/getall\n<\/pre>\n<p>That is all for this tutorial and I hope the article served you whatever you were looking for. Happy Learning and do not forget to share!<\/p>\n<h2>6. Summary<\/h2>\n<p>In this section, you learned,<\/p>\n<ul>\n<li>Introduction to Spring Initializr<\/li>\n<li>Steps to create a simple spring boot application structure using Spring Initializr web interface<\/li>\n<li>Steps to add simple programming code in the spring boot application<\/li>\n<\/ul>\n<p>You can download the sample application as an Eclipse project in the <a href=\"#projectDownload\">Downloads<\/a> section.<\/p>\n<h2><a name=\"projectDownload\"><\/a>7. Download the Project<\/h2>\n<p>This was an example to show how to use the Spring Initializr web interface.<\/p>\n<div class=\"download\"><strong>Download<\/strong><br \/>You can download the full source code of this example here: <a href=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2021\/05\/Spring-Initializr-Tutorial.zip\" target=\"_blank\" rel=\"noopener\"><strong>Spring Initializr Tutorial<\/strong><\/a><\/div>\n<p><strong>Last updated on Feb. 24th, 2022<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Welcome, in this tutorial, we will see how to use Spring Initializr. 1. Introduction Spring Initializr is a web UI provided by the spring framework to easily create the spring project structure The initializer helps to speed up the groundwork required for the project structure such as identifying the spring boot version, maven libraries, plugins, &hellip;<\/p>\n","protected":false},"author":119,"featured_media":1248,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[52],"tags":[],"class_list":["post-102226","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-spring"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v26.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Spring Initializr Tutorial - Java Code Geeks<\/title>\n<meta name=\"description\" content=\"Welcome, in this tutorial, we will see how to use Spring Initializr. 1. Introduction Spring Initializr is a web UI provided by the spring framework to\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Spring Initializr Tutorial - Java Code Geeks\" \/>\n<meta property=\"og:description\" content=\"Welcome, in this tutorial, we will see how to use Spring Initializr. 1. Introduction Spring Initializr is a web UI provided by the spring framework to\" \/>\n<meta property=\"og:url\" content=\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/\" \/>\n<meta property=\"og:site_name\" content=\"Examples Java Code Geeks\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/javacodegeeks\" \/>\n<meta property=\"article:published_time\" content=\"2021-05-17T08:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2022-02-24T09:48:12+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"150\" \/>\n\t<meta property=\"og:image:height\" content=\"150\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Yatin\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:site\" content=\"@javacodegeeks\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Yatin\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"6 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/\"},\"author\":{\"name\":\"Yatin\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/9874407a37b028e8be3276e2b5960d13\"},\"headline\":\"Spring Initializr Tutorial\",\"datePublished\":\"2021-05-17T08:00:00+00:00\",\"dateModified\":\"2022-02-24T09:48:12+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/\"},\"wordCount\":872,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\"},\"image\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg\",\"articleSection\":[\"spring\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/\",\"name\":\"Spring Initializr Tutorial - Java Code Geeks\",\"isPartOf\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg\",\"datePublished\":\"2021-05-17T08:00:00+00:00\",\"dateModified\":\"2022-02-24T09:48:12+00:00\",\"description\":\"Welcome, in this tutorial, we will see how to use Spring Initializr. 1. Introduction Spring Initializr is a web UI provided by the spring framework to\",\"breadcrumb\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#primaryimage\",\"url\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg\",\"contentUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg\",\"width\":150,\"height\":150},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/examples.javacodegeeks.com\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Java Development\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Enterprise Java\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/\"},{\"@type\":\"ListItem\",\"position\":4,\"name\":\"spring\",\"item\":\"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/spring\/\"},{\"@type\":\"ListItem\",\"position\":5,\"name\":\"Spring Initializr Tutorial\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#website\",\"url\":\"https:\/\/examples.javacodegeeks.com\/\",\"name\":\"Java Code Geeks\",\"description\":\"Java Examples and Code Snippets\",\"publisher\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\"},\"alternateName\":\"JCG\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/examples.javacodegeeks.com\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#organization\",\"name\":\"Exelixis Media P.C.\",\"url\":\"https:\/\/examples.javacodegeeks.com\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"contentUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png\",\"width\":864,\"height\":246,\"caption\":\"Exelixis Media P.C.\"},\"image\":{\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/javacodegeeks\",\"https:\/\/x.com\/javacodegeeks\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/9874407a37b028e8be3276e2b5960d13\",\"name\":\"Yatin\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2023\/09\/cropped-Yatin-Batra_avatar_1515758148-96x96.jpg\",\"contentUrl\":\"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2023\/09\/cropped-Yatin-Batra_avatar_1515758148-96x96.jpg\",\"caption\":\"Yatin\"},\"description\":\"An experience full-stack engineer well versed with Core Java, Spring\/Springboot, MVC, Security, AOP, Frontend (Angular &amp; React), and cloud technologies (such as AWS, GCP, Jenkins, Docker, K8).\",\"sameAs\":[\"https:\/\/www.javacodegeeks.com\"],\"url\":\"https:\/\/examples.javacodegeeks.com\/author\/yatin-batra\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Spring Initializr Tutorial - Java Code Geeks","description":"Welcome, in this tutorial, we will see how to use Spring Initializr. 1. Introduction Spring Initializr is a web UI provided by the spring framework to","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/","og_locale":"en_US","og_type":"article","og_title":"Spring Initializr Tutorial - Java Code Geeks","og_description":"Welcome, in this tutorial, we will see how to use Spring Initializr. 1. Introduction Spring Initializr is a web UI provided by the spring framework to","og_url":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/","og_site_name":"Examples Java Code Geeks","article_publisher":"https:\/\/www.facebook.com\/javacodegeeks","article_published_time":"2021-05-17T08:00:00+00:00","article_modified_time":"2022-02-24T09:48:12+00:00","og_image":[{"width":150,"height":150,"url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg","type":"image\/jpeg"}],"author":"Yatin","twitter_card":"summary_large_image","twitter_creator":"@javacodegeeks","twitter_site":"@javacodegeeks","twitter_misc":{"Written by":"Yatin","Est. reading time":"6 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#article","isPartOf":{"@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/"},"author":{"name":"Yatin","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/9874407a37b028e8be3276e2b5960d13"},"headline":"Spring Initializr Tutorial","datePublished":"2021-05-17T08:00:00+00:00","dateModified":"2022-02-24T09:48:12+00:00","mainEntityOfPage":{"@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/"},"wordCount":872,"commentCount":0,"publisher":{"@id":"https:\/\/examples.javacodegeeks.com\/#organization"},"image":{"@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg","articleSection":["spring"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/","url":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/","name":"Spring Initializr Tutorial - Java Code Geeks","isPartOf":{"@id":"https:\/\/examples.javacodegeeks.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#primaryimage"},"image":{"@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#primaryimage"},"thumbnailUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg","datePublished":"2021-05-17T08:00:00+00:00","dateModified":"2022-02-24T09:48:12+00:00","description":"Welcome, in this tutorial, we will see how to use Spring Initializr. 1. Introduction Spring Initializr is a web UI provided by the spring framework to","breadcrumb":{"@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#primaryimage","url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg","contentUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2012\/12\/spring-logo.jpg","width":150,"height":150},{"@type":"BreadcrumbList","@id":"https:\/\/examples.javacodegeeks.com\/spring-initializr-tutorial\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/examples.javacodegeeks.com\/"},{"@type":"ListItem","position":2,"name":"Java Development","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/"},{"@type":"ListItem","position":3,"name":"Enterprise Java","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/"},{"@type":"ListItem","position":4,"name":"spring","item":"https:\/\/examples.javacodegeeks.com\/category\/java-development\/enterprise-java\/spring\/"},{"@type":"ListItem","position":5,"name":"Spring Initializr Tutorial"}]},{"@type":"WebSite","@id":"https:\/\/examples.javacodegeeks.com\/#website","url":"https:\/\/examples.javacodegeeks.com\/","name":"Java Code Geeks","description":"Java Examples and Code Snippets","publisher":{"@id":"https:\/\/examples.javacodegeeks.com\/#organization"},"alternateName":"JCG","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/examples.javacodegeeks.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/examples.javacodegeeks.com\/#organization","name":"Exelixis Media P.C.","url":"https:\/\/examples.javacodegeeks.com\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/","url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","contentUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2022\/06\/exelixis-logo.png","width":864,"height":246,"caption":"Exelixis Media P.C."},"image":{"@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/javacodegeeks","https:\/\/x.com\/javacodegeeks"]},{"@type":"Person","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/9874407a37b028e8be3276e2b5960d13","name":"Yatin","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/examples.javacodegeeks.com\/#\/schema\/person\/image\/","url":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2023\/09\/cropped-Yatin-Batra_avatar_1515758148-96x96.jpg","contentUrl":"https:\/\/examples.javacodegeeks.com\/wp-content\/uploads\/2023\/09\/cropped-Yatin-Batra_avatar_1515758148-96x96.jpg","caption":"Yatin"},"description":"An experience full-stack engineer well versed with Core Java, Spring\/Springboot, MVC, Security, AOP, Frontend (Angular &amp; React), and cloud technologies (such as AWS, GCP, Jenkins, Docker, K8).","sameAs":["https:\/\/www.javacodegeeks.com"],"url":"https:\/\/examples.javacodegeeks.com\/author\/yatin-batra\/"}]}},"_links":{"self":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/102226","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/users\/119"}],"replies":[{"embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/comments?post=102226"}],"version-history":[{"count":0,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/posts\/102226\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/media\/1248"}],"wp:attachment":[{"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/media?parent=102226"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/categories?post=102226"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/examples.javacodegeeks.com\/wp-json\/wp\/v2\/tags?post=102226"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}