Java 微服务 day01 源代码 SpringBoot的SpringMVC快速入门

Posted 蓝盒子bluebox

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java 微服务 day01 源代码 SpringBoot的SpringMVC快速入门相关的知识,希望对你有一定的参考价值。

Java 微服务day01 源代码 SpringBoot的SpringMVC快速入门(一)
Java 微服务 day01 源代码 Java的配置(二)
Java 微服务 day02 源代码 SpringBoot 属性注入 自动配置 (一)
Java 微服务 day02 源代码 SpringBoot 实战开发 (二)创建相关数据库,搭建服务,搭建普通工程,设置访问后缀以及端口号
Java 微服务 day02 源代码 SpringBoot 实战开发 (三)SpringMVC高级配置:拦截器:HandlerExecutionChain
Java 微服务 day02 源代码 SpringBoot 实战开发 (四)整合JDBC和事务(数据库连接池)
Java 微服务 day02 源代码 SpringBoot 实战开发 (五)整合Mybatis(数据库连接池),通用Mapper整合,业务层整合

一、SpringBoot

1、SpringBoot相关概念

SpringBoot基于Spring4.0设计,不仅继承了Spring框架原有的优秀特性,而且还通过简化配置来进一步简化了Spring应用的整个搭建和开发过程。

另外SpringBoot通过集成大量的框架使得依赖包的版本冲突,以及引用的不稳定性等问题得到了很好的解决。

SpringBoot所具备的特征有:

(1)可以创建独立的Spring应用程序,并且基于其Maven或Gradle插件,可以创建可执行的JARs和WARs;
(2)内嵌Tomcat或Jetty等Servlet容器;
(3)提供自动配置的“starter”项目对象模型(POMS)以简化Maven配置;
(4)尽可能自动配置Spring容器;
(5)提供准备好的特性,如指标、健康检查和外部化配置;
(6)绝对没有代码生成,不需要XML配置。

SpringBoot框架中还有两个非常重要的策略:开箱即用和约定优于配置。

开箱即用,Outofbox,是指在开发过程中,通过在MAVEN项目的pom文件中添加相关依赖包,然后使用对应注解来代替繁琐的XML配置文件以管理对象的生命周期。这个特点使得开发人员摆脱了复杂的配置工作以及依赖的管理工作,更加专注于业务逻辑。

约定优于配置,Convention over configuration,是一种由SpringBoot本身来配置目标结构,由开发者在结构中添加信息的软件设计范式。

这一特点虽降低了部分灵活性,增加了BUG定位的复杂性,但减少了开发人员需要做出决定的数量,同时减少了大量的XML配置,并且可以将代码编译、测试和打包等工作自动化。

SpringBoot应用系统开发模板的基本架构设计从前端到后台进行说明:

前端常使用模板引擎,主要有FreeMarker和Thymeleaf,它们都是用Java语言编写的,

渲染模板并输出相应文本,使得界面的设计与应用的逻辑分离,

同时前端开发还会使用到Bootstrap、AngularJS、JQuery等;

在浏览器的数据传输格式上采用Json,非xml,同时提供RESTfulAPI;
SpringMVC框架用于数据到达服务器后处理请求;
到数据访问层主要有Hibernate、MyBatis、JPA等持久层框架;
数据库常用mysql;开发工具推荐IntelliJIDEA。

二、SpringBoot快速入门

1、创建工程



springboot-demo

2、修改pom.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>com.itzheng.demo</groupId>
    <artifactId>springboot-demo</artifactId>
    <version>1.0.0-SNAPSHOT</version>

    <parent>

        <artifactId>spring-boot-starter-parent</artifactId>
            <groupId>org.springframework.boot</groupId>
        <version>2.0.4.RELEASE</version>

    </parent>

</project>

3、进行SpringMVC开发直接在pom.xml当中添加依赖

    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
    </dependencies>

4、创建相关的类


package com.itzheng;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
@SpringBootApplication
public class BootDemoApplication {
    public static void main(String[] args) {
        SpringApplication.run(BootDemoApplication.class,args);
    }
}

5、运行项目访问项目


运行成功

访问项目
http://localhost:8080/

6、创建对应的控制层


package com.itzheng.web;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ResponseBody;

@Controller
public class HelloController {

    @GetMapping("hello")
    @ResponseBody
    public String hello(){
        return "hello, spring boot !";
    }

}

7、重新运行项目


访问:http://localhost:8080/hello

8、方案二

package com.itzheng.web;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloController {
    @GetMapping("hello")
    public String hello(){
        return "hello, spring boot !";
    }
}

再次运行项目效果一样

以上是关于Java 微服务 day01 源代码 SpringBoot的SpringMVC快速入门的主要内容,如果未能解决你的问题,请参考以下文章

Java 微服务之 SpringCloud快速入门day01 初始SpringCloud

Java 微服务 day01 源代码 Java的配置

Java 微服务 day01 源代码 SpringBoot的SpringMVC快速入门

Java 微服务 day02 源代码 SpringBoot 属性注入 自动配置

Java 微服务 day02 源代码 SpringBoot 实战开发 SpringMVC高级配置:拦截器:HandlerExecutionChain

Java 微服务 day02 源代码 SpringBoot 实战开发 整合JDBC和事务(数据库连接池)