springboot入门级笔记

springboot亮点:不用配置tomcat
        springboot不支持jsp

准备:配置jdk 配置maven
    访问https://start.spring.io/ 并生成自己的springboot zip
    用eclipse file--import--maven--exist。。将生成的zip的解压缩文件加入到eclipse中开发使用

@configuration
  加了此注解的类,使类成为配置类,且将类加入spring容器(在spring中用@conmponent)

配置全局设置三种方式(系统默认):
  application.properties k=v;支持jsr303数据校验,支持复杂类型

  application.yml k: v
  可以配置自定义对象的值,需要在自定义类加入注解@ConfigurationProperties(prefix="xxxstuxx")和
  @Component注解;集合数组用[]可以省,map,对象类型的属性用{}不可以省;可以将类中的驼峰写法转为xx-xx形式

  @Value(“xxx值”):给类的属性加入注解
  支持EL表达式写法:@Value(“{student.id}”);不支持复杂类型
            private int id;

配置全局设置一种方式(自定义文件):
  @PropertySource(value={"classpath:conf.properties"})配置文件后缀只能是.properties

  springboot不需要配置spring的配置文件,如果要用自己写的spring配置文件方法
  在springboot的主配置类加上@ImportResource(location={"springxxx.xml"})(不推荐)
  创建一个配置类(代替配置文件),给其加入@configuration;给类中的方法加入@Bean(推荐)

随机字符串在application.yml中的使用
  随机字符串${random.value} ${random.int(10)} ${random.int[12,23]}${random.uuid}
  引用 ${stu.name:zs} name有值就显示,若无值就用zs默认值

多个环境切换:
在application.properties指定spring.profiles.active=xxx 自己写的环境文件名字取名application- xxx.properties

在yml中的方式:server:
            port: 8888
            spring:
                profiles:
                active:dev1(选择dev1环境,用的时候把application/-xx.properties干掉,因 为.properties优先级高)

           server:
          port: 8881
          spring:
            profiles: dev1
        server:
            port: 8882
            spring:
                profiles: dev2

动态多个环境切换:
  方式1、eclipse中;run-run configuration--Argument输入:--spring.profiles.active=xxx
  方式2、cmd命令行:java -jar xx.jar(web项目打成jar包) --spring.profiles.active=xxx
  方式1、eclipse中;run-run configuration--Argument-vm输入:-Dspring.profiles.active=xxx

application.properties、application.ym可以存放的位置:
  1、默认位置在构建路径中,项目根目录
  2、项目根目录/config/application.properties,优先级大于1;
  server.servlet.context-path=/xxx 可以配置项目名
3.文件位置放在项目外部时:eclipse中;run-run configuration--Argument输入:
                                  --spring.cofig.location=配置文件路径 优先级大于内部配置文件
                            cmd执行方式:java -jar --spring.cofig.location=配置文件路径(项目已打包,改配置环境的方式)
4.改少量配置:run-run configuration--Argument输入:--server.port=9000空格另一个
                  cmd执行方式:java -jar --server.port=9000
配置优先级:

      cmd命令(外部文件)》运行参数(eclipse、cmd)》内部文件(properties》yml)

日志:
  springboot默认的是info,打印info和之后的等级日志信息
  自定义日志级别:logging.level.主配置类所在的包=debug、xxx
  logging.file=文件名或自定义路径
  logging.path=文件夹路径 logging.path=D:/LOG_test/存放到文件夹
自定义日志显示
  logging.pattern.console=%d{yyyy-MM-dd} [%thread]%-5level %loggger{50} -%msg%n
  logging.pattern.file=%d{yyyy-MM-dd}** [%thread]**%-5level** %loggger{50} ** %msg%n

静态资源访问:
  比如jquery:webjars访问--选择maven依赖copy入pom文件中访问路径比如:
  http://localhost:8080/webjars/jquery/3.3.1-1/jquery.js

自定义静态资源存放位置:
  classpath:/META-INF/resources       classpath:/resources/
  classpath:/static/            classpath:/public/
  访问时不用加前缀
  上述任何一个目录中的index.html就是欢迎页直接访问域名即可出现
  将favicon.ico放入上述任何一个路径即可,就能呈现自定义网页logo

自定义静态资源目录方法
  在配置文件中加入spring.resources.static-lacations=classpath:/xxx/ (默认的会失效)


thymeleaf的使用:
  需要添加依赖:<dependency>
  <groupId>org.springframework.boot</groupId>
  <artifactId>spring-boot-starter-thymeleaf</artifactId>
  </dependency>
  在templates的目录中新建html文件,用th:text="${xxx}"转义渲染
  th:utext="${xxx}"不转义渲染 其他符号查看第四章

springboot整合jsp
  、创建项目方式需要用war包
  、建立基本web项目目录webapp/WEB-INF
  、创建tomcat部署

 

posted @ 2019-01-27 12:51  黑魔法os  阅读(195)  评论(0编辑  收藏  举报