springboot
引言:自己整理的springboot学习笔记,适合从未接触过springboot的小白猿,简单易上手,通过本文希望没接触过springboot的你也能顺利完成简单学习,有任何问题请联系作者 Bxy_xiaoyu@163.com
1.springboot的概念
Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初始搭建以及开发过程。该框架使用了特定的方式来进行配置,从而使开发人员不再需要定义样板化的配置.通过这种方式,Spring Boot致力于在蓬勃发展的快速应用开发领域(rapid application development)成为领导者。
2.springboot的相关特点
-
创建独立的spring应用程序
-
内嵌tomcat,不需要部署
-
简化maven配置
-
自动配置
-
无需xml相关的配置
spring1.x xml
spring2.x 注解 数据持久层使用xml 业务层使用注解
spring.3.x java配置
spring 4.x java配置
spring 4.x java配置
xml | @configuration |
---|---|
bean标签的形式 | @Bean |
注意 @Bean用来修饰方法,表明返回值交由对象管理
** @configuration 用来修饰类表名当前类为配置类.**
3.springboot的约束
-
src/main/java
com.bxy 主包
entity 子包
dao
service
controller
conf
入口类 注意:入口类必须在主包下和子包同级
-
src/main/resources
springboot的配置文件 注意:配置文件名字必须叫application,将配置文件放置在resources目录下
- application.yml
- application.yaml
- application.properties
-
src/test/java
-
src/test/resources
4.使用maven搭建springboot的第一个环境
-
导入jar
<!--父级项目依赖--> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>1.5.8.RELEASE</version> </parent> <!--web支持的jar springboot的启动器--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--测试支持的jar--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <!-- 只在test测试里面运行 --> <scope>test</scope> </dependency>
-
开发入口类
@SpringBootApplication public class App { public static void main(String[] args) { SpringApplication.run(App.class,args); } }
-
开发配置文件 yml的配置文件需要注意属性名和属性值之间有空格的间隔
注意:默认启动端口号为8080
默认启动没有项目名
server: port: 8989 context-path: /springboot
1.注解剖析
1.@SpringBootApplication=@Configuration+@EnableAutoConfiguration+@ComponentScan
//当前的注解是一个组合注解
@Configuration //作用:声明当前类是一个配置类
@ComponentScan //作用:组件扫描 把一些加有@service @controller @component @repository注解的对象交由工厂管理
@EnableAutoConfiguration //开启自动配置 datasource sqlsessionFactorybean mapperScanner
2.@RestController //作用:组合注解 @Controller @ResponseBody 声明当前类为控制器,并且类中所用方法返回json
注意:springboot默认不支持jsp,默认的视图层模版为thmyleaf
5.快速搭建springboot应用程序
6.springboot和第三方技术的集成
6.1.mybatis
1.导入jar
<!--整合mybatis-->
<!--mybatis和springboot的整合包-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>1.0.0</version>
</dependency>
<!--数据源-->
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>druid</artifactId>
<version>1.0.19</version>
</dependency>
<!--数据库驱动-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.38</version>
</dependency>
<!--mybatis的核心jar-->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.2.8</version>
</dependency>
2.相关的配置
注意:springboot采用自动配置 装配相关对象所以不需要手动配置相关的组件,但是需要声明动态的参
数,如数据源相关参数
server:
port: 8989
context-path: /springboot
spring:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:oracle:thin:@localhost:1521:xe
driver-class-name: oracle.jdbc.OracleDriver
username: hr
password: hr
mybatis:
mapper-locations: classpath:com/bxy/mapper/*Mapper.xml
type-aliases-package: com.bxy.entity
3.手动声明dao包的位置加入注解@MapperScan
6.2.lombok
1.概念
使java代码变的更加优雅,以注解的方式代替之前的冗长代码,底层采用字节码技术生成相应方法
2.使用lombok
1.下载lombok相关插件