当前位置: 首页 > news >正文

宁波市城乡和建设网站网站流量指的是什么意思

宁波市城乡和建设网站,网站流量指的是什么意思,免费建站的网站有哪些,wordpress 颜色选择器目录 一,SpringBoot配置文件 1,配置文件的格式: 2,properties 3,yml 1,properties与yml的转换 2,读取配置选哪个中的内容 3,单双引号的差异: 4,配置对象: 5,配置集合/配置map 6,yml的优缺点: 二,验证码: 学习目的: 实现样例: 接口定义: 代码总结: 三,日志: 1,概…目录 一,SpringBoot配置文件 1,配置文件的格式: 2,properties 3,yml 1,properties与yml的转换 2,读取配置选哪个中的内容 3,单双引号的差异: 4,配置对象: 5,配置集合/配置map 6,yml的优缺点: 二,验证码: 学习目的: 实现样例: 接口定义: 代码总结: 三,日志: 1,概述 2,打印日志: 3,日志的框架:门面模式 4,日志级别分类: 5,日志持久化: 6,配置文件分割: 7,其他配置项 8,注解输出日志: 一,SpringBoot配置文件 配置⽂件主要是为了解决硬编码带来的问题,把可能会发⽣改变的信息,放在⼀个集中的地⽅,当我们启 动某个程序时,应⽤程序从配置⽂件中读取数据,并加载运⾏ 1,配置文件的格式: • application.properties • application.yml • application.yaml properties与yml同时存在,同时生效,但是如果配置项有冲突的时,以properties 2,properties properties 是以键值的形式配置的key和value之间是以连接的,配置⽂件中使⽤“#”来添加注释信息。 my.key1zhangsan my.key2true my.key313 Value(${my.key1})private String key1;Value(${my.key2})private String key2;Value(${my.key3})private String key3;PostConstruct//在类加载过程中就会执行public void readValues2(){System.out.println(从配置文件中读取:key1);System.out.println(从配置文件中读取:key2);System.out.println(从配置文件中读取:key3);} 3,yml yml的全称为yaml单词之间用:\n分割,key和Value之间用:空格,注意:空格不可以省略 1,properties与yml的转换 #properties spring.datasource.urljdbc:mysql://127.0.0.1:3306/testdb?characterEncodingutf8useSSLfalse spring.datasource.usernameroot spring.datasource.passwordroot properties转yml,把 . 转化为 :\n yml转properties,把 :\n 转化为 . #yml spring:datasource:url: jdbc:mysql://127.0.0.1:3306/testdb?characterEncodingutf8useSSLfalseusername: rootpassword: root 2,读取配置选哪个中的内容 RestController public class YmlController {Value(${spring.datasource.url})public String url;Value(${spring.datasource.username})public String username;Value(${spring.datasource.password})public String password;PostConstructpublic void readValue(){System.out.println(yml配置文件:url);System.out.println(yml配置文件:username);System.out.println(yml配置文件:password);}}空字符串直接后面什么都不加就可以,但是这种方式不直观,更多的表示使用引号括起来,null用~代表null 3,单双引号的差异: string:str1: Hello \n Spring Boot.str2: Hello \n Spring Boot.str3: Hello \n Spring Boot. 字符串默认不用加上单引号或者双引号,加上双引号后转义字符会执行 4,配置对象: #yml student:id: 1name: Javaage: 18Configuration Data ConfigurationProperties(prefix student) public class StudentConfig {private Integer id;private String name;private Integer age; }Autowiredpublic StudentConfig studentConfig;PostConstructpublic void readValue(){System.out.println(studentConfig.toString());} 5,配置集合/配置map #yml student:id: 1name: Javaage: 18dbtype:- mysql- sqlServer- oraclemap:k1: kk1k2: kk2k3: kk3package com.ABdolphin.ioc.config; Configuration Data ConfigurationProperties(prefix student) public class StudentConfig {private Integer id;private String name;private Integer age;private ListString dbtype;private MapString,String map; }package com.ABdolphin.ioc.Contraller; RestController public class YmlController {Autowiredpublic StudentConfig studentConfig;PostConstructpublic void readValue(){System.out.println(studentConfig.toString());}} 6,yml的优缺点: 优点:可读性高,写法简单,易于理解 缺点: 但是不适合写复杂的配置 对格式有较强的要求 二,验证码: 学习目的: 1,学习查看第三方工具的文档 2,学习验证码的实现逻辑 3,练习配置项和代码能力 实现样例: 接口定义: 1,生成验证码2,校验验证码是否正确URL/captcha/getCaptcha/captcha/check请求参数无参captcha响应验证码图片内容true/false 由于为后端代码练习,所以前端代码不进行过多赘述 我们可以借助工具:Hutool是⼀个Java⼯具包类库对⽂件、流、加密解密、转码、正则、线程、XML等JDK⽅法进⾏封 装组成各种Util⼯具类. Hutool是⼀个⼩⽽全的Java⼯具类库通过静态⽅法封装降低相关API的学习成本提⾼⼯作效 率使Java拥有函数式语⾔般的优雅 Hutool官⽹:https://hutool.cn/ 代码总结: yml: spring:application:name: captcha-demo captcha:width: 100height: 50VALID_TIME_OUT: 60000session:key: SESSION_CAPTCHA_KEYdate: SESSION_CAPTCHA_DATE package com.ABdolphin.captcha.model;Data Configuration ConfigurationProperties(prefix captcha) public class CaptchaProperties {private Integer width;private Integer height;private long VALID_TIME_OUT;private Session session;Datapublic static class Session{private String key;private String date;}} package com.ABdolphin.captcha.controller;RestController RequestMapping(/captcha) public class CaptchaController {private static Logger logger LoggerFactory.getLogger(CaptchaController.class);Autowiredprivate CaptchaProperties captchaProperties;GetMapping(/getCaptcha)public void captcha(HttpSession session,HttpServletResponse response){//生成验证码LineCaptcha lineCaptcha CaptchaUtil.createLineCaptcha(captchaProperties.getWidth(), captchaProperties.getHeight());//打印验证码String codelineCaptcha.getCode();System.out.println(System随机生成验证码:code);logger.info(logger随机生成验证码:code);//存储 Sessionsession.setAttribute(captchaProperties.getSession().getKey(),code);session.setAttribute(captchaProperties.getSession().getDate(),new Date());try {lineCaptcha.write((response.getOutputStream()));response.setContentType(image/jpeg);response.setCharacterEncoding(UTF-8);response.setHeader(Pragma,No-cache);} catch (IOException e) {throw new RuntimeException(e);}}RequestMapping(/check)public boolean check(String captcha,HttpSession session){System.out.println(用户输入的验证码:captcha);if (!StringUtils.hasLength(captcha)){return false;}String code(String) session.getAttribute(captchaProperties.getSession().getKey());Date date (Date) session.getAttribute(captchaProperties.getSession().getDate());if (datenull||(System.currentTimeMillis()-date.getTime())captchaProperties.getVALID_TIME_OUT()){return false;}return captcha.equalsIgnoreCase(code);} }三,日志: 1,概述 通过打印⽇志来发现和定位问题,或者根据⽇志来分析程序的运⾏过程.⽇志主要是为了发现问题,分析问题,定位问题的,但除此之外,⽇志还有很多⽤途. 1). 系统监控 监控现在⼏乎是⼀个成熟系统的标配, 我们可以通过⽇志记录这个系统的运⾏状态,每⼀个⽅法的响应 时间,响应状态等,对数据进⾏分析,设置不同的规则,超过阈值时进⾏报警.⽐如统计⽇志中关键字的数量并在关键字数量达到⼀定条件时报警这也是⽇志的常⻅需求之⼀ 2),数据采集 统计⻚⾯的浏览量,访客量,点击量等 2,打印日志: 在程序中获得日志的对象,导入的是这个包,不要导错包!! private static Logger logger LoggerFactory.getLogger(CaptchaController.class);logger.info(logger随机生成验证码:code); 3,日志的框架:门面模式 采用门面模式(外观模式),即提供了一个统一的接口,用来访问系统中的一群子接口,其主要特征是定义了⼀个⾼层接⼝,让⼦系统更容易使⽤ SLF4J不同于其他⽇志框架,它不是⼀个真正的⽇志实现,⽽是⼀个抽象层,对⽇志框架制定的⼀种规范, 标准,接⼝.所有SLF4J并不能独⽴使⽤,需要和具体的⽇志框架配合使⽤ SLF4J就是这个⽇志⻔⾯.不同⽇志框架的API接⼝和配置⽂件不同,如果多个⽇志框架共存,那么不得不维护多套配置⽂件, 如果要更换⽇志框架,应⽤程序将不得不修改代码,并且修改过程中可能会存在⼀些代码冲突.引⼊⻔⾯⽇志框架之后,应⽤程序和⽇志框架(框架的具体实现)之间有了统⼀的API接⼝(⻔⾯⽇志框架 实现),此时应⽤程序只需要维护⼀套⽇志⽂件配置,且当底层实现框架改变时,也不需要更改应⽤程序代码. 门面模式的优点: (1)减少了系统的相互依赖.实现了客⼾端与⼦系统的耦合关系,这使得⼦系统的变化不会影响到调⽤它 的客⼾端 (2)提⾼了灵活性,简化了客⼾端对⼦系统的使⽤难度,客⼾端⽆需关⼼⼦系统的具体实现⽅式,⽽只需 要和⻔⾯对象交互即可 (3)提⾼了安全性.可以灵活设定访问权限,不在⻔⾯对象中开通⽅法,就⽆法访问 4,日志级别分类: 从⾼到低依次为:FATAL、ERROR、WARN、INFO、DEBUG、TRACE • FATAL:致命信息表⽰需要⽴即被处理的系统级错误. • ERROR:错误信息,级别较⾼的错误⽇志信息,但仍然不影响系统的继续运⾏. • WARN:警告信息,不影响使⽤,但需要注意的问题 • INFO:普通信息,⽤于记录应⽤程序正常运⾏时的⼀些信息,例如系统启动完成、请求处理完成等. • DEBUG:调试信息,需要调试时候的关键信息打印. • TRACE:追踪信息,⽐DEBUG更细粒度的信息事件(除⾮有特殊⽤意否则请使⽤DEBUG级别替代) import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController;RestController RequestMapping(/logger) public class LoggerController {public static Logger logger LoggerFactory.getLogger(LoggerController.class);RequestMapping(/logger1)public String logger(){logger.error(error);logger.warn(warn);logger.info(info);logger.debug(debug);logger.trace(trace);return 日志打印;} } 这里默认的配置级别info及以上的日志,也可以将其在配置文件中进行改变 yml配置: logging:level:root: debug 5,日志持久化: 配置日志的储存目录: logging.file.name logging.file.path logging.file.name 和 logging.file.path 两个都配置的情况下,只⽣效其⼀,以 logging.file.name 为准 6,配置文件分割: logging.logback.rollingpolicy.file-name-pattern logging.logback.rollingpolicy.file-nax-file-size 常见的 Application Properties logging:level:root: infofile:name: logger/spring-boot-loglogback:rollingpolicy:file-name-pattern: ${LOG_FILE}.%d{yyyy-MM-dd}.%imax-file-size: 1KB 7,其他配置项 改变日志的颜色 重新启动程序就支持颜色了 8,注解输出日志: 1. 添加lombok框架⽀持 2. 使⽤ slf4j 注解输出⽇志 RestController RequestMapping(/logger) Slf4j public class LoggerController2 {public String logger(){log.error(error);log.warn(warn);log.info(info);log.debug(debug);log.trace(trace);return 日志打印;} }
http://www.hkea.cn/news/14286209/

