Домой Spring MVC и Spring Boot Tutorials Как составить отчет / распечатать список всех загруженных Spring Bean-компонентов при запуске...

Как составить отчет / распечатать список всех загруженных Spring Bean-компонентов при запуске приложения Spring MVC

285
0

Вы работаете над проектом Spring MVC корпоративного уровня? Это с более чем сотнями классов и пакетов? Вы действительно боретесь за то, как получить список всей загруженной информации о бобах Spring MVC?

Используя приведенный ниже фрагмент кода Java, вы можете получить список загруженной информации о Spring Beans под рукой.

Давайте начнем:

Шаг 1

Предварительное условие: следуйте инструкциям Как использовать AJAX, jQuery в Spring Web MVC (.jsp) — полностью учебник. Убедитесь, что он работает отлично.

Шаг 2

Создайте two new файлы: CrunchifyMain.java а также CrunchifyLoadAllLoadedSpringMVCBean.java

CrunchifyMain.java

Джава
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
пакет ком . crunchify. контроллер ;
Импортировать орг. пружинная рама . контекст . поддержка. ClassPathXmlApplicationContext ;
/ *
* автор: Crunchify.com
*
* /
общественности учебный класс CrunchifyMain {
общественности статический недействительным main ( Строка [ ] аргументы ) {
CrunchifyLoadAllLoadedSpringMVCBean bean знак равно новый CrunchifyLoadAllLoadedSpringMVCBean ( ) ;
ClassPathXmlApplicationContext ctx знак равно новый ClassPathXmlApplicationContext ( new Строка [ ] { crunchify-bean.xml } ) ;
боб. crunchifyLogSpringBeans ( ctx ) ;
}
}
CrunchifyLoadAllLoadedSpringMVCBean.java

Джава
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
пакет ком . crunchify. контроллер ;
Импортировать орг. пружинная рама . контекст . ApplicationContext ;
/ *
* автор: Crunchify.com
*
* /
общественности учебный класс CrunchifyLoadAllLoadedSpringMVCBean {
общественности недействительным crunchifyLogSpringBeans ( ApplicationContext ctx ) {
Строка [ ] crunchifyBeans знак равно ctx . getBeanDefinitionNames ( ) ;
ИНТ loadedTotalBeans знак равно ctx . getBeanDefinitionCount ( ) ;
строка crunchifyFormat знак равно getCrunchifyFormat ( crunchifyBeans ) ;
printStatement ( String . format ( ————- Всего загруженных пружинных бобов:% d ————- / n , загруженный общий объем ) ) ;
ИНТ подсчитывать знак равно 1 ;
за ( Строка crunchifyBean : crunchifyBeans ) {
Класс < ? > beanType знак равно ctx . getType ( crunchifyBean ) ;
пакет beanPackage знак равно beanType . getPackage ( ) ;
printStatement ( String . format ( crunchifyFormat , считать ++ , crunchifyBean , beanType . getName ( ) , beanPackage ) ) ;
}
}
частный статический недействительным printStatement ( String ценность ) {
Система. вне. println ( значение ) ;
}
частный статический строка getCrunchifyFormat ( String [ ] crunchifyBean ) {
ИНТ Пространство имен знак равно betterAlignment ( crunchifyBean ) ;
ИНТ typespace знак равно ( crunchifyBean . длина < 100 ) ? 2 : 3 ;
вернуть Строка. format ( %%% dd: Crunchify Bean Name: %% -% ds / n — Тип Bean: %% s / n — Пакет: %% s / n , пространство типов , пространство имен ) ;
}
частный статический ИНТ betterAlignment ( String [ ] crunchifyBean ) {
ИНТ длина знак равно 0 ;
за ( Строка crunchifyString : crunchifyBean ) {
если ( crunchifyString . length ( ) > длина )
длина знак равно crunchifyString . длина ( ) ;
}
вернуть длина ;
}
}

Шаг 3

Создайте resource папка как Source Folder в том же месте, что и src папка.

Шаг 4

Создайте config папка как новая Source Folder под resource папка. То же, что и выше.

Шаг 5

Создайте два новых файла:

  1. config.properties под config папка
  2. crunchify-bean.xml файл под resource папка
config.properties

1
2
3
КОМАНДА = ХРАНИТЬ . COM
FILE_PATH = config / crunchify . свойства
ANY_OTHER_KEY_VALUES = AS_PER_YOUR_NEED
crunchify-bean.xml

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
xml version = 1.0 encoding = UTF-8 ?>
< beans xmlns = http://www.springframework.org/schema/beans
xmlns : util = http://www.springframework.org/schema/util xmlns : xsi = http://www.w3.org/2001/XMLSchema-instance
xmlns : context = http://www.springframework.org/schema/context
xsi : schemaLocation =
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util-3.0.xsd
http://www.springframework.org/schema/context
http://www.springframework.org/schema/context/spring-context-3.0.xsd >
< util : properties id = nodeProperty
location = classpath: config / crunchify.properties / >
< context : propertyзаполнитель
свойстваref = nodeProperty / >
< context : componentscan basepackage = com.crunchify.controller / >
< / beans >

