Spring Boot 创建hello world项目

1.创建项目

最近在学习Spring Boot,这里记录使用IDEA创建Spring Boot的的过程

在1出勾选,选择2,点击Next

这里填写相应的信息,然后Next

这里1是你自己中Maven的路径,这里在之前应该已经在idea中配置好了,这里直接就带过来了,然后为了解决Maven项目速度慢问题,这里点击2处,添加maven property: archetypeCatalog=internal

这里1是项目的名字,2是项目路径,3这里不用管他当然也可以根据自己的需要修改,然后点击Finish,idea就会自动的帮我们创建好简单的Maven项目结构,这里我们看一下,它是这个样子的.

观察项目结构发现里面在main文件夹下面没有java文件夹这里我们手工的创建java文件夹,具体操作步骤如下:

创建好java文件夹后,我们需要将java文件夹设置成Sources Folder:

此时一个简单的Maven Web的目录结构已经成型了,此时我们需要向里面添加Spring Boot的内容

2.添加Spring Boot依赖

首先完善pom.xml文件

这里先设置全局编码和设定java版本:

  1. <properties>
  2. <!--设置统一编码 -->
  3. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  4. <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
  5. <!-- 设置java版本-->
  6. <java.version>1.8</java.version>
  7. </properties>

然后添加Spring Boot的核心依赖,这里我使用的是1.5.6RELEASE这个版本:

  1. <parent>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-parent</artifactId>
  4. <version>1.5.6.RELEASE</version>
  5. </parent>

使用spring-boot-starter-parent后我们就可以无需添加一堆相应的依赖,实现依赖配置最小化

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-web</artifactId>
  4. </dependency>

这是添加spring-boot-starter-web提供对web的支持

最后我们添加Spring Boot的maven插件,并设置好热部署,这样我们就不需要每次修改后再执行一遍项目

  1. <plugin>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-maven-plugin</artifactId>
  4. <dependencies>
  5. <!-- spring热部署-->
  6. <dependency>
  7. <groupId>org.springframework</groupId>
  8. <artifactId>springloaded</artifactId>
  9. <version>1.2.6.RELEASE</version>
  10. </dependency>
  11. </dependencies>
  12. </plugin>

这里之后直接使用mvn spring-boot: run 运行项目

3.创建Spring Boot入口

这里首先制定类文件的文件结构:

  1. +---com.example.demo
  2. +--Application
  3. +---com.example.demo.controller
  4. +--TestController

接着创建资源文件,这里资源文件在resources目录下创建:application.yml

  1. # Server settings
  2. server:
  3. port: 80
  4. address: 127.0.0.1
  5. # SPRING PROFILES
  6. spring:
  7. # HTTP ENCODING
  8. http:
  9. encoding.charset: UTF-8
  10. encoding.enable: true
  11. encoding.force: true

这里是配置服务器的端口,ip地址和编码

创建Application类并创建main方法

  1. @SpringBootApplication
  2. public class Application {
  3. public static void main(String[] args) {
  4. SpringApplication.run(Application.class, args);
  5. }
  6. }

这里Application要使用注解@SpringBootApplication

接着我们创建Controller类:TestController

  1. @RestController
  2. public class TestController {
  3. @RequestMapping("/")
  4. public String test() {
  5. return "Test Hello World!";
  6. }
  7. }

这里TestController使用的注解是@RestController , test()方法使用 @RequestMapping 来设置请求地址

此时执行该Spring Boot项目可以,后在浏览器中输入请求路径,就完成了一个简单的hello world程序:

4.使用Thymeleaf模板

首先在pom.xml中添加依赖:

  1. <!--添加thymeleaf模板引擎-->
  2. <dependency>
  3. <groupId>org.springframework.boot</groupId>
  4. <artifactId>spring-boot-starter-thymeleaf</artifactId>
  5. </dependency>