相关文章:

  • 南昌企业制作网站腾讯qq网页版在线登录
  • 网站开发项目验收报告常州专门做网站的公司有哪些
  • 高校网站建设的文章网站备案通管局
  • 企业网站制作的公司可以做cps合作的棋牌网站
  • 沈阳做网站公司有哪些学做网站教程
  • 网站怎么做效果好银行官网登录入口
  • 网站关键词推广企业网络商城图片
  • 安徽省交通运输厅网站导购网站建设需求模版
  • 制作一个网站需要多少费用网站运营知识
  • seo sem 做网站装修贷
  • 做网站的公司简称什么行业免费咨询健康
  • 建设银行手机银行网站用户名是什么seo网站建设及扩词
  • 电商 网站建设文字php部署网站
  • 嘉兴网站公司哪家好经销商自己做网站
  • 网站建设费专票会计分录中国建设银行网站公积金查询系统
  • 厦门学网站建设产品拍摄
  • 怎样建设网站官网iis不能新建网站
  • 广州网站设计推荐柚米wordpress建站阿里云
  • 做外贸网站代理商前端和后端哪个好
  • 南通网站建设贵吗郑州妇科医院哪家好些
  • 廊坊论坛网站建设网页期末大作业
  • 杭州网站建设服务公司机械类产品网站做优化
  • 应届生出来做网站还是做报纸好建站智能模板
  • 石家庄最好的网站建设公司上海百度竞价点击软件
  • 设计师 网站有人有片资源吗免费的视频
  • 网站怎么做参考文献天象集团ui培训
  • 个人建站项目上海设计网站开发
  • 网站开发常用字体台州seo网站推广费用
  • 长沙做四维彩超玛丽亚m网站百度推广销售员好做吗
  • 公司经营范围 网站开发2017年网站建设市场分析