Solon 开发 一.注入或手动获取配置 二.注入或手动获取Bean 三.构建一个Bean的三种方式 四.Bean 扫描的三种方式 五.切面与环绕拦截 六.提取Bean的函数进行定制开发 七.自定义注解开发汇总 八.注入依赖与初始化 1.如何注入Bean? 先了解一下Bean生命周期的简化版: 运行构建函数 尝试字段注入(有时同步注入,没时订阅注入.不会有相互依赖而卡住的问题) @Init 函数 ... 释放(基本不会发生) 了解这个生命过程后,可以知道注入的内容,在构建函数里是不可用的: @S…
Solon 开发 一.注入或手动获取配置 二.注入或手动获取Bean 三.构建一个Bean的三种方式 四.Bean 扫描的三种方式 五.切面与环绕拦截 六.提取Bean的函数进行定制开发 七.自定义注解开发汇总 八.注入依赖与初始化 1.如何通过注入获得配置? 注入到字段 @Service public class DemoService{ //注入值(带默认值:demoApi),并开启自动更新(注意:如果不是单例,请不要开启自动刷新) @Inject(value="${track.name:d…
Solon 开发 一.注入或手动获取配置 二.注入或手动获取Bean 三.构建一个Bean的三种方式 四.Bean 扫描的三种方式 五.切面与环绕拦截 六.提取Bean的函数进行定制开发 七.自定义注解开发汇总 八.注入依赖与初始化 1.手动 //生成普通的Bean Aop.wrapAndPut(UserService.class, new UserServiceImpl()); //生成带注解的Bean(比如:@Controller) Aop.context().beanMake(UserSe…
常规操作,先启动 Solon public class App{ public void main(String[] args){ Solon.start(App.class, args); } } 一.如何通过注入获得配置? 注入到字段 @Service public class DemoService{ //注入值 @Inject("${track.url}") String trackUrl; //注入配置集合 @Inject("${track.db1}")…
这个问题好像有点长,描述一下: 就是通过类名的方式获取Bean后,得到一个Object对象,但是这个Object不能再强转回Bean了.抛出的异常时类型转换异常.  java.lang.ClassCastException 还有一个现象就是,本来自己对类进行注解了,但是用类名获取的时候,获取不到,抛出的异常时找不到类. org.springframework.beans.factory.NoSuchBeanDefinitionException 还有一个是 java.lang.AbstractM…
1.SpringContextHolder.java package com.lkb.util; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; /** * SpringContextHolder * * @author Lilin * @date 2015/12/30 */ public class SpringC…
@Service @Lazy(false) public class SpringContextHolder implements ApplicationContextAware, DisposableBean { private static ApplicationContext applicationContext = null; private static Logger logger = LoggerFactory.getLogger(SpringContextHolder.class)…
使用如下工具类即可 package com.rio.ums.spa.commons.utils; import org.springframework.beans.BeansException; import org.springframework.context.ApplicationContext; import org.springframework.context.ApplicationContextAware; import org.springframework.stereotype…
Solon 开发 一.注入或手动获取配置 二.注入或手动获取Bean 三.构建一个Bean的三种方式 四.Bean 扫描的三种方式 五.切面与环绕拦截 六.提取Bean的函数进行定制开发 七.自定义注解开发汇总 八.注入依赖与初始化 1.启动时扫描 package org.example.demo; public class DemoApp{ public static void main(String[] args){ // // DemoApp.clas 的作用,是提供一个扫描范围:Demo…
Solon 开发 一.注入或手动获取配置 二.注入或手动获取Bean 三.构建一个Bean的三种方式 四.Bean 扫描的三种方式 五.切面与环绕拦截 六.提取Bean的函数进行定制开发 七.自定义注解开发汇总 八.注入依赖与初始化 为什么需要提取Bean的函数?绝不是闲得淡疼.比如:控制器的@Mapping:再比如:Xxl-Job的@XxlJob.这些都是要提取Bean的函数并定制加工的. 1.比如提取 @XxlJob 注解的函数,并注册到执行器 对Xxl-Job框架来说@XxlJob注解是已…