栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

2021-10-14-SpringBoot-01

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

2021-10-14-SpringBoot-01

SpringBoot 1.Spring boot的优点

轻松创建独立的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=8081
4.热部署 1.增加依赖

    
        org.springframework.boot
        spring-boot-devtools
        true
   



    
        
            org.springframework.boot
            spring-boot-maven-plugin
            
                true
            
        
   

2.打开自动编译(Build project automatically)

3.快捷键ctrl+alt+shift+/ 选择registry 选择compiler.automake.allow.when.app.running

4.打开自动刷新

5.SpringBoot资源属性文件配置

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=test
6.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: 8080
SpringBoot配置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=true
SpringBoot***整合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标签内,否则报错





    
    文件上传


文件1:

SpringBoot整合FASTDFS文件存储服务
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/324761.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号