SpringBoot入门培训课件_第1页
SpringBoot入门培训课件_第2页
SpringBoot入门培训课件_第3页
SpringBoot入门培训课件_第4页
SpringBoot入门培训课件_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

SpringBoot入门培训1●主要内容一、springBoot的简介二、springBoot注解三、springBoot应用讲解四、springBoot的发布五、springBoot总结21、springBoot背景多年以来,SpringIO平台饱受非议的一点就是大量的XML配置以及复杂的依赖管理。在2013年的SpringOne2GX会议上,Pivotal的CTOAdrianColyer回应了这些批评,并且特别提到该平台将来的目标之一就是实现免XML配置的开发体验。Boot所实现的功能超出了这个任务的描述,开发人员不仅不再需要编写XML,而且在一些场景中甚至不需要编写繁琐的import语句。在对外公开的beta版本刚刚发布之时,Boot描述了如何使用该框架在140个字符内实现可运行的web应用,从而获得了极大的关注度,该样例发表在tweet上。32、什么是springBoot?1、SpringBoot是由Pivotal团队提供的全新框架,SpringBoot并不是要成为SpringIO平台里面众多“Foundation”层项目的替代者。SpringBoot的目标不在于为已解决的问题域提供新的解决方案,而是为平台带来另一种开发体验,从而简化对这些已有技术的使用。2、该框架使用了特定的方式(继承starter,约定优先于配置)来进行配置,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致力于在蓬勃发展的快速应用开发领域(rapidapplicationdevelopment)成为领导者。

3、SpringBoot是基于Spring4进行设计,承了原有Spring框架的优秀基因。它并不是一个框架,从根本上将,它就是一些库的集合,maven或者gradle项目导入相应依赖即可使用SpringBoot,而且无需自行管理这些库的版本。

42、为什么使用springBoot?1、SpringBoot是为简化Spring项目配置而生,使用它使得jar依赖管理以及应用编译和部署更为简单。SpringBoot提供自动化配置,使用SpringBoot,你只需编写必要的代码和配置必须的属性。

2、使用SpringBoot,只需20行左右的代码即可生成一个基本的SpringWeb应用,并且内置了tomcat,构建的fatJar包通过java-jar就可以直接运行。

3、如下特性使得SpringBoot非常契合微服务的概念,可以结合SpringBoot与SpringCloud和Docker技术来构建微服务并部署到云端:·一个可执行jar即为一个独立服务·很容易加载到容器,每个服务可以在自己的容器(例如docker)中运行·通过一个脚本就可以实现配置与部署,很适合云端部署,并且自动扩展

也更容易

53、springBoot有哪些特性?1、无需手动管理依赖jar包的版本Spring-boot-*的jar包已对一些功能性jar包进行了集成,示例如下:·spring-boot-starter 核心SpringBootstarter,包括自动配置支持,日志和YAML·spring-boot-starter-actuator 生产准备的特性,用于帮你监控和

管理应用·spring-boot-starter-web 对全栈web开发的支持,包括Tomcat和 spring-webmvc·spring-boot-starter-aop 对面向切面编程的支持,包括spring-aop 和AspectJ·spring-boot-starter-jdbc 对JDBC数据库的支持·spring-boot-starter-security 对spring-security的支持63、springBoot有哪些特性?1、无需手动管理依赖jar包的版本Spring-boot-*的jar包已对一些功能性jar包进行了集成,示例如下:·spring-boot-starter 核心SpringBootstarter,包括自动配置支持,日志和YAML·spring-boot-starter-actuator 生产准备的特性,用于帮你监控和

管理应用·spring-boot-starter-web 对全栈web开发的支持,包括Tomcat和 spring-webmvc·spring-boot-starter-aop 对面向切面编程的支持,包括spring-aop 和AspectJ·spring-boot-starter-jdbc 对JDBC数据库的支持·spring-boot-starter-security 对spring-security的支持73、springBoot有哪些特性?1、无需手动管理依赖jar包的版本:·spring-boot-starter-amqp通过spring-rabbit来支持AMQP协议(AdvancedMessageQueuingProtocol)。·spring-boot-starter-ws支持SpringWebServices。·spring-boot-starter-redis支持Redis键值存储数据库,包括spring-redis。·spring-boot-starter-test

