---
title: "Введение в JSF - Доступ к бинам"
description: "Если вы только начали читать этот блог, то советую прочитать предидущие уроки. В этом уроке я расска..."
author: "DeadSoul"
published: "2012-04-17T06:11:49+00:00"
modified: "2012-04-17T06:11:49+00:00"
locale: "ru"
canonical_url: "https://yvision.kz/post/vvedenie-v-jsf-dostup-k-binam-248906"
markdown_url: "https://yvision.kz/post/vvedenie-v-jsf-dostup-k-binam-248906/markdown"
site_name: "Yvision.kz"
---

# Введение в JSF - Доступ к бинам

> Если вы только начали читать этот блог, то советую прочитать предидущие уроки. В этом уроке я расска...

Если вы только начали читать этот блог, то советую прочитать предидущие уроки. В этом уроке я расскажу как использовать Управляемые бины в JSF страницах. Мы будем использовать приложение Hello World, которое мы разработали в [прошлом уроке](http://tutslink.blogspot.com/2012/04/understanding-jsf.html).

### **Управляемые бины - Глубокий взгляд**

Java бин - это Java класс который предоставляет доступ к своим свойствам и методам JSF страницам. Вы имеете доступ к свойствам (переменным) бина по средствам общепринятого стандарта - get/set методы. К примеру, если у вас есть свойство **name**, то метод для доступа к этому свойству будет **getName() (первая буква переменной в названии метода должна быть заглавной).**

** **

Вот пример управляемого бина:

> **package** org.netlink.examples;

> **import** javax.inject.*; **import** javax.enterprise.context.SessionScoped; **import** java.io.Serializable;

> **@Named @SessionScoped** **public class** MyBean **implements** Serializable { **private String** name; **public String** getName() { return name; } **public void** setName(**String** name) { **this.**name = name; } }

**1. @Named **- аннотация, котороя указывает что это CDI (Context & Dependency Injection) бин. Это очень удобно так как не надо объявлять бин в faces-config.xml. Используя аннотацию @Named мы можем получить доступ к бину из JSF страница по средствам EL #{myBean.name}. Также мы могли бы написать @Named(name="myBestBean") и использовать #{myBestBean.name). **2. @SessionScoped** - время жизни бина. SessionScoped означает что бин будет жить до окончания сессии. Жизненные циклы мы рассмотрим в последующих уроках. **3. Serializable** - CDI бин должен имплементировать итерфейс Serializable. [Далее](http://tutslink.blogspot.com/2012/04/jsf_17.html)

---

Source: [https://yvision.kz/post/vvedenie-v-jsf-dostup-k-binam-248906](https://yvision.kz/post/vvedenie-v-jsf-dostup-k-binam-248906)