springboot入门
1、SpringBoot是什么?
Spring Boot它本身并不提供Spring框架的核心特性以及扩展功能,只是用于快速、敏捷地开发新一代基于Spring框架的应用程序。也就是说,它并不是用来替代Spring的解决方案,而是和Spring框架紧密结合用于提升Spring开发者体验的工具。
同时它集成了大量常用的第三方库配置(例如Jackson, JDBC, Mongo, Redis, Mail等等),Spring Boot应用中这些第三方库几乎可以零配置的开箱即用(out-of-the-box),大部分的Spring Boot应用都只需要非常少量的配置代码,开发者能够更加专注于业务逻辑
注1:敏捷式开发
注2:spring boot其实不是什么新的框架,它默认配置了很多框架的使用方式,就像maven整合了所有的jar包,spring boot整合则了所有的框架
2、使用Idea配置SpringBoot项目(须联网)
File --》New --》Project --》Spring Initializr
点击下一步,进入界面的速度跟网速有关
点击下一步,选择sprintboot版本,组件。在core里面选中Lombok,在web里面选择web。选择之后在创建项目时就会加入你选择的文件的jar包和依赖
继续下一步,选则项目保存的路径,然后点击finish,第一次创建可能会有点慢,不要心急
3、项目目录结构介绍
src/main/java:主程序入口 Application,可以通过直接运行是pringboot01Application类来启动Spring Boot应用
src/main/resources:配置目录,该目录用来存放应用的一些配置信息,比如应用名、服务端口、数据库配置等。由于我们应用了Web模块,因此产生了 static目录与templates目录,static用于存放静态资源,如图片、CSS、JavaScript等;templates用于存放Web页面的模板文件。
src/test:单元测试目录,生成的 ApplicationTests 通过 JUnit4实现,可以直接用运行 Spring Boot应用的测试。
application.properties/application.yml:用于存放程序的各种依赖模块的配置信息,比如 服务端口,数据库连接配置等。
注:包和类不能乱改,只能在com.zking建子包,
因为程序只加载Application.java所在包及其子包下的内容
启动项目,控制台出现以下信息则项目启动成功
访问界面如下:
4、application.properties文件介绍(一般我们会把application文件的后缀改成.yml,因为这样会有提示)
a、内置属性(server.portserver.port之类的属于spring的内置属性)
试着访问一波:
java代码:
@RestController
public class HelloController {
@RequestMapping("/")
public String hello(){
return "hello springboot";
}
}
b、自定义属性
直接在application.properties中配置:
controler对应的Java代码:
@Value("${mysql.url}")
private String url;
@Value("${mysql.driver}")
private String driver;
@Value("${mysql.username}")
private String username;
@Value("${mysql.password}")
private String password;
@RequestMapping("/mysql1")
public String mysql1(){
return url+"<br/>"+driver+"<br/>"+username+"<br/>"+password;
}
访问一波:
c、属性封装类
先定义属性封装类:
添加controler层的Java代码进行测试:
@Resource
private MysqlEntity mysqlEntity;
@RequestMapping("/mysql2")
public MysqlEntity mysql2(){
return this.mysqlEntity;
}
访问一波: