Java-бин - это просто класс, соответствующий некоторым соглашениям:
- свойства, к которым могут обращаться геттеры (и сеттеры, если эти свойства не доступны только для чтения)
- открытый конструктор без аргументов
- сериализуемый
EL и теги JSP разработаны в соответствии с этими соглашениями.Большинству из них не нужно соблюдать все эти условности.Свойства, доступные получателям, являются наиболее важными из этих соглашений.Например, выражение
${foo.bar.name}
отображает имя бара компонента foo.foo - это bean-компонент, который должен находиться в контексте страницы, запроса, сеанса или приложения.И это выражение будет вызывать getBar()
для этого компонента, а затем getName()
для объекта, возвращаемого getBar()
.