`

SpringBoot 初体验(一)

 
阅读更多

       SpringBoot是为了简化Spring应用的创建、运行、调试、部署等出现的,使用它可以坐到专注于Spring应用及业务的开发,而无需过多关注XML的配置【零配置】。

        主要是介绍了Spring和SpringMVC框架,小伙伴们在学习的过程中大概也发现了这两个框架需要我们手动配置的地方非常多,不过做JavaEE开发的小伙伴们肯定也听说过“约定大于配置”这样一句话,就是说系统,类库,框架应   该假定合理的默认值,而非要求提供不必要的配置,可是使用Spring或者SpringMVC的话依然有许多这样的东西需要我们进行配置,这样不仅徒增工作量而且在跨平台部署时容易出问题。OK,由于这些已经存在的问题,Spring      Boot应运而生,使用Spring Boot可以让我们快速创建一个基于Spring的项目,而让这个Spring项目跑起来我们只需要很少的配置就可以了。Spring Boot主要有如下核心功能:

1.独立运行的Spring项目

  Spring Boot可以以jar包的形式来运行,运行一个Spring Boot项目我们只需要通过java -jar xx.jar类运行。非常方便。

2.内嵌Servlet容器

  Spring Boot可以内嵌Tomcat,这样我们无需以war包的形式部署项目。

3.提供starter简化Maven配置

  使用Spring或者SpringMVC我们需要添加大量的依赖,而这些依赖很多都是固定的,这里Spring Boot 通过starter能够帮助我们简化Maven配置。

4.自动配置Spring 
5.准生产的应用监控 
6.无代码生成和xml配置

  OK,关于SpringBoot更详细的优缺点小伙伴们也可以自行搜索,我这里不再罗列,我们还是来看看代码。

 

1、创建WEB项目:

mvn archetype:generate -DgroupId=com.zzstxx.springboot -DartifactId=springboot-helloword -DarchetypeArtifactId=maven-archetype-webapp

目录结构:

2、添加依赖

<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/maven-v4_0_0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>com.zzstxx.springboot</groupId>
	<artifactId>springboot-helloword</artifactId>
	<packaging>war</packaging>
	<version>1.0-SNAPSHOT</version>
	<name>springboot-helloword Maven Webapp</name>
	<url>http://maven.apache.org</url>
	<!-- 公共spring-boot配置,下面依赖jar文件不用在写版本号 -->
	<parent>
		<groupId>org.springframework.boot</groupId>
		<!-- 自动包含以下信息: -->
		<!-- 1.使用Java6编译级别 -->
		<!-- 2.使UTF-8编码 -->
		<!-- 3.实现了通用的测试框架 (JUnit, Hamcrest, Mockito). -->
		<!-- 4.智能资源过滤 -->
		<!-- 5.智能的插件配置(exec plugin, surefire, Git commit ID, shade). -->
		<artifactId>spring-boot-starter-parent</artifactId>
		<!-- spring boot 1.x最后稳定版本 -->
		<version>1.4.1.RELEASE</version>
		<!-- 表示父模块pom的相对路径,这里没有值 -->
		<relativePath />
	</parent>

	<properties>
		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<java.version>1.8</java.version>
	</properties>
	<dependencies>
		<!-- web -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-web</artifactId>
		</dependency>
		<!-- 打包时候排除tomcat -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-tomcat</artifactId>
			<scope>provided</scope>
		</dependency>
		<!-- 测试 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-starter-test</artifactId>
			<!-- 只在test测试里面运行 -->
			<scope>test</scope>
		</dependency>
		<!-- spring boot 热启动 -->
		<dependency>
			<groupId>org.springframework.boot</groupId>
			<artifactId>spring-boot-devtools</artifactId>
			<optional>true</optional>
		</dependency>
	</dependencies>

	<build>
		<finalName>spring-boot-hello-world</finalName>
		<plugins>
			<!-- jdk编译插件 -->
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-compiler-plugin</artifactId>
				<configuration>
					<source>${java.version}</source>
					<target>${java.version}</target>
				</configuration>
			</plugin>
			<!-- spring boot 热启动 -->
			<plugin>
				<groupId>org.springframework.boot</groupId>
				<artifactId>spring-boot-maven-plugin</artifactId>
				<configuration>
					<fork>true</fork>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>

 

3、Application.java 这是我们整个项目的入口类,这个类有一个@SpringBootApplication注解,这是整个Spring Boot的核心注解,它的目的就是开启Spring Boot的自动配置。

package com.zzstxx;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;

/**
 * 说明:建议放到根目录下面,主要用于做一些框架配置
 * 就是@SpringBootApplication:@SpringBootConfiguration+@EnableAutoConfiguration+@ComponentScan等组合在一下
 */
@SpringBootApplication
public class Application {

	public static void main(String[] args) {
		SpringApplication.run(Application.class, args);
	}
}

 4、控制器类,对外提供服务的

package com.zzstxx.springboot;

import java.util.Arrays;
import java.util.List;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

//@RestController就是@Controller+@ResponseBody组合,支持RESTful访问方式,返回结果都是json字符串
@RestController
public class HelloWorldController {
	
	/**
	 * 读取application.properties中的配置信息
	 */
	@Value("${com.zzstxx.unitmc}")
        private String unitMc;

	@RequestMapping("/hello1/one")
	public String hello1() {
		return "Hello World周旭锋"+unitMc;
	}

	@RequestMapping("/hello2/two")
	public List<String> hello2() {
		return Arrays.asList(new String[] { "A", "B", "C" });
	}
}

 5、配置文件application.properties

com.zzstxx.unitmc=郑州索特信息技术有限公司

#日志信息
logging.path=e:/
logging.level.com.favorites=DEBUG
logging.level.org.springframework.web=INFO
logging.level.org.hibernate=ERROR

#访问端口,
server.port=8888
server.context-path=/springboot

 

原文链接:https://blog.csdn.net/u012702547/article/details/53740047

  • 大小: 24.1 KB
分享到:
评论

相关推荐

    头歌springboot初体验

    通过"头歌springboot初体验.pdf"这份文档,你可能会学习如何创建一个基本的Spring Boot项目,了解Maven或Gradle的配置,编写第一个"Hello, World!"程序,理解自动配置的工作原理,并逐步接触Spring Boot的其他特性。...

    头歌Spring Boot初体验.rar

    "头歌Spring Boot初体验"可能是一个文档,旨在引导初学者入门Spring Boot的世界。下面我们将深入探讨Spring Boot的核心特性和如何开始使用它。 1. **简介** Spring Boot是基于Spring框架构建的应用程序的快速启动...

    上面maven工具使用springboot项目初体验的压缩包

    如果`quickstart`包含了一个主类(通常带有`@SpringBootApplication`注解),那么这个类就是应用的入口点。 在Java代码中,我们可能会看到`@RestController`和`@RequestMapping`注解,它们用于创建RESTful API。`@...

    【SpringBoot 2学习笔记】《一》入门初体验.pdf

    1.1、SpringBoot特性介绍 1.2、RESTful风格微服务 1.3、环境准备 1.4、SpringBoot2入门之HelloWorld 1.5、SpringBoot2 HelloWorld分析

    Spring Boot入门初体验

    Boot入门初体验是一门针对初学者准备的课程,讲解了如何一步一步进入Spring?Boot开发,课程采用循序渐进的方式,一个知识点一个知识点的讲解和学习,让初学者不知不觉的掌握各种开发技能,课程包含了主流框架搭建、...

    详解SpringBoot+SpringSecurity+jwt整合及初体验

    SpringBoot是当前最流行的Java框架之一,它提供了便捷的方式来构建基于Web的应用程序。然而,在构建Web应用程序时,安全性是不可忽视的重要方面。因此,本文将详细介绍如何将SpringSecurity和jwt整合到SpringBoot...

    springboot物业管理系统

    SpringBoot物业管理系统是一个基于Java技术和SpringBoot框架构建的应用,旨在提供高效、便捷的物业管理工作流程。SpringBoot以其简洁的配置、快速的开发特性,成为现代企业级应用开发的首选框架之一。本文将深入探讨...

    Springboot入门到精通.pdf

    Spring Boot 是一个旨在简化Spring应用程序初始设置和常规配置的框架,它由Pivotal团队于2013年初开始研发,目前稳定版本为2.0.3 RELEASE。Spring Boot并不是要取代Spring框架,而是作为其增强工具,为Spring开发者...

    SpringBoot 基础教程 基于2.0.0.M5制作

    SpringBoot 快速整合MyBatis(去XML化+初体验) SpringBoot 快速整合Mybatis(去XML化+注解进阶) SpringBoot 快速整合Mybatis(去XML化+通用Service) SpringBoot 快速整合SpringDataJPA (优雅篇) SpringBoot ...

    基于SpringBoot的二手数码商场系统的设计与实现.docx

    然而,由于产品更新换代速度极快,二手数码商品交易市场的需求日益增长,为适应这一趋势,设计并实现了一个基于SpringBoot的二手数码商场系统,旨在提供一个专门针对数码产品的交易平台,提升用户体验,简化商品管理...

    Android代码-springboot-socks

    推荐阅读本教程的三大理由: 文章内容均为原创,结合官方文档和实战经验编写。...SpringBoot 快速整合MyBatis(去XML化 初体验) SpringBoot 快速整合Mybatis(去XML化 注解进阶) SpringBoot 快速整合Mybatis(去XML

    Java微服务架构SpringBoot教学课程课件

    多个PPT课件,涵盖SpringBoot所有常用知识点! Spring Boot Java Persistence APlpptx Spring Boot MyBatis.pptx Spring Boot NoSQLpptx Spring Boot WebSocket.pptx Spring Boot Web篇 (上) pptx ...初体验pptx

    基于SpringBoot的旅游网站的设计与实现-基于SpringBoot的旅游网站的设计与实现论文-java-文档

    本项目基于SpringBoot框架构建了一个旅游网站,旨在提供一站式的旅游服务解决方案。项目的开发和部署涉及到了多个技术和工具的选择。 1. **操作系统**:支持Windows/Mac,确保了跨平台的兼容性。 2. **开发语言**:...

    128元尚硅谷Java视频教程_Spring Boot视频教程(下)整合篇

    4、尚硅谷-SpringBoot高级-缓存-@Cacheable初体验 5、尚硅谷-SpringBoot高级-缓存-缓存工作原理&@Cacheable运行流程 6、尚硅谷-SpringBoot高级-缓存-@Cacheable其他属性 7、尚硅谷-SpringBoot高级-缓存-@CachePut 8...

    springboot基于协同过滤算法的初心宠物医院综合服务平台论文.docx

    初心宠物医院综合服务平台基于 SpringBoot 框架开发,选择轻量级的关系型 MySQL 数据库存储数据。系统主要包括前台信息管理和后台信息管理两个部分。前台实现信息浏览、在线挂号、在线咨询等功能,后台实现资讯管理...

    springboot015基于SpringBoot的在线视频教育平台的设计与实现.zip

    本文将深入探讨如何利用SpringBoot框架来构建这样一个平台,旨在提供高效、便捷的学习体验。 SpringBoot作为Spring框架的简化版,以其快速开发、内置服务器和自动配置等功能,成为了现代企业级应用开发的首选。在...

    springboot宠物医院管理系统

    SpringBoot作为一款轻量级的Java开发框架,因其简洁的配置、快速的开发特性,被广泛应用于各种管理系统中,包括本文将要讨论的“SpringBoot宠物医院管理系统”。这个系统旨在通过高效的信息管理,提升宠物医院的服务...

    基于Springboot+ Shiro+mybatis+Thymeleaf+Bootstra的Java后台管理系统脚手架.zip

    基于Springboot+ Shiro+mybatis+...拿来学习做毕毕设也适合初中级以上JAVA开发人员采取提升技能做原型接私活。 15.系统高度扩展扩展性好,非常适合二次开发。 16.涵盖Java Web主流前沿技术,既适合刚入坑的IT菜鸟。

    基于SpringBoot网上超市管理系统

    SpringBoot支持Thymeleaf、Freemarker等模板引擎,可以生成动态的网页内容,提供友好的用户体验。 总的来说,这个基于SpringBoot的网上超市管理系统涵盖了Web开发的多个方面,包括后端服务、数据库设计、前端界面...

    springboot505基于Springboot的网上宠物店系统的设计与实现pf.zip

    本文将深入探讨一个基于Springboot框架的网上宠物店系统的开发过程,旨在提供一种高效、易维护的在线宠物商品销售平台。 Springboot作为Java领域的轻量级框架,以其快速启动、内置Tomcat服务器、自动配置等功能深受...

Global site tag (gtag.js) - Google Analytics