spring boot

设计目的:简化spring应用的初始搭建以及开发过程
spring环境的微服务:对原有技术的封装(spring + springMVC)
简化开发,提高开发效率(原ssm--->spring boot + mybatis)
自动配置,没有原来的XML配置文件

特点:

创建独立的spring应用程序
有内嵌入式的tomcat,所以无需部署WAR文件
还可以打成jar包
简化maven配置(3个依赖:父级项目依赖,web,test)
自动配置Spring
没有XML配置(包括web.xml,spring.xml等都不需要)

spring1.x:只有基础的aop和ioc,只能Xml配置
spring2.x:新加注解型配置,数据持久层用Xml,业务层用注解
spring3.X:新加java配置,javaConfig

spring boot约束:类似于maven约束,体现在包结构上

hello-springbootsrc/main/javacom.zs.domaincom.zs.daocom.zs.service入口类(必须放在子包的同级目录,和dao,service同级即可)src/main/resourceapplication.ymlapplication.yamlapplication.properties配置文件名字,必须叫application配置文件必须存放在resources下最常用.ymlsrc/test/javasrc/test/resourcetargetpom.xml

启动最简单的项目

引入maven依赖
配置入口类
配置端口号(默认8080,可选)
配置启动类,启动

注解剖析:

@SpringBootApplication(组合注解,一个注解可代替多个注解的功能)
等同与以下三个注解:@Configuration(申明当前类为配置类)@EnableAutoConfiguration(开启自动配置,开启后,比如mybatis集成的数据源对象dataSource,就不用创建了)@ComponentScan(默认扫描入口类的同级包,也可以手动指定:@ComponentScan("com.zs"))组件扫描:类上有以下注解的,类就是Spring的组件@Repository(dao)@Component(普通bean)@Service(业务)@Controller(控制)Spring申明Bean的形式1.<bean id="XXX" class="XXX"/>2.上面四种组件注解 + 包扫描(<context:component-scan>)3.javaConfig@ConfigurationClass JavaConfig{@Beanpublic User getUser(){return new User();}}
@RestController(也是组合注解)
等同与以下两个注解@ResponseBody@Controller
这个注解用在类上,所有方法都需要做json序列化,不会做视图解析

注意:
SpringBoot默认支持的视图层模板是thmyleaf,也类似于jsp,html,freemark
SpringBoot默认不支持Jsp做视图层的模板

SpringBoot与MyBatis的集成

先回忆Spring与Mybatis的集成:1.导入依赖:mybatis,druid,mybatis-spring,Spring相关2.相关配置:配置数据源  BasicDataSource、DruidDataSourceurl(动态的)DrverClassName(动态的)userName(动态的)password(动态的)配置sqlsessionFactoryBeantypeAlias(动态的) 别名datasoutce   refmapperLocation(动态的)  指定Mapper文件的位置,启动时加载配置MapperScannerConfigruation 扫描dao接口,为dao创建动态代理类(动态代理:1.JDK原生;2.cglib,基于字节码的)sqlsessionFactoryBeanName  refbasePackage (动态的)dao接口的位置配置声明事务datasourceTranscationMangermentdataSource   ref开启事务SpringBoot与MyBatis的集成1.导入依赖:mybatis,druid数据源,数据库驱动,mybatis-springboot整合mabatis-spring-boot-starterdruidmysql-connector-javamybatis2.相关配置:使用自动配置urlDrverClassNameuserNamepasswordtypeAliasmapperLocationbasePackage

day1 over

