`

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
分享到:
评论

相关推荐

    Spring Boot入门初体验

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

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

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

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

    本人使用的是IEDA2023.3版本,mysql是8.1.0版本

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

    主要介绍了详解SpringBoot+SpringSecurity+jwt整合及初体验,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧

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

    SpringBoot 快速整合MyBatis(去XML化+初体验) SpringBoot 快速整合Mybatis(去XML化+注解进阶) SpringBoot 快速整合Mybatis(去XML化+通用Service) SpringBoot 快速整合SpringDataJPA (优雅篇) 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

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

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

    SpringSecurity初体验之手动配置用户名密码

    创建一个SpringBoot工程,勾选上需要的依赖。 第二步 创建一个名为securityconfig的配置类,该类基础了父类WebSecurityConfigurerAdapter(提供用于创建WebSecurityConfigurer实例的便捷基类。 该实现允许通过覆盖...

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

    源码、课件 1、尚硅谷-SpringBoot高级-缓存-JSR107简介 2、尚硅谷-SpringBoot高级-缓存-Spring缓存抽象简介 3、尚硅谷-SpringBoot高级-缓存-基本环境搭建 4、尚硅谷-SpringBoot高级-缓存-@Cacheable初体验 ...

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

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

    基于SpringBoot+Vue小区物业管理系统设计与实现+毕业论文+搭建视频

    基于SpringBoot+Vue小区物业管理系统设计与实现+毕业论文+搭建视频。本系统是在Java EE的基础上开发的,采用了前后端分离的方式进行开发,使用了主流的后台开发框架Spring Boot,前端使用了Vue的开发框架,数据库...

    聊聊Spring Cloud Cli 初体验

    主要介绍了聊聊Spring Cloud Cli 初体验,SpringBoot CLI 是spring Boot项目的脚手架工具。非常具有实用价值,需要的朋友可以参考下

    Drools规则引擎从入门到精通

    1 Drools简介1.1 Drools的作用1.2 使用规则引擎的优势1.3 规则引擎应用场景2 Drools初体验2.1 构建项目2.2 案例描述 2.3 代码实现3 Drools语法介绍3.1 规则文件的组成3.2 规则体语法结构3.3 Pattern模式匹配 ...

    Flowable从入门到精通

    2.1 Flowable初体验 2.1.1 Flowable是什么? 2.1.2 Flowable 和 Activiti 2.1.3 构建命令行应用程序 2.1.3.1 创建一个流程引擎 2.1.3.2 部署一个流程定义 2.1.3.3 启动一个流程实例 2.1.3.4 查询和完成一个任务 2.1....

    springdatajpa源码.rar

    《SpringDataJpa系列教程》01-初体验(基于springboot2.0.3+MySQL5.7)源码文件

    best-pay-sdk

    预计8月初发布 文档 特别注意 本sdk要求的最低的jdk版本是8 支付时的编码只支持utf-8 如果想贡献代码,请阅读 项目demo 扫码体验 交流方式 qq群(590730230)。目前项目处于刚刚起步开发阶段,欢迎有兴趣的朋友加群...

    mybatis-plus-dynamic-datasource

    mybatis-plus 与多数据源初体验

    SpringCloudLearning_forezp.tar.gz

    史上最简单的SpringCloud教程 | 第十四篇: Spring Cloud Gateway初体验 史上最简单的SpringCloud教程 | 第十五篇: Spring Cloud Gateway 之Predict篇 史上最简单的SpringCloud教程 | 第十六篇: Spring Cloud Gateway...

    MyBlog:个人技术博客

    本人将这个开源项目作为一个springboot的实战练习项目,并为此添加文件上传功能,实现在富文本编辑器编辑文章时,能够插入图片。本项目已经部署与阿里云,作为本人的技术博客 (若无法访问,是因为正在准备案,可...

Global site tag (gtag.js) - Google Analytics