SpringBoot基础回顾-1

  1. SpringBoot基础回顾

1.1 约定优于配置
Build Anything with Spring Boot:Spring Boot is the starting point for building all Spring-based applications. Spring Boot is designed to get you up and running as quickly as possible, with minimal upfront configuration of Spring.
1
​ 上面是引自官网的一段话,大概是说: Spring Boot 是全部基于 Spring 开发的项目的起点。Spring Boot 的设计是为了让你尽量快的跑起来 Spring 应用程序而且尽量减小你的配置文件。
约定优于配置(Convention over Configuration),又称按约定编程,是一种软件设计范式。
本质上是说,系统、类库或框架应该假定合理的默认值,而非要求提供没必要要的配置。好比说模型中有一个名为User的类,那么数据库中对应的表就会默认命名为user。只有在偏离这一个约定的时候,例如想要将该表命名为person,才须要写有关这个名字的配置。
好比平时架构师搭建项目就是限制软件开发随便写代码,制定出一套规范,让开发人员按统一的要求进行开发编码测试之类的,这样就增强了开发效率与审查代码效率。因此说写代码的时候就须要按要求命名,这样统一规范的代码就有良好的可读性与维护性了
约定优于配置简单来理解,就是遵循约定
1.2 SpringBoot概念
1.2.1 spring优缺点分析
优势:
spring是Java企业版(Java Enterprise Edition,JEE,也称J2EE)的轻量级代替品。无需开发重量级的Enterprise JavaBean(EJB),Spring为企业级Java开发提供了一种相对简单的方法,经过依赖注入和面向切面编程,用简单 的Java对象(Plain Old Java Object,POJO)实现了EJB的功能
缺点:
虽然Spring的组件代码是轻量级的,但它的配置倒是重量级的。一开始,Spring用XML配置,并且是不少XML配 置。Spring 2.5引入了基于注解的组件扫描,这消除了大量针对应用程序自身组件的显式XML配置。Spring 3.0引入 了基于Java的配置,这是一种类型安全的可重构配置方式,能够代替XML。
全部这些配置都表明了开发时的损耗。由于在思考Spring特性配置和解决业务问题之间须要进行思惟切换,因此编 写配置挤占了编写应用程序逻辑的时间。和全部框架同样,Spring实用,但与此同时它要求的回报也很多。
除此以外,项目的依赖管理也是一件耗时耗力的事情。在环境搭建时,须要分析要导入哪些库的坐标,并且还须要分析导入与之有依赖关系的其余库的坐标,一旦选错了依赖的版本,随之而来的不兼容问题就会严重阻碍项目的开发进度
1.2.2 SpringBoot解决上述spring问题
SpringBoot对上述Spring的缺点进行的改善和优化,基于约定优于配置的思想,可让开发人员没必要在配置与逻辑 业务之间进行思惟的切换,全身心的投入到逻辑业务的代码编写中,从而大大提升了开发的效率,必定程度上缩短 了项目周期
起步依赖
起步依赖本质上是一个Maven项目对象模型(Project Object Model,POM),定义了对其余库的传递依 赖,这些东西加在一块儿即支持某项功能。
简单的说,起步依赖就是将具有某种功能的坐标打包到一块儿,并提供一些默认的功能。
自动配置
springboot的自动配置,指的是springboot,会自动将一些配置类的bean注册进ioc容器,咱们能够须要的地方使用@autowired或者@resource等注解来使用它。
“自动”的表现形式就是咱们只须要引咱们想用功能的包,相关的配置咱们彻底不用管,springboot会自动注入这些配置bean,咱们直接使用这些bean便可
springboot: 简单、快速、方便地搭建项目;对主流开发框架的无配置集成;极大提升了开发、部署效率
1.3 SpringBoot 案例实现
案例需求:请求Controller中的方法,并将返回值响应到页面
(1)使用Spring Initializr方式构建Spring Boot项目
​ 本质上说,Spring Initializr是一个Web应用,它提供了一个基本的项目结构,可以帮助咱们快速构建一个基础的Spring Boot项目前端

​ Project SDK”用于设置建立项目使用的JDK版本,这里,使用以前初始化设置好的JDK版本便可;在“Choose Initializr Service URL(选择初始化服务地址)”下使用默认的初始化服务地址“https://start.spring.io”进行Spring Boot项目建立(注意使用快速方式建立Spring Boot项目时,所在主机须在联网状态下)
Spring Boot项目就建立好了。建立好的Spring Boot项目结构如图:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-XiGnE2yu-1591582798893)(./images/image-20191225121806057.png )]
​ 使用Spring Initializr方式构建的Spring Boot项目会默认生成项目启动类、存放前端静态资源和页面的文件夹、编写项目配置的配置文件以及进行项目单元测试的测试类
(2) 建立一个用于Web访问的Controller
​ com.lagou包下建立名称为controller的包,在该包下建立一个请求处理控制类HelloController,并编写一个请求处理方法 (注意:将项目启动类SpringBootDemoApplication移动到com.lagou包下)spring

@RestController // 该注解为组合注解,等同于Spring中@Controller+@ResponseBody注解
   public class DemoController {

       @RequestMapping("/demo")
   public String demo(){
      return "你好 spring Boot";
       }

}1234567
(3) 运行项目
​ 运行主程序启动类SpringbootDemoApplication,项目启动成功后,在控制台上会发现Spring Boot项目默认启动的端口号为8080,此时,能够在浏览器上访问“http://localhost:8080/hello”
页面输出的内容是“hello Spring Boot”,至此,构建Spring Boot项目就完成了
附:解决中文乱码:
解决方法
@RequestMapping(produces = "application/json; charset=utf-8")
上了拉勾教育的《Java工程师高薪训练营》,作一下笔记。但愿拉勾能给我推到想去的公司,目标:字节!!数据库