![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
springboot
张尽欢
一个人要像一支队伍
展开
-
springboot 指定上传路径
@Bean MultipartConfigElement multipartConfigElement() { MultipartConfigFactory factory = new MultipartConfigFactory(); String location = PandaConfig.ROOT_PATH; File tmpFile = new File(location); if (!tmpFile.exists()...原创 2021-08-16 11:35:23 · 390 阅读 · 0 评论 -
springboot logback自定义配置文件路径
//需要在项目启动项执行static { System.setProperty("logging.config", System.getProperty("user.dir")+"/panda/config/logback.xml"); }原创 2021-08-12 11:06:01 · 1592 阅读 · 0 评论 -
java 自定义编译注解 进行代码检查
步骤一:编写自定义注解/** * author: WasonCheung * project: panda * blog: http://zjhblog.cc * date: 2021/7/10 0:59 * ClassName: CheckImports * Description: 源码注解 用于检测引入的包是否是就近引入 */@Retention(RetentionPolicy.SOURCE)@Target(ElementType.TYPE)public @interface C原创 2021-07-10 11:19:42 · 814 阅读 · 0 评论 -
2021 Spring 自定义注解 +AOP +方法入参
不同于用JoinPoint获取方法的参数值,这种直接注入参数的方式简洁又方便一:aop 实现类@Aspect@Componentpublic class CacheDelByRegexAop{ @After("@annotation(CacheDelByRegex) && args(regex)") public void after(String regex){ System.out.println("regex : "+regex); .原创 2021-07-09 14:23:01 · 544 阅读 · 0 评论 -
简易 责任链的两种实现方式
第一种,双向链表的方式具体处理者public interface ModelHandler { private ModelHandler next; private ModelHandler last; public final ModelHandler getLast() { return last; } public final void setLast(ModelHandler last) { this.last = last;原创 2021-06-18 09:50:08 · 160 阅读 · 0 评论 -
controller freemarker 踩坑小记
报错:would dispatch back to the current handler URL [xxx] again表示控制器返回视图给模板引擎,模板引擎没有找到对应的模板。控制器又再度拦截了请求。发生死循环将Freemarker的模板根路径配置到,jar包同目录spring.freemarker.template-loader-path=/...原创 2021-06-07 11:49:21 · 329 阅读 · 0 评论 -
springboot 全局异常处理 自定义mvc错误页面展示
如下:所有的异常都会进入到这里。根据个人业务按需处理全局异常处理@ControllerAdvicepublic class ErrorAdviceController { //指定捕获对象 @ExceptionHandler(Exception.class) public ModelAndView errorHandler(Exception e){ ModelAndView modelAndView = new ModelAndView(); .原创 2021-06-05 13:11:03 · 136 阅读 · 1 评论 -
Springboot 自定义Tomcat默认Servlet 资源路径
问题来源:这是一个复杂的需求。【controller 拦截所有请求–>判断是否存在资源 -->如果存在资源则转发到该资源】问题就卡在这里,因为这是一个死循环。所以想到了使用两个servlet来交互处理。Tomcat默认的DefaultServlet专门用来处理静态资源。同时又出现了一个问题。因为Tomcat的资源路径在webapp目录下面。1.如果想要部署的便捷性,就必须把webapp打包在一起。但这样无法管理webapp里面的资源2.如果想要便捷管理资源,就必须使用外部的To.原创 2021-06-04 20:01:19 · 602 阅读 · 0 评论 -
springboot ServletContextListener接口
常用于用来做一些项目启动时的初始化工作原创 2021-06-02 13:44:40 · 282 阅读 · 0 评论 -
Java Socket TeXT_FULL_WRITING 等问题解决
原因:多线程调用了同一个session 发送消息解决:封装一个用于发送信息的同步的方法例如:public synchronized void send(object o){session.getBasicRemote().sendText(o.toString());}原创 2021-05-17 09:04:58 · 902 阅读 · 0 评论 -
SpringBoot 动态创建多定时任务
需求:前端发起Socket请求,订阅K线数据,【参数:1min 5min。。。。】后端根据参数创建定时任务,并定时将数据推送到前端标题@Componentpublic class CronTaskRegistrar implements DisposableBean { private final Map<Runnable, ScheduledTask> scheduledTasks = new ConcurrentHashMap<>(16); @A.原创 2021-05-13 17:02:20 · 939 阅读 · 0 评论 -
JAVA websocket中 spring无法注入依赖问题解决
实现一个工具类@Componentpublic class SpringAware implements ApplicationContextAware { private static ApplicationContext APPLICATION_CONTEXT; @Override public void setApplicationContext(ApplicationContext app) throws BeansException { APPLICAT原创 2021-05-13 11:05:16 · 304 阅读 · 0 评论 -
JAVA Websocket 使用@PathParam无法获取参数
当你代码正确且排除了其它显而易见的问题。但仍然找不出,后台Socket中无法获取参数的原因那么在配置文件中填写如下配置:高版本的springboot中已经改变默认了地址的匹配模式。但凡涉及到地址匹配的就可以先解决这个问题!spring.mvc.pathmatch.matching-strategy=ant_path_matcher...原创 2021-04-27 10:49:21 · 1121 阅读 · 0 评论 -
JRebel 启动报错 could not be processed by xxx
首先排除是版本不兼容的原因。我遇到的问题,其原因是参数校验注解和ioc注解不能同时使用如图 去掉Repository就正常启动了原创 2021-04-26 18:16:34 · 718 阅读 · 0 评论 -
Springboot Freemarker 将模板放在jar包外面
解决打包的时候,把模板一起打包了,文件大不说,修改模板文件还得重新打包。application.propertiesspring.freemarker.template-loader-path=/原创 2021-04-19 15:10:08 · 503 阅读 · 0 评论 -
springmvc5.3 之后版本 舍弃AntPath地址匹配模式通配符 “**”用法改变。
在项目迁移的时候发现拦截器的规则 " / * * / * .html" 在springmvc5.3无法使用具体原因是spring在5.3后的版本中已经弃用了AntPath配置模式,因为该模式性能不够高效。在高版本中默认使用的pathPattern两者区别例:/ * * /*.htmlAntPath中 该规则是匹配所有html后缀的地址pathPattern中 该规则报错因为 ** 仅能放在规则的最后面很明显:pathPattern无法匹配任意层级目录任意文件名的指定后缀了。解决办.原创 2021-04-15 23:50:37 · 2328 阅读 · 0 评论