举报投诉联系我们 手机版 热门标签 鳄鱼CMS
您的位置:鳄鱼CMS > jsf jpa JSF教程 - JSF管理Bean

jsf jpa JSF教程 - JSF管理Bean

2023-03-03 22:31 Java教程

jsf jpa JSF教程 -  JSF管理Bean

jsf jpa

JavaServer Faces(JSF)是一种用于开发Web应用程序的Java技术,它提供了一种标准的方法来创建功能强大的Web界面。它使用XML文件来定义用户界面元素,并使用JavaBeans来处理应用程序逻辑。

JSF提供了一个标准的MVC框架,可以帮助开发人员快速地创建功能强大的Web应用程序。它还提供了一个标准的API,可以让开发人员轻松地集成其他Java技术,如Enterprise JavaBeans、Java Persistence API和Java Message Service。

Java Persistence API(JPA)是一种Java数据访问技术,它使得开发人员能够将对象映射到关系数据库中。JPA使得开发人员不必写复杂的SQL语句来访问数据库中的数据。相反,他们可以使用JPA API中定义的对象和方法来执行数据访问任务。

JPA与JSF非常契合。JSF已经集成了JPA API,因此开发人员无需手动集成JPA API即可在JSF Web应用程序中使用JPA。此外,JSF还包含一个特定于JPA的EL表达式语法(EL = Expression Language) ,这样就不必写多余代码就能够在Web界面上显示数据库中存储的信息。

@Entity 
public class Person { 

    @Id 
    @GeneratedValue(strategy=GenerationType.AUTO) 
    private Long id; 

    private String name; 

    // getters and setters omitted for brevity 
}

JSF教程 - JSF管理Bean

JSF教程 - JSF管理Bean


JSF Managed Bean是使用JSF注册的常规Java Bean类。

JSF Managed Bean是使用JSF注册的常规Java Bean类。...

JSF管理的bean作为UI组件的模型。 它存储使用的数据通过JSF xhtml页面。

在JSF框架的帮助下,Managed Bean可以从JSF页面访问。

在JSF 1.2中,我们必须在JSF配置文件中注册一个托管bean例如faces-config.xml。

从JSF 2.0,可以使用注释注册托管bean。

使用XML配置

以下代码显示如何注册JSF受管Bean

<managed-bean>
  <managed-bean-name>helloWorld</managed-bean-name>
  <managed-bean-class>com..test.HelloWorld</managed-bean-class>
  <managed-bean-scope>request</managed-bean-scope>
</managed-bean> 
<managed-bean>
  <managed-bean-name>message</managed-bean-name>
  <managed-bean-class>com..test.Message</managed-bean-class>
  <managed-bean-scope>request</managed-bean-scope>
</managed-bean>


使用@ManagedBean注释

以下代码显示了如何使用注释注册JSF受管Bean。

@ManagedBean(name = "helloWorld", eager = true)
@RequestScoped
public class HelloWorld {
  
   @ManagedProperty(value="#{message}")
   private Message message;
   ...
}

@ManagedBean 将bean标记为在name属性中指定的名称的托管bean。

如果未指定name属性,则指定受管bean名称将默认为简单类名称,第一个字母为lowercased。 在我们的情况下,它会是helloWorld。

如果eager设置为“true",那么在请求bean之前创建managed bean。

“lazy"初始化被使用在bean将被创建只有当它被请求。



使用@ManagedBean注释...

范围注释设置受管bean的范围。

如果未指定scope,那么bean将默认为请求作用域。

我们可以将JSF bean范围设置为以下列表。

  • @RequestScoped bean lives as long as the HTTP request-response lives. It get created upon a HTTP request and get destroyed when the HTTP response associated with the HTTP request is finished.
  • @NoneScoped bean stays as long as a single Expression Language(EL) evaluation. It get created upon an EL evaluation and get destroyed after the EL evaluation.
  • @ViewScoped bean lives as long as user is interacting with the same JSF view in the browser window. It gets created upon a HTTP request and gets destroyed when users navigate to a different view.
  • @SessionScoped bean lives as long as the HTTP session lives. It gets created upon the first HTTP request and gets destroyed when the HTTP session is invalidated.
  • @ApplicationScoped bean lives as long as the web application lives. It gets created upon the first HTTP request or when the web application starts up and the eager=true attribute is set in @ManagedBean and gets destroyed when the web application shuts down.
  • @CustomScoped bean lives as long as the bean"s entry in the custom Map which is created for this scope lives.

@ManagedProperty注释

JSF是一个简单的静态依赖注入(DI)框架。@ManagedProperty注释标记要注入到另一个托管bean中的托管bean的属性。

阅读全文
以上是鳄鱼CMS为你收集整理的jsf jpa JSF教程 - JSF管理Bean全部内容。
声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。
相关文章
© 2024 鳄鱼CMS eyucms.com 版权所有 联系我们