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 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。
以下代码显示如何注册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>
以下代码显示了如何使用注释注册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将被创建只有当它被请求。
范围注释设置受管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.JSF是一个简单的静态依赖注入(DI)框架。@ManagedProperty注释标记要注入到另一个托管bean中的托管bean的属性。
Java equals() 方法Java Number类equals() 方法用于判断 Number 对象与方法的参数进是否相等。语法public boolean equals(Object...
Java ceil() 方法Java Number类ceil() 方法可对一个数进行上舍入,返回值大于或等于给定的参数。语法该方法有以下几种语法格式:...
Java max() 方法Java Number类max() 方法用于返回两个参数中的最大值。语法该方法有以下几种语法格式:double max(double arg1, ...
Java pow() 方法Java Number类pow() 方法用于返回第一个参数的第二个参数次方。语法double pow(double base, double exponent)参...
Java tan() 方法Java Number类tan() 方法用于返回指定double类型参数的正切值。语法double tan(double d)参数d-- 任何原生数据类...