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

下载本文档

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

文档简介

SpringBoot入门培训 主要内容 一、springBoot的简介 二、springBoot注解 三、springBoot应用讲解 四、springBoot的发布 五、springBoot总结 1、springBoot背景 多年以来,Spring IO平台饱受非议的一点就是大量的XML配置以及复杂的依 赖管理。在2013年的SpringOne 2GX会议上,Pivotal的CTO Adrian Colyer回 应了这些批评,并且特别提到该平台将来的目标之一就是实现免XML配置的开 发体验。Boot所实现的功能超出了这个任务的描述,开发人员不仅不再需要 编写XML,而且在一些场景中甚至不需要编写繁琐的import语句。在对外公开 的beta版本刚刚发 布之时,Boot描述了如何使用该框架在140个字符内实现可 运行的web应用,从而获得了极大的关注度,该样例发表在tweet上。 2、什么是springBoot? 1、Spring Boot是由Pivotal团队提供的全新框架,Spring Boot并不是要成 为Spring IO平台里面众多“Foundation”层项目的替代者。Spring Boot的 目标不在于为已解决的问题域提供新的解决方案,而是为平台带来另一 种开发体验,从而简化对这些已有技术的使用。 2、该框架使用了特定的方式(继承starter,约定优先于配置)来进行配置 ,从而使开发人员不再需要定义样板化的配置。通过这种方式,Boot致 力于在蓬勃发展的快速应用开发领域(rapid application development) 成为领导 者。 3、Spring Boot是基于Spring4进行设计,承了原有Spring框架的优秀基 因。它并不是一个框架,从根本上将,它就是一些库的集合,maven或者 gradle项目导入相应依赖即可使用Spring Boot,而且无需自行管理这些 库的版本。 2、为什么使用springBoot? 1、Spring Boot是为简化Spring项目配置而生,使用它使得jar依赖管理以 及应用编译和部署更为简单 。Spring Boot提供自动化配置,使用Spring Boot,你只需编写必要的代码和配置必须的属性。 2、使用Spring Boot,只需20行左右的代码即可生成一个基本的Spring Web应用,并且内置了tomcat,构建的fat Jar包通过java -jar就可以直接 运行。 3、如下特性使得Spring Boot非常契合微服务的概念,可以结合Spring Boot与Spring Cloud和Docker技术来构建微服务并部署到云端: 一个可执行jar即为一个独立服务 很容易加载到容器,每个服务可以在自己的容器(例如docker)中运行 通过一个脚本就可以实现配置与部署,很适合云端部署,并且自动扩展 也更容易 3、springBoot有哪些特性? 1、无需手动管理依赖jar包的版本 Spring-boot-*的jar包已对一些功能性jar包进行了集成,示例如下: spring-boot-starter核心Spring Boot starter,包括自动配置支持,日志 和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 的支持 3、springBoot有哪些特性? 1、无需手动管理依赖jar包的版本 Spring-boot-*的jar包已对一些功能性jar包进行了集成,示例如下: spring-boot-starter核心Spring Boot starter,包括自动配置支持,日志 和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 的支持 3、springBoot有哪些特性? 1、无需手动管理依赖jar包的版本: spring-boot-starter-amqp 通过spring-rabbit来支持AMQP协议(Advanced Message Queuing Protocol)。 spring-boot-starter-ws 支持Spring Web Services。 spring-boot-starter-redis 支持Redis键值存储数据库,包括spring-redis。 spring-boot-starter-test 支持常规的测试依赖,包括JUnit、Hamcrest、Mockito以及spring-test模 块。 3、springBoot有哪些特性? 2、独立运行的Spring项目 Spring Boot默认将应用打包成一个可执行的jar包文件,构建成功后使用 java -jar命令即可运行应用。或者在应用项目的主程序中运行main函数即 可,不需要依赖tomcat、jetty等外部的应用服务器。 其中内置的servlet Container: 此外,你仍然可以部署Spring Boot项目到任何兼容Servlet3.0+的容器。 NameServlet VersionJava Version Tomcat 83.1Java 7+ Tomcat 73.0Java 6+ Jetty 9.33.1Java 8+ Jetty 9.23.1Java 7+ Jetty 83.0Java 6+ 3、springBoot有哪些特性? 3、自动配置,无需xml Spring Boot尝试根据你添加的jar依赖自动配置你的应用。例如,如果 HSQLDB在类路径中,并且你没有手动配置任何db连接bean,则Spring Boot会自动配置一个内存db。 使用EnableAutoConfiguration或者SpringBootApplication注解,配 合Configuration注解类,即可达到自动配置的目的。 Spring Boot的这种自动配置是非侵入式的,你可以定义自己的配置或 bean来替代自动配置的内容。 3、springBoot有哪些特性? 4、外部化配置 Spring Boot可以使用properties文件,YAML文件,环境变量,命令行参 数等来外部化配置。属性值可以使用Value注解直接注入到bean中,并 通过Spring的Environment抽象或经过ConfigurationProperties注解绑 定到结构化对象来访问。实例如下: Component ConfigurationProperties(prefix=“spring.datasource“) public class ApplicationUtil private String name; private String url; 3、springBoot有哪些特性? 5、嵌入式servlet容器 Spring Boot的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: 8888 session-timeout: 60 3、springBoot有哪些特性? 6、开启devtools特性 devtools的热部署和自动重启 要想在Eclipse中使用Devtools的重启功能,需要将自动编译 功能打开。 每次保存文件并自动编译 后,devtools会检测到classpath内容的修改, 并触发应用重启。重启时实际 只重新加载了一部分类,因此速度会非常 快。详细原理会在后面教程里介绍。 devtools的livereload 开启devtools特性的应用在启动时会启动一个livereload的server,在浏 览器(如chrome,Firefox)安装livereload插件后,该插件会监测到 livereload server的更新,并自动刷新页面。 主要内容 一、springBoot的简介 二、springBoot注解 三、springBoot应用讲解 四、springBoot的发布 五、springBoot总结 3、springBoot注解 1、SpringBootApplication 申明让spring boot自动给程序进行必要的配置,这个配置等同于: Configuration ,EnableAutoConfiguration 和 ComponentScan 三 个配置。 3、springBoot注解 2、ResponseBody 该注解修饰的函数,会将结果直接填充到HTTP的响应体中,一般用 于构建RESTful的api,该注解一般会配合RequestMapping一起使用。 示例代码: RequestMapping(“/test“) ResponseBody public String test() return“ok“; 3、springBoot注解 3、Controller 用于定义控制器类,在spring 项目中由控制器负责将用户发来的URL 请求转发到对应的服务接口(service层),一般这个注解在类中,通 常方法需要配合注解RequestMapping。 4、RestController ResponseBody和Controller的合集。 3、springBoot注解 5、EnableAutoConfiguration Spring Boot自动配置(auto-configuration):尝试根据你添加的jar依 赖自动配置你的Spring应用。例如,如果你的classpath下存在HSQLDB ,并且你没有手动配置任何数据库连接beans,那么我们将自动配置一 个内存型(in-memory)数据库”。 你可以将EnableAutoConfiguration或者SpringBootApplication注解 添加到一个Configuration类上来选择自动配置。如果发现应 用了你不 想要的特定自动配置类,你可以使用EnableAutoConfiguration注解的 排除属性来禁用它们。 3、springBoot注解 6、ComponentScan 表示将该类自动发现 (扫描)并注册为Bean,可以自动收集所有的 Spring组件,包括Configuration类。我们经常使用ComponentScan 注解搜索beans,并结合Autowired注解导入。如果没有配置的话, Spring Boot会扫描启动类所在包下以及子包下的使用了 Service,Repository等注解的类。 3、springBoot注解 7、Configuration 相当于传统的xml配置文件,如果有些第三方库需要用到xml文件, 建议仍然通过Configuration类作为项目的配置主类可以使用 ImportResource注解加载xml配置文件。 Configuration EnableAutoConfiguration public class RedisConfig Bean(name=“jedisPoolConfig“) ConfigurationProperties(prefix=“spring.redis“) public JedisPoolConfig getRedisConfig() return new JedisPoolConfig(); 3、springBoot注解 8、 PropertySource 如果需要有自定义的属性文件需要加载,可以使用该注解进行注入, 并用Value配合使用。 Component PropertySource(value = “classpath:perties“) public class ConfigUtil Value(“$hos.id“) private String hosId; Value(“$“) private String hosName; 3、springBoot注解 9、ImportResource 用来加载xml配置文件。 10、Bean 用Bean标注方法等价于XML中配置的bean。 11、Value 注入Spring boot perties配置的属性的值。 Value(value = “#message“) private String message; 3、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()方法获取。 主要内容 一、springBoot的简介 二、springBoot注解 三、springBoot应用讲解 四、springBoot的发布 五、springBoot总结 3、springBoot应用讲解 1、与MyBatis的集成 org.mybatis.spring.boot mybatis-spring-boot-starter 1.1.1 2、与Redis的集成 org.springframework.boot spring-boot-starter-redis 3、Junit进进行单单元测试测试 org.springframework.boot spring-boot-starter-test 主要内容 一、springBoot的简介 二、springBoot注解 三、springBoot应用讲解 四、springBoot的发布 五、springBoot总结 3、springBoot的发布 1、将springBoot项目打包成jar 可以使用maven将项目打包成jar文件,并使用java -jar命令运行主 main方法,将项目运行起来。 3、springBoot的发布 2、将springBoot项目打包成war 1.pom文件的命令将jar修改为war。 2、入口类实现 SpringBootServletInitializer方法,重写方法: Override protected SpringApplicationBuilder configure(SpringApplicationBuilder application) return application.sources(Application.class); 3、这里指定打包的时候不再需要tomcat相关的包 org.springframework.boot spring-boot-starter-tomcat 主要内容 一、springBoot的简介 二、springBoot注解 三、springBoot应用讲解 四、springBoot的发布 五、springBoot总结 3、springBoot总结 1、SpringBoot使配置变简单 多个 一个 AutoWireAutoWire XML XML ConfigConfig setBeansetBean(Bean bean)(Bean bean) Java Java ConfigConfig *.properties*.properties *.xml*.xml Application.ymlApplication.yml ApertiesAperties 3、springBoot总结 2、SpringBoot使部署变简单 YOU CODEYOU CODE 3rd3rd Libraries Libraries EmbeddedEmbedded HTTP Contai

温馨提示

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

最新文档

评论

0/150

提交评论