Fork me on GitHub
夸克的博客


  • 首页

  • 关于

  • 标签

  • 分类

  • 归档

  • 搜索

两个切面配置的记录

发表于 2018-09-21 | 分类于 spring , spring boot | 热度: ℃
字数统计: 1,305 | 阅读时长 ≈ 6

前言

之前也学习过validate注解去校验一些参数的必要条件,这回工作中用的时候遇到了一些问题。这里都是使用spring boot框架去做的切面,省去了很多不需要的配置。这里去记录一下。

阅读全文 »

vi命令小总结

发表于 2018-09-09 | 分类于 linux | 热度: ℃
字数统计: 415 | 阅读时长 ≈ 1

前言

这篇去写一些最近在工作中get到的关于vi/vim命令的点,简单去记录下。

技能点

在文件中快速删除一行

在vi编辑文件的时候,发现有时要删除很多的文件内容,这个时候去一点点删除很慢,这里get到了一个快速删除一行的技能。在打开的文件中所要删除的行连续按两次d就可以快速删除一行,然后在用:wq保存即可。

在这里插入图片描述

解决没有正确关闭vi打开的文件

有的时候我们在查看一个文件之后,直接ctrl+z去退出了文件,当我们再用vim命令去编辑文件的时候,这时候会发现报一个没有正确关闭这个文件的冲突错误,并且你不去解决就会一直存在。

在这里插入图片描述

这里get到了去解决的方法,其实也是怪自己一看到一堆英文就不想看下去,这里其实已经写得很清楚了,这里提供了两种情况:

(1)有可能另一个人也在编辑这个文件,它提醒你要注意两个人同时编辑不同的地方。

(2)上一次编辑的session还在,这时候提供了解决办法:可以用recover或者vim -r 文件名去修复这个changes。

可以看到当你没正确退出时,还保持着edit session,这时候会生成两个临时文件,我这里采用的是直接删除这两个文件即可。
在这里插入图片描述

运行 rm -rf .fileName.* 命令之后,再次打开之后就不会有冲突。

springboot应用拦截器

发表于 2018-09-05 | 分类于 spring , spring boot | 热度: ℃
字数统计: 2,942 | 阅读时长 ≈ 12

背景

在工作中看到了不少项目用到了拦截器,这里去总结一下spring-boot使用拦截器。拦截器是Spring提供的HandlerInterceptor(拦截器),其功能和过滤器类似,但是提供更精细的控制能力:在request被响应之前、request被响应之后、视图渲染之前以及request全部结束之后。我们不能通过拦截器修改request的内容,但可以通过抛出异常(或者返回false)来暂停request的执行。

阅读全文 »

Function函数式接口的优化代码应用

发表于 2018-09-02 | 分类于 Java语法 , Java8 | 热度: ℃
字数统计: 1,468 | 阅读时长 ≈ 6

前言

函数式接口之前就一直在接触过,之前在github上写过关于几个函数式接口简单应用的代码,但一直没有记录在工作中的应用,这次就用Function接口优化了一次重复代码的警告。关于函数式接口不熟悉的同学,可以先看下我在github上的代码工程:java8

阅读全文 »

记一次freemarker错误排查

发表于 2018-08-29 | 分类于 bug记录 | 热度: ℃
字数统计: 1,030 | 阅读时长 ≈ 4

前言

在最近的工作中遇到了一个做一个导出功能时遇到了一个很奇怪的事情,逻辑是先做一个export方法上传到文件服务器上,然后重定向到一个doExport方法中,这个doExport方法中是去判断这个文件是否生成(之前生成Excel文件是异步线程生成的),如果没有生成,则转到一个export.ftl的freemarker页面,这个页面中去不断reload去调用这个doExport方法,直到导出了文件。但是在本地测试的时候,总发现doExport方法会无限的将请求再转发到export方法中,然后就一直产生了无限重定向,在浏览器中会有报无限重定向而给拦截掉。

阅读全文 »

spring boot actuator

发表于 2018-08-25 | 分类于 spring , spring boot | 热度: ℃
字数统计: 378 | 阅读时长 ≈ 1

前言

spring boot的一大特性就是自带的actuator。它是spring-boot框架提供的对应系统的自省和监控的集成功能,可以对系统进行配置查看、相关功能统计等。

