zoukankan      html  css  js  c++  java
  • SpringBoot实战

    1.springboot简单介绍

      微服务架构

      Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程。

      该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置。  

      通过这种方式,Spring Boot 致力于在蓬勃发展的快速应用开发领域(rapidapplication development)成为领导者。

    2.为什么用springboot

      创建独立的 Spring 应用程序

      嵌入的 Tomcat/Jetty/Undertow 无需部署 WAR 文件

      简化 Maven 配置

      自动配置 Spring

      提供生产就绪型功能,如指标,健康检查和外部配置

      开箱即用,没有代码生成,也无需 XML 配置。

    3.SpringBoot 推荐基础POM文件

    4.常用注解

     

    @RequestMapping:注解提供路由信息。它告诉Spring任何来自"/"路径的HTTP请求都应该被映射到home方法。 

    @RestController注解告诉Spring以字符串的形式渲染结果,并直接返回给调用者。该注解有六个属性: 

    params:指定request中必须包含某些参数值是,才让该方法处理。

    headers:指定request中必须包含某些指定的header值,才能让该方法处理请求。

    value:指定请求的实际地址,指定的地址可以是URI Template 模式。 

    method:指定请求的method类型, GET、POST、PUT、DELETE等。

    consumes:指定处理请求的提交内容类型(Content-Type),如application/json,text/html。

    produces:指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回。

    @EnableAutoConfiguration

    第二个类级别的注解是@EnableAutoConfiguration。这个注解告诉Spring Boot根据添加的jar依赖猜测你想如何配置Spring。由于spring-boot-starter-web添加了Tomcat和Spring MVC,所以auto-configuration将假定正在开发一个web应用并相应地对Spring进行设置。 

    @Configuration

    Spring Boot提倡基于Java的配置。尽管可以使用一个XML源来调用SpringApplication.run(),但官方建议使用@Configuration类作为主要源。一般定义main方法的类也是主要@Configuration的一个很好候选。

    不需要将所有的@Configuration放进一个单独的类。@Import注解可以用来导入其他配置类。另外也可以使用@ComponentScan注解自动收集所有的Spring组件,包括@Configuration类。

    如果需要使用基于XML的配置,官方建议仍旧从一个@Configuration类开始。可以使用附加的@ImportResource注解加载XML配置文件。

    @Configuration注解该类,等价与XML中配置beans;用@Bean标注方法等价于XML中配置bean。

    @ComponentScan(basePackages = "com.yoodb.blog",includeFilters = {@ComponentScan.Filter(Aspect.class)})

    @ComponentScan:表示将该类自动发现扫描组件。如果扫描到有@Component、

    @Controller、@Service等这些注解的类,并注册为Bean,可以自动收集所有的Spring组件,包括@Configuration类。

    使用@ComponentScan注解搜索beans,并结合@Autowired注解导入。可以自动收集所有的Spring组件,包括@Configuration类。如果没有配置,Spring Boot会扫描启动类所在包下以及子包下的使用了@Service,@Repository等注解的类。

    @SpringBootApplication

    很多Spring Boot开发者总是使用@Configuration,@EnableAutoConfiguration和@ComponentScan注解他们的main类。由于这些注解被如此频繁地一块使用(特别是你遵循以上最佳实践时),Spring Boot提供一个方便的@SpringBootApplication选择。

    全局异常处理

    @ControllerAdvice:包含@Component。可以被扫描到。统一处理异常。

    @ExceptionHandler(Exception.class):用在方法上面表示遇到这个异常就执行以下方法。

    5.第一个入门项目:

          项目地址: https://github.com/Oakoak7/oak.git

      IDE:Intellij Idea 2018.1

     

     

    按照以上步骤即可搭建一个SpringBoot框架的项目,然后点击右上角Maven Project,开始下载依赖Jar包。

    配置文件:

      可以将application.properties  改为 application.yml,这样可以使目录层级更清晰。

          

      按照如上写法即可连接数据库。

    启动项目:

      

      直接运行带有红框注解的class中的main方法即可启动项目,这也是SpringBoot快速开发的一种体现。

  • 相关阅读:
    (二分查找 拓展) leetcode 69. Sqrt(x)
    (二分查找 拓展) leetcode 162. Find Peak Element && lintcode 75. Find Peak Element
    (链表) lintcode 219. Insert Node in Sorted Linked List
    (二分查找 拓展) leetcode 34. Find First and Last Position of Element in Sorted Array && lintcode 61. Search for a Range
    (最短路 Floyd) P2910 [USACO08OPEN]寻宝之路Clear And Present Danger 洛谷
    (字符串 数组 递归 双指针) leetcode 344. Reverse String
    (二叉树 DFS 递归) leetcode 112. Path Sum
    (二叉树 DFS 递归) leetcode 101. Symmetric Tree
    (二叉树 递归) leetcode 144. Binary Tree Preorder Traversal
    (二叉树 递归 DFS) leetcode 100. Same Tree
  • 原文地址:https://www.cnblogs.com/pzyin/p/9289484.html
Copyright © 2011-2022 走看看