在application.yml添加配置:

  1. spring:
  2. thymeleaf:
  3. cache: false #Thymeleaf缓存在开发过程中关闭
  4. encoding: utf-8
  5. mode: HTML5
  6. prefix: classpath:/templates/
  7. suffix: .html

在resources创建templates文件夹,这里用来存放模板,模板的静态文件在resources文件夹下创建static存放

这里在templates问价夹下创建模板:

  1. <!DOCTYPE html>
  2. <html xmlns="http://www.w3.org/1999/xhtml" xmlns:th="http://www.thymeleaf.org"
  3. xmlns:sec="http://www.thymeleaf.org/thymeleaf-extras-springsecurity3">
  4. <head>
  5. <title>Hello World!</title>
  6. </head>
  7. <body>
  8. <h1 th:inline="text">Hello Thymeleaf</h1>
  9. <p th:text="${hello}"></p>
  10. </body>
  11. </html>

创建Controller类:

  1. @Controller
  2. @RequestMapping("/test")
  3. public class TempController {
  4. @RequestMapping("/temp")
  5. public String toTemp(HttpServletRequest request) {
  6. request.setAttribute("hello", "hello world!!");
  7. return "tempTest";
  8. }
  9. }

运行一下,在浏览器地址栏输入:http://localhost/test/temp 查看效果:

5.集成JSP

这里我们将有关Thymeleaf模板的依赖和配置先注释掉,这里在pom.xml中添加相关依赖:

  1. <dependency>
  2. <groupId>org.springframework.boot</groupId>
  3. <artifactId>spring-boot-starter-tomcat</artifactId>
  4. </dependency>
  5. <dependency>
  6. <groupId>org.apache.tomcat.embed</groupId>
  7. <artifactId>tomcat-embed-jasper</artifactId>
  8. <version>8.5.16</version>
  9. </dependency>

在application.yml添加配置:

  1. spring:
  2. mvc:
  3. view.prefix: /WEB-INF/jsp/
  4. view.suffix: .jsp

创建Controller类:

  1. @Controller
  2. @RequestMapping("/demo")
  3. public class DemoController {
  4. @RequestMapping("/model")
  5. public String toModel(Map<String, Object> model) {
  6. model.put("model", "Hello Model!!");
  7. return "model";
  8. }
  9. }

最后我们根据yml配置文件中的配置,在WEB-INF文件夹下创建jsp文件夹,在其中创建model.jsp:

  1. <%@ page contentType="text/html;charset=UTF-8" language="java" %>
  2. <html>
  3. <head>
  4. <title>ModelTest</title>
  5. </head>
  6. <body>
  7. ${model}
  8. </body>
  9. </html>

运行项目,在地址栏输入:http://localhost/demo/model

运行结果:

注意

这里要注意,该示例中不能同时支持Thymeleaf和jsp,在使用其中一个时,需将另外一个相关依赖和yml中的配置注释掉,否则会报错500或者404错误

最后附上示例地址:

https://github.com/674803226/spring-boot-demo