actuator的使用

引入依赖

1
2
3
4
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-actuator</artifactId>
</dependency>

配置文件的配置

  • management.port:指定访问监控防范的端口,这个端口应该与逻辑端口分离。如果不想使actuator暴露在http中,可以设置这个端口为7002。
    在这里插入图片描述
  • management.address:指定地址,比如只能通过本机监控,可以设置 management.address = 127.0.0.1
    启动项目,可以看到actuator启动在了配置的7002端口,并且提供了可以访问其中的一些endPoints。
    在这里插入图片描述

一些主要的EndPoints

spring-boot提供了一些常用的EndPoints

在这里插入图片描述

其中鉴权为true的表示访问这些endPoints是需要保护的不能随意进行访问的。如果要取消,可以设置关闭鉴权(低版本的spring-boot没有提供鉴权)

1
management.security.enable=false

官方文档

可以看到这个监控和自省的功能是十分有用的,可以看到bean信息、dump信息、mapping信息和访问链路信息等,所以这个功能在官方文档中也说的很清楚,我们也可以通过实现HealthIndicator接口,编写自己的health接口,也可以增加自己的监控接口。
具体的还可以看一下官方文档 acautor文档

validate注解做校验

发表于 2018-08-18 | 分类于 spring , 注解 | 热度: ℃
字数统计: 3,366 | 阅读时长 ≈ 15

前言

之前也用过hibernate的校验注解,但是没有去做一个总结,这里参考一篇博客去做一个总结。简述JSR303/JSR-349,hibernate validation,spring validation之间的关系。JSR303是一项标准,JSR-349是其的升级版本,添加了一些新特性,他们规定一些校验规范即校验注解,如@Null,@NotNull,@Pattern,他们位于javax.validation.constraints包下,只提供规范不提供实现。而hibernate validation是对这个规范的实践(不要将hibernate和数据库orm框架联系在一起),他提供了相应的实现,并增加了一些其他校验注解,如@Email,@Length,@Range等等,他们位于org.hibernate.validator.constraints包下。而万能的spring为了给开发者提供便捷,对hibernate validation进行了二次封装,显示校验validated bean时,你可以使用spring validation或者hibernate validation,而spring validation另一个特性,便是其在springmvc模块中添加了自动校验,并将校验信息封装进了特定的类中。这无疑便捷了我们的web开发。本文主要介绍在springmvc中自动校验的机制。

阅读全文 »

并发编程——ThreadLocal总结

发表于 2018-08-16 | 分类于 并发编程 , 并发工具 | 热度: ℃
字数统计: 2,015 | 阅读时长 ≈ 8

概念介绍

ThreadLocal是早期jdk版本中就有的一个工具,基本原理是同一个ThreadLocal所包含的对象(对ThreadLocal而言即为String类型变量),在不同的Thread中有不同的副本(实际是不同的实例)。这里有几点需要注意:
​

阅读全文 »

spring中根据Application获取BEAN的工具类

发表于 2018-08-12 | 分类于 spring , 框架应用 | 热度: ℃
字数统计: 506 | 阅读时长 ≈ 2

背景

  • 在最近的开发工作中,用到了策略模式(之前也写过关于策略模式这个设计模式的学习,但是之前那个不是在spring框架中),这时候策略中的context或者factory就要去动态的根据调用的策略类型不同去拿到对应的bean对象,这里去了解了一个通过application context拿取bean的工具类,这里记录一下。
    阅读全文 »

Java8中list转map方法总结

发表于 2018-08-12 | 分类于 Java语法 , Java8 | 热度: ℃
字数统计: 575 | 阅读时长 ≈ 3

背景

  • 在最近的工作开发之中,慢慢习惯了很多Java8中的Stream的用法,很方便而且也可以并行的去执行这个流,这边去写一下昨天遇到的一个list转map的场景。
    阅读全文 »
1…101112
夸克

夸克

愿赌服输

114 日志
32 分类
121 标签
GitHub E-Mail csdn
© 2022 夸克 | Site words total count: 168.9k
|
主题 — NexT.Muse v5.1.4
博客全站共168.9k字

载入天数...载入时分秒...