支持常规的测试依赖,包括JUnit、Hamcrest、Mockito以及spring-test模块。83、springBoot有哪些特性?2、独立运行的Spring项目SpringBoot默认将应用打包成一个可执行的jar包文件,构建成功后使用java-jar命令即可运行应用。或者在应用项目的主程序中运行main函数即可,不需要依赖tomcat、jetty等外部的应用服务器。其中内置的servlet

Container:此外,你仍然可以部署SpringBoot项目到任何兼容Servlet3.0+的容器。NameServletVersionJavaVersionTomcat83.1Java7+Tomcat73.0Java6+Jetty9.33.1Java8+Jetty9.23.1Java7+Jetty83.0Java6+93、springBoot有哪些特性?3、自动配置,无需xml·SpringBoot尝试根据你添加的jar依赖自动配置你的应用。例如,如果HSQLDB在类路径中,并且你没有手动配置任何db连接bean,则SpringBoot会自动配置一个内存db。

·使用@EnableAutoConfiguration或者@SpringBootApplication注解,配

合@Configuration注解类,即可达到自动配置的目的。·SpringBoot的这种自动配置是非侵入式的,你可以定义自己的配置或bean来替代自动配置的内容。103、springBoot有哪些特性?4、外部化配置SpringBoot可以使用properties文件,YAML文件,环境变量,命令行参数等来外部化配置。属性值可以使用@Value注解直接注入到bean中,并通过Spring的Environment抽象或经过@ConfigurationProperties注解绑定到结构化对象来访问。实例如下:@Component@ConfigurationProperties(prefix="spring.datasource")publicclassApplicationUtil{privateStringname;privateStringurl;}113、springBoot有哪些特性?5、嵌入式servlet容器SpringBoot的web模块内置嵌入的Tomcat,Jetty,Undertow来构建自包含的Servlet容器。web应用打包成可执行jar包时,相应的servlet容器也会被嵌入到应用jar中。并且servlets,filters和listeners都可以通过声明为bean来被容器注册。servlet容器还可以通过外部化配置来相关定制属性,如server.port,server.session.persistence等。application.yml配置server的端口号和session超时时间,需要注意的是,使用.yml时,属性名的值和冒号中间必须有空格,如下:server:port:8888session-timeout:60123、springBoot有哪些特性?6、开启devtools特性·devtools的热部署和自动重启要想在Eclipse中使用Devtools的重启功能,需要将自动编译功能打开。每次保存文件并自动编译后,devtools会检测到classpath内容的修改,并触发应用重启。重启时实际只重新加载了一部分类,因此速度会非常快。详细原理会在后面教程里介绍。·devtools的livereload开启devtools特性的应用在启动时会启动一个livereload的server,在浏览器(如chrome,Firefox)安装livereload插件后,该插件会监测到livereloadserver的更新,并自动刷新页面。13●主要内容一、springBoot的简介二、springBoot注解三、springBoot应用讲解四、springBoot的发布五、springBoot总结143、springBoot注解1、@SpringBootApplication

申明让springboot自动给程序进行必要的配置,这个配置等同于:@Configuration

,@EnableAutoConfiguration

@ComponentScan

三个配置。153、springBoot注解2、@ResponseBody

该注解修饰的函数,会将结果直接填充到HTTP的响应体中,一般用于构建RESTful的api,该注解一般会配合@RequestMapping一起使用。示例代码:@RequestMapping("/test")@ResponseBodypublicStringtest(){return"ok";}163、springBoot注解3、@Controller

用于定义控制器类,在spring

