Статическое объявление означает, что у него будет только один экземпляр для этого класса и его подклассы (если только они не переопределяют MyVar).
Int - это 32-разрядный целочисленный примитив с дополнением 2, поэтому требуется 4 байты, чтобы удерживать его, если ваш пример не использовал static, вы просто умножаете это на количество экземпляров, которые у вас есть (для вашего примера из 100 000 экземпляров, которые составляют 0,38 мегабайта, только для одного поля дополнительные накладные расходы для реальных классов) .
Окончательный модификатор в поле означает, что он не может быть переназначен другому значению (тогда как окончательный класс класса означает, что он не может быть переопределен).
Это разные стартеры (от разных команд), предоставляющие разные функции, поэтому нет правильного или неправильного ответа.
Если вы уже используете graphql-java-tools
, вы, вероятно, захотите выбрать com.graphql-java-kickstart:graphql-spring-boot-starter
, так как они предназначены для совместного использования.
Если вы используете чистый graphql-java (или еще ничего не используете, и хотите разработать схему в первую очередь), вам, вероятно, следует перейти к com.graphql-java:graphql-spring-boot-starter
.
Если вы хотите максимально быстро представить существующие сервисы Spring, используйте graphql-spqr-spring-boot-starter
, который сгенерирует схему GraphQL и конечную точку для вас, без необходимости в дополнительном коде. Здесь есть пример проекта здесь . Я главный автор этого проекта, так что это бесстыдная вилка.