Skip to content

Commit

Permalink
添加代理类名称关键字规则
Browse files Browse the repository at this point in the history
  • Loading branch information
admin801122 committed Nov 26, 2018
1 parent 1b5667f commit ffcddeb
Showing 1 changed file with 10 additions and 2 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,13 @@ public abstract class AbstractAutoScanProxy extends AbstractAutoProxyCreator {

private static final String SEPARATOR = ";";

//jdk proxy 名称关键字
private static final String JDK_PROXY_NAME_KEY = "com.sun.proxy";

//cglib proxy 名称关键字
private static final String CGLIB_PROXY_NAME_KEY = "ByCGLIB";


static {
System.out.println("");
System.out.println("╔═╗╔═╗ ╔╗");
Expand Down Expand Up @@ -322,7 +329,7 @@ public Object postProcessBeforeInitialization(Object bean, String beanName) thro
boolean scanPackagesContained = scanPackagesContained(bean.getClass());
if (scanPackagesContained) {
// 如果beanClass的类路径,包含在扫描目录中,则加入beanMap
beanMap.put(beanName, bean);
beanMap.put(beanName, bean);
}
} else {
// scanPackagesEnabled=false,表示“只扫描指定目录”的方式未开启,则所有扫描到的bean都加入beanMap
Expand Down Expand Up @@ -354,7 +361,8 @@ protected boolean scanPackagesContained(Class<?> beanClass) {
if (StringUtils.isNotEmpty(scanPackage)) {
// beanClassName有时候会为null...
String beanClassName = beanClass.getCanonicalName();
if (StringUtils.isNotEmpty(beanClassName) && beanClassName.startsWith(scanPackage)) {
if ((StringUtils.isNotEmpty(beanClassName) && beanClassName.startsWith(scanPackage))
|| beanClassName.contains(JDK_PROXY_NAME_KEY) || beanClassName.contains(CGLIB_PROXY_NAME_KEY)) {
return true;
}
}
Expand Down

0 comments on commit ffcddeb

Please sign in to comment.