@SpringBootApplication
public class SpringBootTutorialBasicsApplication {
public static void main(String[] args) {
ApplicationContext applicationContext = SpringApplication.run(SpringBootTutorialBasicsApplication.class, args);
for (String name : applicationContext.getBeanDefinitionNames()) {
System.out.println(name);
}
}
}
public class PrintBeans {
@Autowired
ApplicationContext applicationContext;
public void printBeans() {
System.out.println(Arrays.asList(applicationContext.getBeanDefinitionNames()));
}
}
public class HelloWorldController {
@Autowired
private ApplicationContext applicationContext;
@RequestMapping("/hello")
public String hello(@RequestParam(value="key", required=false, defaultValue="World") String name, Model model) {
String[] beanNames = applicationContext.getBeanDefinitionNames();
for (String beanName : beanNames) {
System.out.println(beanName + " : " + applicationContext.getBean(beanName).getClass().toString());
}
model.addAttribute("name", name);
return "helloworld";
}
}
@SpringBootApplication
public class Application implements CommandLineRunner {
@Autowired
private ApplicationContext appContext;
public static void main(String[] args) throws Exception {
SpringApplication.run(Application.class, args);
}
@Override
public void run(String... args) throws Exception {
String[] beans = appContext.getBeanDefinitionNames();
Arrays.sort(beans);
for (String bean : beans) {
System.out.println(bean);
}
}
}
@SpringBootApplication
public class Application
{
public static void main(String[] args)
{
SpringApplication.run(Application.class, args);
}
@Bean
public CommandLineRunner run(ApplicationContext appContext) {
return args -> {
String[] beans = appContext.getBeanDefinitionNames();
Arrays.stream(beans).sorted().forEach(System.out::println);
};
}
}
public void setApplicationContext(ApplicationContext applicationContext) throws BeansException {
//Map<String, Object> serviceMap = applicationContext.getBeansWithAnnotation(XxlWebHandlerMapping.class);
String[] beanDefinitionNames = applicationContext.getBeanDefinitionNames();
if (beanDefinitionNames!=null && beanDefinitionNames.length>0) {
for (String beanDefinitionName : beanDefinitionNames) {
boolean isApiHandler = applicationContext.isTypeMatch(beanDefinitionName, XxlWebHandler.class);
if (isApiHandler) { // if (beanDefinition instanceof XxlWebHandler) {
Object beanDefinition = applicationContext.getBean(beanDefinitionName);
// valid annotation
XxlWebHandlerMapping annotation = beanDefinition.getClass().getAnnotation(XxlWebHandlerMapping.class);
if (annotation!=null && annotation.value()!=null && annotation.value().trim().length()>0 ) {
handlerRepository.put(annotation.value(), (XxlWebHandler) beanDefinition);
logger.warn(">>>>>>>>>>> xxl-hex, bind hex handler success : {}", annotation.value());
}
}
}
}
}
private void findAndRegisterAnnotatedDelegates(
ApplicationContext applicationContext) {
String[] beanNames = applicationContext.getBeanDefinitionNames();
for (String beanName : beanNames) {
Object bean = applicationContext.getBean(beanName);
if (bean != null) {
Class<?> type = bean.getClass();
Method[] methods = type.getMethods();
for (Method method : methods) {
findAndRegisterAnnotatedDelegateMethods(bean, method);
}
}
}
}
public static void main(String[] args) {
ApplicationContext ctx = SpringApplication.run(BusPassApp.class, args);
String[] beanNames = ctx.getBeanDefinitionNames();
Arrays.sort(beanNames);
StringBuilder sb = new StringBuilder("Application beans:\n");
for (String beanName : beanNames) {
sb.append(beanName + "\n");
}
log.info(sb.toString());
}
public void springContextIsValid() {
ApplicationContext context = new ClassPathXmlApplicationContext("spring/st-data-context.xml");
for (String s : context.getBeanDefinitionNames()) {
try {
context.getBean(s);
} catch (BeanIsAbstractException e) {
}
}
}
private void initializeBindings(Binding bindings) {
bindings.setVariable("context", applicationContext);
for (String name : applicationContext.getBeanDefinitionNames()) {
try {
bindings.setVariable(name, applicationContext.getBean(name));
} catch (BeanIsAbstractException e) {
} catch (Throwable t) {
LOGGER.warn("Can't get bean " + name + ", error: " + t, t);
}
}
bindings.setProperty("out", io.getOutputResultMessageStream());
bindings.setProperty("err", io.getOutputErrorMessageStream());
}