双击该Hello.java
文件以查看它。
在Hello
类,称为管理bean类,提供了getter和setter方法name
中的Facelets页面表达式中使用属性。默认情况下,表达式语言引用类名,第一个字母为小写(hello.name
)。
package javaeetutorial.hello1;
import javax.enterprise.context.RequestScoped;
import javax.inject.Named;
@Named
@RequestScoped
public class Hello {
private String name;
public Hello() {
}
public String getName() {
return name;
}
public void setName(String user_name) {
this.name = user_name;
}
}
如果使用bean类的默认名称,则可以指定@Model
为注释,而不必同时指定@Named
和@RequestScoped
。该@Model
注释被称为刻板印象,对于封装等注解注释的术语。稍后将在CDI应用程序中使用原型进行描述。一些例子将@Model
在适当的地方使用。
范围简介
在Hello.java
类中,注释javax.inject.Named
并 javax.enterprise.context.RequestScoped
使用请求范围将类标识为托管bean。范围定义应用程序数据如何保持和共享。
JavaServer Faces应用程序中最常用的范围如下:
-
Request(
@RequestScoped
):请求范围在Web应用程序中的单个HTTP请求期间保持不变。在类似的应用程序hello1
中,应用程序由单个请求和响应组成,bean使用请求范围。 -
Session(
@SessionScoped
):会话范围在Web应用程序中的多个HTTP请求中保持不变。当应用程序由需要维护数据的多个请求和响应组成时,bean使用会话范围。 -
Application(
@ApplicationScoped
):应用程序范围在所有用户与Web应用程序的交互中持续存在。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~