SpringBoot

SpringBoot基于Spring的一个整合包,

一、概述

  1. SpringBoot简化开发过程,取代臃肿的XML配置
  2. 快速与其他的框架整合
  3. 迎合微服务(运行在Docker等容器中的服务)的趋势

二、快速搭建SpringBoot项目

  1. 去官网下载一个集成了SpringBoot环境的Eclipse:Spring Tool Suit0(STS),和Eclipse一样的使用,不再罗嗦
  2. 打开STS,New → Spring Starter Project,输入:https://start.spring.io;或者在浏览器中输入此地址,选择需要的环境依赖,如:web、MyBatis,然后下载到本地,解压,从STS导入;
  3. 更新Maven项目,解决报错问题
  4. 新建HelloController类,在这个类上添加注解@RestController,这个@RestController相当于@Controller加上@ResponseBody,所以这个控制器的所有方法都是以JSON的方式返回;
  5. 添加响应方法,在这个方法上添加注解@RequestMapping(name="<req-path>", method=RequestMethod.<req-method>)
  6. 运行带有@SpringBootApplication的类中的main方法:Debug As JavaApplication,项目就欢快的跑起来了。。。

三、SpringBoot项目中的一些注意点

  1. 如果我们在初始化SpringBoot的时候选择了Web,那么SpringBoot项目中的pom文件中就不再需要我们自己去导入SpringMVC的依赖;同理如果初始化的时候选择了MyBatis,那么我们就不要自己导入MyBatis的相关依赖;
  2. 我们以前编写的applicationContext.xml文件就不再需要了,取而代之的是一系列的类,也就是说,以前在泪痣文件中的一个bean标签就对应于现在的一个类,而且在这个类上添加注解@Configuration和@MapperScan("<package-name>"),如:
    • 示例:
      import org.mybatis.spring.annotation.MapperScan;
      import org.springframework.beans.factory.annotation.Value;
      import org.springframework.context.annotation.Bean;
      import org.springframework.context.annotation.Configuration;
      import com.alibaba.druid.pool.DruidDataSource;
      
      @Configuration
      @MapperScan("com.shreker.demo1.dao")
      public class DataSourceConfiguration {
      
          @Value("${jdbc.driverClassName}")
          private String driverClassName;
          @Value("${jdbc.url}")
          private String url;
          @Value("${jdbc.username}")
          private String username;
          @Value("${jdbc.password}")
          private String password;
          
          @Bean("dataSource")
          public DruidDataSource createDataSource() {
              DruidDataSource dataSource = new DruidDataSource();
              dataSource.setDriverClassName(driverClassName);
              dataSource.setUrl(url);
              dataSource.setUsername(username);
              dataSource.setPassword(password);
              return dataSource;
          }
      
      }
      
    • 说明:
      • @Value("<key-in-application.properties>")放在一个成员变量上面表示:从application.properties配置文件中读取对应key的值,注入到当前的成员变量上面!!!注意:@Value不能把值注入到static变量上,可以重写setter方法来曲线救国;
      • 同样的道理创建SessionFactoryConfiguration
  3. application.properties中可以配置项目的一些配置信息,如server.port,server.context-path等
  4. SpringBoot的测试类编写,之前我们在Spring的环境下编写测试类的时候添加了两个注解@RunWith(SpringJUnit4ClassRunner.class)和@ContextConfuguration("classpath:applicationContext.xml"),而在SpringBoot中很类似:@RunWith(SpringRunner.class)和@SpringBootTest,后面的时候都是一样的
  5. 在数据库连接的字符串后面添加useSSL=false
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容