Spring Boot 创建hello world项目的更多相关文章

  1. Spring Boot创建一个HelloWorld项目

    目录 Spring Boot 简介 微服务框架 以前使用spring开发web的方式 Spring Boot 启动器介绍 如何创建一个helloword的SpringBoot项目 Spring Boo ...

  2. 【spring boot】5.spring boot 创建web项目并使用jsp作前台页面

    贼烦的是,使用spring boot 创建web项目,然后我再idea下创建的,but 仅仅启动spring boot的启动类,就算整个项目都是好着的,就算是能够进入controller中,也不能成功 ...

  3. 【spring】1.2、Spring Boot创建项目

    Spring Boot创建项目 在1.1中,我们通过"Spring Starter Project"来创建了一个项目,实际上是使用了Pivotal团队提供的全新框架Spring B ...

  4. Spring Kafka整合Spring Boot创建生产者客户端案例

    每天学习一点点 编程PDF电子书.视频教程免费下载:http://www.shitanlife.com/code 创建一个kafka-producer-master的maven工程.整个项目结构如下: ...

  5. spting Boot 创建一个springBoot项目

    spting Boot 创建一个springBoot项目 1)学习springBoot使用软件:IDEA软件(前面的文章有安装idea的过程). 也可以使用另一种方法在https://start.sp ...

  6. Spring Boot构建的Web项目如何在服务端校验表单输入

    本文首发于个人网站:Spring Boot构建的Web项目如何在服务端校验表单输入 这个例子用于演示在Spring Boot应用中如何验证Web 应用的输入,我们将会建立一个简单的Spring MVC ...

  7. Spring框架学习笔记(5)——Spring Boot创建与使用

    Spring Boot可以更为方便地搭建一个Web系统,之后服务器上部署也较为方便 创建Spring boot项目 1. 使用IDEA创建项目 2. 修改groupid和artifact 3. 一路n ...

  8. Spring框架学习笔记(8)——spring boot+mybatis plus+mysql项目环境搭建

    之前写的那篇Spring框架学习笔记(5)--Spring Boot创建与使用,发现有多小细节没有提及,,正好现在又学习了mybatis plus这款框架,打算重新整理一遍,并将细节说清楚 1.通过I ...

  9. Spring Boot 创建 Docker 镜像

    随着越来越多的组织转向容器和虚拟服务器,Docker正成为软件开发工作流程中一个更重要的部分.为此,Spring Boot 2.3中最新的功能之中,提供了为Spring Boot应用程序创建 Dock ...

随机推荐

  1. 关于ListView的setEmptyView没效果的问题

    使用listView或者gridView时,当列表为空时.有时须要显示一个特殊的empty view来提示用户,普通情况下,假设你是继承ListActivity.仅仅要 TextView tv= ne ...

  2. Android 智能问答机器人的实现

    转载请标明出处:http://blog.csdn.net/lmj623565791/article/details/38498353 ,本文出自:[张鸿洋的博客] 今天看到一个ios写的图灵机器人,直 ...

  3. 阳性比例 mysql CASE UNION ALL

    阳性比例 mysql CASE UNION ALL SELECT t.*,t.type_0/all_ FROM ( SELECT FROM_UNIXTIME(create_time,'%Y-%m-%d ...

  4. linux redis tmp redis 安装

    Redis https://redis.io/download yum install make gcc gcc-c++ openssl-devel zlib-devel -y; wget tar - ...

  5. android简易双屏支持【转】

    本文转载自:http://blog.csdn.net/sfrysh/article/details/7463339 抱歉,之前说xorg的exa更新的时候恐怕一直不会更新了,没有做xorg开发了.转向 ...

  6. 【Unity3D】Unity3D SkinnedMeshRenderer换装系统

    转载请注明出处:http://www.cnblogs.com/shamoyuu/p/6505561.html 一.换装原理 游戏角色换装分为以下几步: 1.替换蒙皮网格 2.刷新骨骼 3.替换材质 上 ...

  7. [USACO15DEC]High Card Low Card (Platinum)

    https://www.zybuluo.com/ysner/note/1300791 题面 贝西和她的朋友艾尔西正在玩这个简单的纸牌游戏.游戏有\(2N\)张牌,牌上的数字是\(1\)到\(2N\). ...

  8. C#面向过程之编译原理、变量、运算符

    .net基础:.net与C# .net是一个平台 c#是一门语言 .net的用途a.桌面应用程序 b.网站应用程序 c.专业游戏开发(XBOX360) d.嵌入式设备软件开发 e.智能手机APP开发 ...

  9. 【145】◀▶ .NET Framework类库索引

    C#编程基础: A1 ………… 基础A2 ………… using 关键字A3 ………… as 关键字A4 ………… is 关键字A5 ………… switch 关键字A6 ………… return 语句关键 ...

  10. MySQL基础 — 详细安装

    MySQL--安装 打开MySQL 5.5 安装文件开始: 点击Next 打上勾,再点击Next 点击Custom,说明如下: Typical(典型安装)        Installs the mo ...