[spring boot] ------ 总结1相关推荐

  1. spring boot项目 中止运行 最常用的几种方法

    spring boot项目 中止运行 最常用的几种方法: 1. 调用接口,停止应用上下文 @RestController public class ShutdownController impleme ...

  2. html+spring boot简单的ajax数据传输实现

    本篇讲解在前后端不分离情况下的html+spring boot的项目数据传输实现 首先,后台我写了三个接口 package com.demo.ajax.controller;import com.de ...

  3. Spring Boot整合Spring Data JPA操作数据

    一. Sping Data JPA 简介 Spring Data JPA 是 Spring 基于 ORM 框架.JPA 规范的基础上封装的一套 JPA 应用框架,底层使用了 Hibernate 的 J ...

  4. SpringBoot (八) :Spring Boot多数据源(JdbcTemplate)配置与使用

    什么是JdbcTemplate 为了使 JDBC 更加易于使用,Spring 在 JDBCAPI 上定义了一个抽象层, 以此建立一个JDBC存取框架. 作为 SpringJDBC 框架的核心, JDB ...

  5. 使用最新版(2020)IntelliJ IDEA 新建 Spring Boot 2.0 项目

    使用最新版(2020)IntelliJ IDEA 新建 Spring Boot 2.0 项目 一:创建项目,并添加相应依赖 新建Project,并指定Project为Spring Initializr ...

  6. 狂神Spring Boot 员工管理系统 超详细完整实现教程(小白轻松上手~)

    [SpringBoot-web系列]前文: SpringBoot-web开发(一): 静态资源的导入(源码分析) SpringBoot-web开发(二): 页面和图标定制(源码分析) SpringBo ...

  7. [JAVA EE]Spring Boot 控制层:参数传递方法

    项目需要参照本人java ee系列前文建立,请读者自行前往本人主页查看. 当然,您自己创建一个项目也是可以的. bean包下的Student.java package com.example.demo ...

  8. spring boot中的日志入门

    日志通常不会在需求阶段作为一个功能单独提出来,也不会在产品方案中看到它的细节.但是,这丝毫不影响它在任何一个系统中的重要地位. 报警系统与日志系统的关系 为了保证服务的高可用,发现问题一定要及时,定位 ...

  9. spring boot整合spring security笔记

    最近自己做了一个小项目,正在进行springboot和spring Security的整合,有一丢丢的感悟,在这里分享一下: 首先,spring boot整合spring security最好是使用T ...

  10. spring boot 文件上传工具类(bug 已修改)

    以前的文件上传都是之前前辈写的,现在自己来写一个,大家可以看看,有什么问题可以在评论中提出来. 写的这个文件上传是在spring boot 2.0中测试的,测试了,可以正常上传,下面贴代码 第一步:引 ...

最新文章

  1. 一文览尽LiDAR点云目标检测方法
  2. 《重构,改善既有代码的设计》读书笔记
  3. nodejs实战案例(Express框架+mongoDB)——(1)——前言
  4. Spark跟Flink的常见问题
  5. STM32通过USB实现Bootlader/IAP功能
  6. 小度智能音箱维修点_小度智能音箱APP下载
  7. 2021年7月 虾皮、货拉拉、有赞等面经总结
  8. 2299 Ultra-QuickSort(归并)
  9. linux 两个mysql_Linux下安装两个MySQL的方法
  10. python3.4安装pygame_python 3.4.3 安装pygame
  11. 口琴膜片什么作用_新手怎么学口琴?
  12. sass-loader高版本的坑
  13. EF6.0新特性-DbCommandInterceptor实现非SQL端读写分离
  14. flow time 是什么
  15. markdown中打勾,对号和打叉,表格内换行
  16. 最厉害的象棋软件_太牛了!象棋史上最厉害人机高手竟弃车跟软件对杀,就问你敢不敢...
  17. Linux下PCIE设备分析软件
  18. 用python实现模拟轮盘抽奖游戏
  19. Dynamics CRM IFD部署如何更换SSL证书
  20. android studio 插入SVG图片

热门文章

  1. mysql_crud
  2. vue 学习笔记—路由篇
  3. bootstrap table 的简单Demo
  4. [转人工智能工程师学习路线及具备的5项基本技能
  5. [LeetCode] Plus One
  6. 初步认识迭代服务器和并发服务器
  7. 菜鸟读jQuery 2.0.3 源码分析系列(1)
  8. 解决i9001WiFi频繁断线
  9. 使用 NetDataContractSerializer 共享类型
  10. javax.servlet.http.HttpServletRequest接口(HTTP版本)