最近业余时间比较紧张,更得挤时间来记录了,今天介绍一下SpringBoot项目,如何使用过滤器和拦截器。
本文基于SpringBoot 2.2.5 RELEASE。
首先,介绍一下拦截器的使用办法,拦截器相对来说简单一些。
声明一个拦截器,和之前Spring MVC是一样的,继承自HandlerInterceptorAdapter,主要的代码如下:
public class TestInterceptor extends HandlerInterceptorAdapter&nb...
AOP的事务包裹
我们有时候会希望这样:
@拦截的注解
private void 我是被拦截的函数() {
... ....
}
//环绕通知
@Around("...")
public void roundRun(ProceedingJoinPoint joinPoint) {
try {
//执行被拦截的函数
joinPoint.proceed();
//做一些记录或者业务逻辑判断
... ...
} catch (Throwable e) {
throw new RuntimeException(e);
}
}
在“做一...
ActiveMQ实现RPC
本文基于ActiveMQ实现RPC,ActiveMQ可以至官网下载,地址为:http://activemq.apache.org/activemq-5144-release.html。本文基于Spring和Maven实现,所以对于此框架和工具需要有一定的了解。
1. 公共包
公共的实体类:
public class User implements Serializable {
private String id;
private String userName;
public String getUserName() {
return userName;
}
pu...
基于Nutz.Dao的数据权限管理的实现2
索引请点击这里
上篇文章说到简单的实现了数据权限的管理,但是从代码清晰度、条理性上来看,还是十分粗糙的,只能凑合着使用。要么说干这行纯粹就是跟自己作对呢,要么说程序员大都是完美主义者呢,所以我用我仅有的Java编程经验,绞尽脑汁的又改了一版出来,我觉的对于我来说没准就算到头了。
这次改进主要关注以下几个点:
1. 当前登录的人员不再由调用方传入,所以减少了一个参数。我觉的就应该是这样...
Nutz.DAO+Atomikos出现ResourceException错误
一直使用Atomikos做跨数据库的事务处理,之前都是SpringMVC+Hibernate+Atomikos,因为最近使用Nutz.DAO感觉很轻量很便捷,所以现在有一些项目使用SpringMVC+Nutz.Dao来做,今天遇到跨库需求,所以自然而然的引进了Atomikos,不过就出现了如题的错误,这个错误很奇怪,第一次请求数据库时发生,在之后就不会出现,困扰了很久,错误的具体内容如下:
HTTP Status 500 - Request processing failed; nested ex...
使用patchca生成验证码
patchca是一个验证码开源类库,使用它生成验证码的步骤如下。
1.在Maven的pom.xml中添加如下节点:
<dependency>
<groupId>com.github.bingoohuang</groupId>
<artifactId>patchca</artifactId>
<version>0.0.1</version>
</dependency>
2.编写一个生成验证码的工具类,本文中命名其为“ValidatCodeUtils”,代码如下:
public class Val...
使用注解实现SpringAop
SpringMVC启动的配置文件,扫描包时不要扫描Service,配置如下:
<context:component-scan base-package="com.xnck">
<context:exclude-filter type="annotation" expression="org.springframework.stereotype.Service"/>
</context:component-scan>
Spirng的配置文件,扫描包时不要扫描Controller,配置如下:
<context:component-scan base-package="com.xnck">
&...
WebService开发记录
自打去年被BMC的Web Service整的非常凄惨之后,我就对Java平台下的Web Service开发敬而远之,实在受不了各种莫名其妙的问题,还有开发的配置调试过程。但是今年的这个时间,我又不得不硬着头皮把Web Service嵌入一个老的项目里面,于是各种麻烦铺面而来。
先是想使用Axis2来开发,网络上的一篇篇文章说实话简直是没什么营养,我怀疑这帮人是不是只成功过一次,还是说有前置条件但是却没写出来,总之如果按...