轻松创建独立的Spring应用程序。
内嵌Tomcat、jetty等web容器,不需要部署WAR文件。
提供一系列的“starter” 来简化的Maven配置,集成主流开源产品往往只需要简单的配置即可。
开箱即用,尽可能自动配置Spring。
使用sping boot非常适合构建微服务
2.构建SpringBoot的三种方式1.在线创建
http://start.spring.io/
2.手动创建
3.Maven创建
3.SpringBoot项目的目录结构 1.自定义项目启动图标:banner.txt
图标文件与主配置文件在同一目录下*(resources目录下)
2.配置项目端口 application.properties#端口 server.port=80814.热部署 1.增加依赖
2.打开自动编译(Build project automatically) 3.快捷键ctrl+alt+shift+/ 选择registry 选择compiler.automake.allow.when.app.running 4.打开自动刷新 5.SpringBoot资源属性文件配置org.springframework.boot spring-boot-devtools true org.springframework.boot spring-boot-maven-plugin true
1.创建对象
package com.ccc.demoboot.properties;
import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component;
@Component
@ConfigurationProperties(prefix = "my1")
public class MyProperties1 {
private int age;
private String name;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
2.application.properties属性文件增加
my1.age=25 my1.name=Luis
3.测试
@Autowired
MyProperties1 my;
@ResponseBody
@RequestMapping("/test2")
public String test2() {
return "aa:bb,vvvfffdfdffd" + my.getName();
}
6.多环境属性配置:不同环境加载不同的属性文件
开发环境:application-dev.properties
测试环境:application-test.properties
发布环境:application-prod.properties
加载不同环境配置
#加载其他属性文件 spring.profiles.active=dev #spring.profiles.active=prof #spring.profiles.active=test6.SpringBoot配置JSP页面的跳转
1.添加依赖
org.apache.tomcat.embed tomcat-embed-jasper javax.servlet jstl
2.创建webapp文件夹,创建view文件夹
3.增加配置 application.properties
#jsp访问配置 spring.mvc.view.prefix=/WEB-INF/ spring.mvc.view.suffix=.jsp
4.测试
@Controller
public class Hello {
@RequestMapping("/jsp/{jsp}")
public ModelAndView jsp(@PathVariable("jsp") String jsp) {
System.out.println(jsp);
ModelAndView mv = new ModelAndView();
mv.setViewName(jsp);
mv.addObject("a", "测试");
return mv;
}
}
测试地址:http://localhost:8080/jsp/ina
SpingBoot配置文件springmvc的依赖文件
org.springframework.boot spring-boot-starter-web
application.properties
application.yaml
两种文件的区别:
语法:
properties: key=value
#端口 server.port=8081
yaml: key: value (key:空格value)
#yaml配置文件的格式 server: port: 8080SpringBoot配置Thymeleaf模板
添加依赖
org.springframework.boot spring-boot-starter-thymeleaf
配置文件
spring.thymeleaf.cache=false #针对的是resources下面的templates,默认就是的 #spring.thymeleaf.prefix=classpath:/templates/ #针对的是webapp下面,也可以不行,默认templates下面的 spring.thymeleaf.prefix=/view/ spring.thymeleaf.suffix=.html
不能添加@@ResponseBody注解,添加注解后只能返回字符串
SpringBoot静态资源:直接使用 SpringBoot整合Mybaties依赖文件
org.mybatis.spring.boot mybatis-spring-boot-starter 1.3.2 mysql mysql-connector-java org.springframework.boot spring-boot-starter-cache
配置 application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/test spring.datasource.username=root spring.datasource.password=1234 #Mybatis接口xml映射文件路径 idea是放在resources下面的 mybatis.mapper-locations=classpath:com/ccc/springbootwebtest/mapper/*.xml #Mybatis实体pojo类路径,可以不用 mybatis.type-aliases-package=com.ccc.springbootwebtest.domain # 驼峰命名规范 如:数据库字段是 order_id 那么 实体字段就要写成 orderId mybatis.configuration.map-underscore-to-camel-case=trueSpringBoot***整合Mybatis***通用接口及分页插件事务
依赖
com.github.pagehelper pagehelper 5.0.4 com.github.pagehelper pagehelper-spring-boot-autoconfigure 1.2.10 com.github.pagehelper pagehelper-spring-boot-starter 1.2.10 tk.mybatis mapper-spring-boot-starter RELEASE
2 相关配置文件 application.properties
spring.datasource.url=jdbc:mysql://localhost:3306/test spring.datasource.username=root spring.datasource.password=1234 # 如果想看到mybatis日志需要做如下配置 com.ccc.springbootwebtest.dao是Mapper接口的路径 # logging.level.*=debug logging.level.com.ccc.springbootwebtest.dao=DEBUG #Mybatis接口xml映射文件路径 mybatis.mapper-locations=classpath:com/ccc/springbootwebtest/mapper/*.xml #Mybatis实体pojo类路径 mybatis.type-aliases-package=com.ccc.springbootwebtest.domain # 驼峰命名规范 如:数据库字段是 order_id 那么 实体字段就要写成 orderId mybatis.configuration.map-underscore-to-camel-case=true ########## 通用Mapper ########## # 主键自增回写方法,默认值MYSQL,详细说明请看文档 mapper.identity=MYSQL mapper.mappers=tk.mybatis.mapper.common.baseMapper # 设置 insert 和 update 中,是否判断字符串类型!='' mapper.not-empty=true # 枚举按简单类型处理(枚举按简单类型处理,如果有枚举字段则需要加上该配置才会做映射) mapper.enum-as-simple-type=true ########## 分页插件 ########## pagehelper.helperDialect=mysql pagehelper.params=count=countSql #pagehelper.reasonable:分页合理化参数,默认值为false。当该参数设置为 true 时,pageNum<=0 时会查询第一页, pageNum>pages(超过总数时),会查询最后一页。默认false 时,直接根据参数进行查询。 pagehelper.reasonable=false #pagehelper.support-methods-arguments:支持通过 Mapper 接口参数来传递分页参数,默认值false,分页插件会从查询方法的参数值中,自动根据上面 params 配置的字段中取值,查找到合适的值时就会自动分页。 pagehelper.supportMethodsArguments=true事务
spring Boot 使用事务非常简单,首先使用注解 @EnableTransactionManagement开启事务支持后,然后在访问数据库的Service方法上添加注解 @Transactional 便可。
第一步、增加@EnableTransactionManagement放在启动类上
第二步、service层实现类方法增加@Transactional()注解
文件上传.下载org.springframework.boot spring-boot-starter-thymeleaf 2.0.4.RELEASE
配置文件上传的属性 application.properties
这些属性并非必须属性,自带默认值,没必要设置
# 禁用 thymeleaf 缓存 spring.thymeleaf.cache=false # 是否支持批量上传 (默认值 true) spring.servlet.multipart.enabled=true # 上传文件的临时目录 (一般情况下不用特意修改) spring.servlet.multipart.location= # 上传文件最大为 1M (默认值 1M 根据自身业务自行控制即可) spring.servlet.multipart.max-file-size=1048576 # 上传请求最大为 10M(默认值10M 根据自身业务自行控制即可) spring.servlet.multipart.max-request-size=10485760 # 文件大小阈值,当大于这个阈值时将写入到磁盘,否则存在内存中,(默认值0 一般情况下不用特意修改) spring.servlet.multipart.file-size-threshold=0 # 判断是否要延迟解析文件(相当于懒加载,一般情况下不用特意修改) spring.servlet.multipart.resolve-lazily=false
@RestController
public class fileupload {
@RequestMapping("/upload")
//multipartFile 应与前端界面中的name相同
public String upload(@RequestParam("multipartFile") MultipartFile multipartFile) throws IOException {
multipartFile.transferTo(new File("/Users/mengkeliu/Desktop/图片/临时文件/" + multipartFile.getOriginalFilename()));
return "ok";
}
}
前端界面:文件上传需放入p标签内,否则报错
文件上传
SpringBoot整合FASTDFS文件存储服务