项目中由控制器负责将用户发来的URL请求转发到对应的服务接口(service层),一般这个注解在类中,通常方法需要配合注解@RequestMapping。4、@RestController@ResponseBody和@Controller的合集。173、springBoot注解5、@EnableAutoConfiguration

SpringBoot自动配置(auto-configuration):尝试根据你添加的jar依赖自动配置你的Spring应用。例如,如果你的classpath下存在HSQLDB,并且你没有手动配置任何数据库连接beans,那么我们将自动配置一个内存型(in-memory)数据库”。你可以将@EnableAutoConfiguration或者@SpringBootApplication注解添加到一个@Configuration类上来选择自动配置。如果发现应用了你不想要的特定自动配置类,你可以使用@EnableAutoConfiguration注解的排除属性来禁用它们。183、springBoot注解6、@ComponentScan

表示将该类自动发现(扫描)并注册为Bean,可以自动收集所有的Spring组件,包括@Configuration类。我们经常使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。如果没有配置的话,SpringBoot会扫描启动类所在包下以及子包下的使用了@Service,@Repository等注解的类。193、springBoot注解7、@Configuration

相当于传统的xml配置文件,如果有些第三方库需要用到xml文件,建议仍然通过@Configuration类作为项目的配置主类——可以使用@ImportResource注解加载xml配置文件。@Configuration@EnableAutoConfigurationpublicclassRedisConfig{

@Bean(name="jedisPoolConfig")@ConfigurationProperties(prefix="spring.redis")publicJedisPoolConfiggetRedisConfig(){returnnewJedisPoolConfig();}}203、springBoot注解8、@PropertySource

如果需要有自定义的属性文件需要加载,可以使用该注解进行注入,并用@Value配合使用。@Component@PropertySource(value="classpath:perties")publicclassConfigUtil{ @Value("${hos.id}") privateStringhosId; @Value("${}")privateStringhosName;}213、springBoot注解9、@ImportResource

用来加载xml配置文件。10、@Bean

用@Bean标注方法等价于XML中配置的bean。11、@Value

注入Springbootperties配置的属性的值。

@Value(value="#{message}")privateStringmessage;223、springBoot注解12、Environment

org.springframework.core.env.Environment,环境类,spring3.1以后开始引入。比如JDK环境,Servlet环境,Spring环境等等;每个环境都有自己的配置数据,如System.getProperties()、System.getenv()等可以拿到JDK环境数据;ServletContext.getInitParameter()可以拿到Servlet环境配置数据等等;也就是说Spring抽象了一个Environment来表示环境配置。

在springBoot中使用直接用@Resource注入,即可获得系统配置文件perties/yml的属性值,如果是自定义的配置文件,则需要预先通过@PropertySource等其他注解注入后,才能获取。获取通过getProperty()方法获取。23●主要内容一、springBoot的简介二、springBoot注解三、springBoot应用讲解四、springBoot的发布五、springBoot总结243、springBoot应用讲解1、与MyBatis的集成<dependency><groupId>org.mybatis.spring.boot</groupId><artifactId>mybatis-spring-boot-starter</artifactId><version>1.1.1</version></dependency>2、与Redis的集成<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-redis</artifactId></dependency>3、Junit进行单元测试<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-test</artifactId></dependency>25●主要内容一、springBoot的简介二、springBoot注解三、springBoot应用讲解四、springBoot的发布五、springBoot总结263、springBoot的发布1、将springBoot项目打包成jar

可以使用maven将项目打包成jar文件,并使用java-jar命令运行主main方法,将项目运行起来。273、springBoot的发布2、将springBoot项目打包成war

1.pom文件的命令将<packaging>jar</packaging>修改为war。2、入口类实现SpringBootServletInitializer方法,重写方法:@OverrideprotectedSpringApplicationBuilder configure(SpringApplicationBuilderapplication){returnapplication.sources(Application.class);}

3、这里指定打包的时候不再需要tomcat相关的包

<exclusions><exclusion><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论