spring通过java代码将对象放入spring容器,动态代理
java代码动态添加对象到spring容器
@Autowired public DefaultListableBeanFactory defaultBeanFactory; defaultBeanFactory.registerSingleton("a345",sysDict);
根据动态代理,创建代理对象,也可以动态创建对应的实现类,进行动态添加到spring容器中,在实现通用增删改查接口时使用过
ProxyFactory result = new ProxyFactory(); //代理对象/代理源 result.setTarget(sysDict); //添加方法增强 TestAop testAop = new TestAop(); result.addAdvice(testAop); Object proxy = result.getProxy(); defaultBeanFactory.registerSingleton("a345",proxy); SysDict a345 = context.getBean("a345", SysDict.class); a345.test01();
@Component public class TestAop implements MethodInterceptor { @Nullable @Override public Object invoke(@Nonnull MethodInvocation methodInvocation) throws Throwable { System.out.println(123); return methodInvocation.proceed(); } }

浙公网安备 33010602011771号