Java
文章平均质量分 74
acmev
这个作者很懒,什么都没留下…
展开
-
基于 Javaassist 和 Java agent 实现零侵入的 CompletabelFuture 线程切换时 ThreadLocal 继承
基于上述分析,着重介绍本文的解决方案:Javaassist 增强方法;Java assist 可以实现在类加载到 JVM 之前对类的字节码进行修改、增强,就可以很好的解决这个问题;(这种对系统核心类库进行字节码修改的操作好像不是特别推荐,此处只是给出这种思路的具体实现,不考虑工程上的合理性)要实现无侵入,还要使用 Java agent,先简单理解为可以在 main 方法执行前执行一些操作,实现对类加载到 JVM 之前,先对其字节码进行修改,这样业务上使用他的一些方法时就和以前一样,实现了零侵入的方法增强。原创 2024-05-14 20:32:34 · 748 阅读 · 1 评论 -
mybatis基于注解的开发方式
一、基本步骤创建主配置文件SqlMapConfig.xml<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"><!-- mybatis的住配置文件 --><configur原创 2020-08-24 17:57:29 · 231 阅读 · 0 评论 -
Shiro总结
一、Shiro使用基本步骤<一> 在web.xml中配置Shiro过滤器:<filter> <filter-name>shiroFilter</filter-name> <filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class> <init-param> <param-name>targe原创 2020-08-22 11:53:51 · 167 阅读 · 0 评论 -
Spring配合类使用@PropertySource和@Value注入值失败问题
今天在使用Spring整合Mybatis时,使用配置类代替xml配置,需要读取db.properties中的值来配置数据库连接池,发现不管配置之后driver、url等都是null;后来看到一篇博客给出了解决方案和原因,原因因为设计到SpringIOC的源码,现在还不太明白,下面给出解决措施:想知道原理可以参考这篇文章:http://yeming.me/2017/04/16/springValueAnnotation/原来的配置类:@ComponentScan(basePackages = {"da原创 2020-08-10 20:07:42 · 1894 阅读 · 0 评论 -
idea使用maven构建项目运行出错
在使用idea继承的maven构建项目时,编译全部通过,但是运行时出现了以下问题:![在这里插入图片描述](https://img-blog.csdnimg.cn/20200725083057722.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3FxXzQxNjk5OTU0,size_16,color_FFFFFF,t_70)因为tomcat原创 2020-07-25 08:33:01 · 321 阅读 · 0 评论 -
Java静态代理与动态代理
Java静态代理与动态代理(部分代码是伪代码形式,用于表述代理的基本思路)一、静态代理1、概述:<1>作用: 可以不修改目标对象而对其功能进行扩展;<2>要求(核心思想):需要定义一个接口父类,目标对象与代理对象一起实现相同的接口或者是继承相同父类;代理类需要有个静态成员属性:目标类的对象,在使用时,需要创建接口对象然后用代理对象给他赋值;<3>Code:(1)定义接口interface Father{ target_method1;原创 2020-07-04 10:00:01 · 85 阅读 · 0 评论 -
代码重构- - -多态+工厂模式替换Switch
代码重构- - -多态+工厂模式替换Switch一、问题描述:有一个演出类:Show,演出类里面能有一个获取折扣方法getDiscount(int type),根据不同类型的顾客提供不同的计算折扣方式;二、Code<一>Switch结构:public class Show{ public static final int SVIP = 1; public static final int VIP = 2; public static final int NORMA原创 2020-07-03 22:13:03 · 1086 阅读 · 0 评论