Шаг 6

Убедитесь, что у вас есть структура проекта ниже.

ЧИТАТЬ ТАКЖЕ:  Как использовать AJAX и jQuery в приложении Spring Web MVC (.jsp)

Шаг 7

Бежать CrunchifyMain.java программа.

Вы должны увидеть результат, как показано ниже, в консоли Eclipse .

Весенние бобы и информация

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
декабрь 22 , 2014 3 : 06 : 28 PM орг . пружинная рама . контекст . поддержка. ClassPathXmlApplicationContext prepareRefresh
ИНФОРМАЦИЯ : Освежающий орг . пружинная рама . контекст . поддержка. ClassPathXmlApplicationContext @ 5629626a : дата запуска [ Пн дек 22 15 : 06 : 28 CST 2014 ] ; корень контекста иерархии
декабрь 22 , 2014 3 : 06 : 28 PM орг . пружинная рама . бобы. завод. XML. XmlBeanDefinitionReader loadBeanDefinitions
ИНФОРМАЦИЯ : Загрузка определений XML- бинов из класса ресурс пути [ Хрустбоб . xml ]
декабрь 22 , 2014 3 : 06 : 29 PM орг . пружинная рама . бобы. завод. конфиг . PropertiesFactoryBean loadProperties
ИНФОРМАЦИЯ : Загрузка файла свойств из класса ресурс пути [ config / crunchify . свойства ]
————- Всего загруженных весенних бобов : 10 ————-
1 : Crunchify Bean Name : nodeProperty                                                                                           
Тип бобов : Java. Util. свойства
Пакет : пакет Java. ути , Спецификация API платформы Java , версия 1,7
2 : Crunchify Bean Name : орг. пружинная рама . бобы. завод. конфиг . PropertyPlaceholderConfigurer # 0
Тип бобов : орг. пружинная рама . бобы. завод. конфиг . PropertyPlaceholderConfigurer
Пакет : пакет орг. пружинная рама . бобы. завод. конфиг
3 : Crunchify Bean Name : crunchifyHelloWorld                                                                                   
Тип бобов : ком . crunchify. контроллер . CrunchifyHelloWorld
Пакет : пакет ком . crunchify. контроллер
4 : Crunchify Bean Name : crunchifySpringAjaxJQuery                                                                             
Тип бобов : ком . crunchify. контроллер . CrunchifySpringAjaxJQuery
Пакет : пакет ком . crunchify. контроллер
5 : Crunchify Bean Name : орг. пружинная рама . контекст . аннотация . internalConfigurationAnnotationProcessor                       
Тип бобов : орг. пружинная рама . контекст . аннотация . ConfigurationClassPostProcessor
Пакет : пакет орг. пружинная рама . контекст . аннотирование
6 : Crunchify Bean Name : орг. пружинная рама . контекст . аннотация . internalAutowiredAnnotationProcessor                           
Тип бобов : орг. пружинная рама . бобы. завод. аннотация . AutowiredAnnotationBeanPostProcessor
Пакет : пакет орг. пружинная рама . бобы. завод. аннотирование
7 : Crunchify Bean Name : орг. пружинная рама . контекст . аннотация . internalRequiredAnnotationProcessor                             
Тип бобов : орг. пружинная рама . бобы. завод. аннотация . RequiredAnnotationBeanPostProcessor
Пакет : пакет орг. пружинная рама . бобы. завод. аннотирование
8 : Crunchify Bean Name : орг. пружинная рама . контекст . аннотация . internalCommonAnnotationProcessor                               
Тип бобов : орг. пружинная рама . контекст . аннотация . CommonAnnotationBeanPostProcessor
Пакет : пакет орг. пружинная рама . контекст . аннотирование
9 : Crunchify Bean Name : орг. пружинная рама . контекст . аннотация . Конфигурация ClassPostProcessor . importAwareProcessor           
Тип бобов : орг. пружинная рама . контекст . аннотация . ConfigurationClassPostProcessor $ ImportAwareBeanPostProcessor
Пакет : пакет орг. пружинная рама . контекст . аннотирование
10 : Crunchify Bean Name : орг. пружинная рама . контекст . аннотация . Конфигурация ClassPostProcessor . enhancedConfigurationProcessor
Тип бобов : орг. пружинная рама . контекст . аннотация . ConfigurationClassPostProcessor $ EnhancedConfigurationBeanPostProcessor
Пакет : пакет орг. пружинная рама . контекст . аннотирование

Загружено намного больше бобов, но здесь я показал только ~ 10 в приведенном выше результате . Дайте мне знать, что вы видите, и есть вопросы.

Как составить отчет / распечатать список всех загруженных Spring Bean-компонентов при запуске приложения Spring MVC

0.00 (0%) 0 votes

ОСТАВЬТЕ ОТВЕТ

Пожалуйста, введите ваш комментарий!
пожалуйста, введите ваше имя здесь