如何在Facelets中添加文本

问题描述:

我不熟悉web编程,所以这是一个初学者的问题。如何在Facelets中添加文本

在我的web应用程序中,这是一个使用JSF框架(大学项目)的maven项目,我有一些只显示有关我的假航空公司(仅包含<p><h1>)的信息的文本页面。现在,我的问题。我应该只是“硬编码”JSF页面上的信息,还是应该使用beans来获取我的文本和标题?

将在我的信息页面上的信息将保持不变,永不改变。

如果这个问题不适合问这里,请让我知道,我会删除它。

+0

什么是您的XHTML和Java类是什么样子? – nityan 2014-10-19 01:02:54

+0

@nityan我还没有任何的managedbean类。我的模型中没有任何类处理我想要显示的文本。这个页面的xhtml只是一个没有任何头部的常规xhtml页面,因为它使用了一个具有必要头部信息的模板。 – Carlton 2014-10-19 01:05:10

+0

在这种情况下,我建议您采取适当的做法,您应该将航空公司的信息存储在某处,并使用bean类来显示信息(如果该信息在您的项目/作业范围内) – nityan 2014-10-19 01:09:55

既然你说,信息永远不会改变,它在一个字符串存储在bean类会工作,并使用getter方法来检索数据

@ManagedBean 
@SessionScoped 
public final class Airlineimplements Serializable 
{ 
    private static final long serialVersionUID = 47493274L; 

    private String title = "Air Canada"; 
    private String headquarters = "Toronto Ontario Canada"; 

    public Airline() 
    { 
    } 

    public String getTitle() 
    { 
     return title; 
    } 

    public String getHeadquarters() 
    { 
     return headquarters; 
    } 
} 

这是@RequestScoped让您检索请求后每个请求和信息的信息都会被垃圾回收。

A @RequestScoped bean将在每个请求结束时被垃圾回收并在每个新请求上重新创建。这里大约@ViewScoped

完整的答案VS @RequestScoped

Difference between View and Request scope in managed beans

虽然这应该是@SessionScoped这持续了会话的生命的信息。

对于Serializable UID,序列化运行时与每个可序列化类关联一个称为serialVersionUID的版本号,该版本号在反序列化期间用于确保序列化对象的调用方和接收方具有相同的加载类。有关序列化

http://docs.oracle.com/javase/7/docs/api/java/io/Serializable.html

下面是JSF的一些额外的教程初学者

更多信息

http://www.tutorialspoint.com/jsf/

http://www.vogella.com/tutorials/JavaServerFaces/article.html

+0

只是另一个初学者问题,这是什么意思:private static final long serialVersionUID = 47493274L; ?另外,为什么喜欢Requestscoped呢? – Carlton 2014-10-19 01:22:51

+0

谢谢!这非常有帮助! – Carlton 2014-10-19 01:37:44

+0

@BalusC感谢您的建议,我已经添加了一些关于JSF教程的链接。你也应该在这里使用正确的资源包。我很抱歉,我只是提供一些JSF知识来帮助人们开始。 – nityan 2014-10-19 21:44:26