当前位置: 首页 > news >正文

JSF HTML标签教程一口气讲完!(下)

JSF OutputScript示例

JSF教程 - JSF OutputScript示例

h:outputScript标记渲染类型为“script"的HTML元素,类型为“text/javascript"。

此标记将外部JavaScript文件添加到JSF页面。

以下JSF标记

<h:outputScript library="js" name="help.js" />

被渲染为以下HTML代码。

<script type="text/javascript" src="/helloworld/javax.faces.resource/help.js.jsf?ln=js"></script>

例子

以下代码来自common.js。

document.write("www.w3cschool.cn");

下面的代码来自UserBean.java。

package cn.w3cschool.common;import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean{}

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:head></h:head><h:body><h:outputScript library="js" name="common.js" target="head" /></h:body></html>

下载 OutputScript.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF 表单命令按钮示例

JSF教程 - JSF表单命令按钮示例

h:commandButton标签渲染类型为“submit"的HTML输入元素。

下面的JSF代码

<h:commandButton value="Click Me!" οnclick="alert("Hello World!");" />

被渲染成以下HTML代码。

<input type="submit" name="j_idt10:j_idt13" value="Click Me!"οnclick="alert("Hello World!");" />

标签属性

属性描述
id标签的标识
rendered布尔值; false将抑制渲染
styleClass级联样式表(CSS)类名称
value值绑定
valueChangeListener响应值更改的方法绑定
required布尔值; 如果为true,则根据需要标记标签
coords形状为矩形,圆形或多边形的元素的坐标
dir文本的方向。 有效值为 ltr (从左到右)和 rtl (从右到左)。
disabled输入元素或按钮的禁用状态
style内联样式信息
tabindex指定制表符索引的数值
target打开文档的框架的名称
title用于辅助功能的标题。 浏览器通常为标题的值创建工具提示
width元素的宽度
onblur失去焦点的事件处理程序
onchange值更改的事件处理程序
onclick鼠标按钮的事件处理程序点击该元素
ondblclick双击鼠标按钮的事件处理程序
onfocus元素接收焦点的事件处理程序
onkeydown按键的事件处理程序
onkeypress键按下并释放的事件处理程序
onkeyupKey的事件处理程序发布
onmousedown鼠标按钮的事件处理程序
onmousemove鼠标移动的事件处理程序
onmouseout鼠标左的事件处理程序
onmouseover鼠标移动到的事件处理程序
onmouseup释放鼠标按钮的事件处理程序
onreset表单重置的事件处理程序
onselect选择文本的事件处理程序

例子

以下代码来自login.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:body><h1>login.xhtml</h1></h:body></html>

下面的代码来自UserBean.java。

package cn.w3cschool.common;import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean{public String goLoginPage(){return "login";}
}

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:head></h:head><h:body><h1>JSF 2 button and commandButton example</h1><h:form><ol><li><h:commandButton value="submit" type="submit" action="#{user.goLoginPage}" /></li><li><h:commandButton value="reset" type="reset" /></li><li><h:commandButton value="button" type="button" /></li><li><h:commandButton value="Click Me" type="button" οnclick="alert("h:commandButton");" /></li><li><h:button value="buton" /></li><li><h:button value="Click Me" οnclick="alert("h:button");" /></li><li><h:button value="buton" outcome="login" /></li></ol></h:form></h:body></html>

下载 Form_CommandButton.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF 链接示例

JSF教程 - JSF链接示例

h:Link标签渲染一个HTML“anchor"元素。

以下JSF标记

<h:link value="Page 1" outcome="page1" />

被渲染为以下HTML代码

<a href="/helloworld/page1.jsf">Page 1</a>

标签属性

属性描述
id标签的标识
binding引用在backing bean中使用的组件
rendered布尔值; false将抑制渲染
styleClass级联样式表(CSS)类名称
value值绑定
valueChangeListener响应值更改的方法绑定
converter转换器类名
validator附加到组件的验证器的类名
required布尔值; 如果为true,则根据需要标记标签
accesskey给予一个元素的焦点
accept表单的内容类型的逗号分隔列表
accept-charset表单的字符编码的逗号或空格分隔列表。
alt非文字元素(例如图片)的替代文字
border元素的边框宽度的像素值
charset链接资源的字符编码
coords形状为矩形,圆形或多边形的元素的坐标
dir文本的方向。 有效值为 ltr (从左到右)和 rtl (从右到左)。
hreflang使用 href 属性指定的资源的基本语言;
lang元素的属性和文本的基本语言
maxlength文本字段的最大字符数
readonly输入字段的只读状态
rel当前页面和链接页面之间的关系
rev将从 href 指定的锚点反向链接到当前文档。
style内联样式信息
tabindex指定制表符索引的数值
target打开文档的框架的名称
title用于辅助功能的标题。 浏览器通常为标题的值创建工具提示
type链接类型; 例如样式表
width元素的宽度
onblur失去焦点的事件处理程序
onchange值更改的事件处理程序
onclick鼠标按钮的事件处理程序点击该元素
ondblclick双击鼠标按钮的事件处理程序
onfocus元素接收焦点的事件处理程序
onkeydown按键的事件处理程序
onkeypress键按下并释放的事件处理程序
onkeyupKey的事件处理程序发布
onmousedown鼠标按钮的事件处理程序
onmousemove鼠标移动的事件处理程序
onmouseout鼠标左的事件处理程序
onmouseover鼠标移动到的事件处理程序
onmouseup释放鼠标按钮的事件处理程序
onreset表单重置的事件处理程序
onselect选择文本的事件处理程序

例子

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"><h:body><h:form><h:link value="Login page" outcome="login" /><br/><h:link value="Login page + Param " outcome="login" ><f:param name="username" value="mkyong" /></h:link><br/><h:link outcome="login" ><h:graphicImage library="images" name="myImage.png" /></h:link><br/><h:commandLink value="Login page" /><br/><h:commandLink action="#{user.goLoginPage}" value="Login page" /><br/><h:commandLink action="#{user.goLoginPage}" value="Login page + Param "><f:param name="username" value="mkyong" /></h:commandLink><br/><h:commandLink action="#{user.goLoginPage}"><h:graphicImage library="images" name="myImage.png" /></h:commandLink><br/><h:outputLink>Login page</h:outputLink><br/><h:outputLink value="login.xhtml" >Login page</h:outputLink><br/><h:outputLink value="login.xhtml"><h:outputText value="Login page" /><f:param name="username" value="www.w3cschool.cn" /></h:outputLink><br/><h:outputLink value="login.xhtml"><h:graphicImage library="images" name="myImage.png" /></h:outputLink></h:form></h:body>
</html>

下面的代码来自UserBean.java。

package cn.w3cschool.common;import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean{public String goLoginPage(){return "login";}
}

以下代码来自login.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:body><h1>login.xhtml</h1></h:body></html>

下载 Link-commandLink-outputLink.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

 JSF 命令链接

JSF教程 - JSF命令链接

h:commandLink标签渲染一个HTML“anchor"元素。

以下JSF标记

<h:commandLink value="Page 1" action="page1" />

被渲染为以下HTML代码

<a href="#" οnclick="mojarra.jsfcljs(document.getElementById("j_idt13"),
{"j_idt13:j_idt14":"j_idt13:j_idt14"},"");return false">Page 1</a>

标签属性

属性描述
id标签的标识
binding引用在backing bean中使用的组件
rendered布尔值; false将抑制渲染
styleClass级联样式表(CSS)类名称
value值绑定
valueChangeListener响应值更改的方法绑定
converter转换器类名
validator附加到组件的验证器的类名
required布尔值; 如果为true,则根据需要标记标签
accesskey给予一个元素的焦点
accept表单的内容类型的逗号分隔列表
accept-charset表单的字符编码的逗号或空格分隔列表。
alt非文字元素(例如图片)的替代文字
border元素的边框宽度的像素值
charset链接资源的字符编码
coords形状为矩形,圆形或多边形的元素的坐标
dir文本的方向。 有效值为 ltr (从左到右)和 rtl (从右到左)。
hreflang使用 href 属性指定的资源的基本语言;
lang元素的属性和文本的基本语言
maxlength文本字段的最大字符数
readonly输入字段的只读状态
rel当前页面和链接页面之间的关系
rev将从 href 指定的锚点反向链接到当前文档。
style内联样式信息
tabindex指定制表符索引的数值
target打开文档的框架的名称
title用于辅助功能的标题。 浏览器通常为标题的值创建工具提示
type链接类型; 例如样式表
width元素的宽度
onblur失去焦点的事件处理程序
onchange值更改的事件处理程序
onclick鼠标按钮的事件处理程序点击该元素
ondblclick双击鼠标按钮的事件处理程序
onfocus元素接收焦点的事件处理程序
onkeydown按键的事件处理程序
onkeypress键按下并释放的事件处理程序
onkeyupKey的事件处理程序发布
onmousedown鼠标按钮的事件处理程序
onmousemove鼠标移动的事件处理程序
onmouseout鼠标左的事件处理程序
onmouseover鼠标移动到的事件处理程序
onmouseup释放鼠标按钮的事件处理程序
onreset表单重置的事件处理程序
onselect选择文本的事件处理程序

例子

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"><h:body><h:form><h:link value="Login page" outcome="login" /><br/><h:link value="Login page + Param " outcome="login" ><f:param name="username" value="mkyong" /></h:link><br/><h:link outcome="login" ><h:graphicImage library="images" name="myImage.png" /></h:link><br/><h:commandLink value="Login page" /><br/><h:commandLink action="#{user.goLoginPage}" value="Login page" /><br/><h:commandLink action="#{user.goLoginPage}" value="Login page + Param "><f:param name="username" value="mkyong" /></h:commandLink><br/><h:commandLink action="#{user.goLoginPage}"><h:graphicImage library="images" name="myImage.png" /></h:commandLink><br/><h:outputLink>Login page</h:outputLink><br/><h:outputLink value="login.xhtml" >Login page</h:outputLink><br/><h:outputLink value="login.xhtml"><h:outputText value="Login page" /><f:param name="username" value="www.w3cschool.cn" /></h:outputLink><br/><h:outputLink value="login.xhtml"><h:graphicImage library="images" name="myImage.png" /></h:outputLink></h:form></h:body>
</html>

下面的代码来自UserBean.java。

package cn.w3cschool.common;import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean{public String goLoginPage(){return "login";}
}

以下代码来自login.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:body><h1>login.xhtml</h1></h:body></html>

下载 Link-commandLink-outputLink.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF 输出链接

JSF教程 - JSF输出链接

h:outputLink标签渲染一个HTML“anchor"元素。

以下JSF标记

<h:outputLink value="page1.jsf" >Page 1</h:outputLink>

将渲染为以下HTML标记。

<a href="page1.jsf">Page 1</a>

标签属性

属性描述
id标签的标识
binding引用在backing bean中使用的组件
rendered布尔值; false将抑制渲染
styleClass级联样式表(CSS)类名称
value值绑定
valueChangeListener响应值更改的方法绑定
converter转换器类名
validator附加到组件的验证器的类名
required布尔值; 如果为true,则根据需要标记标签
accesskey给予一个元素的焦点
accept表单的内容类型的逗号分隔列表
accept-charset表单的字符编码的逗号或空格分隔列表。
alt非文字元素(例如图片)的替代文字
border元素的边框宽度的像素值
charset链接资源的字符编码
coords形状为矩形,圆形或多边形的元素的坐标
dir文本的方向。 有效值为 ltr (从左到右)和 rtl (从右到左)。
hreflang使用 href 属性指定的资源的基本语言;
lang元素的属性和文本的基本语言
maxlength文本字段的最大字符数
readonly输入字段的只读状态
rel当前页面和链接页面之间的关系
rev将从 href 指定的锚点反向链接到当前文档。
style内联样式信息
tabindex指定制表符索引的数值
target打开文档的框架的名称
title用于辅助功能的标题。 浏览器通常为标题的值创建工具提示
type链接类型; 例如样式表
width元素的宽度
onblur失去焦点的事件处理程序
onchange值更改的事件处理程序
onclick鼠标按钮的事件处理程序点击该元素
ondblclick双击鼠标按钮的事件处理程序
onfocus元素接收焦点的事件处理程序
onkeydown按键的事件处理程序
onkeypress键按下并释放的事件处理程序
onkeyupKey的事件处理程序发布
onmousedown鼠标按钮的事件处理程序
onmousemove鼠标移动的事件处理程序
onmouseout鼠标左的事件处理程序
onmouseover鼠标移动到的事件处理程序
onmouseup释放鼠标按钮的事件处理程序
onreset表单重置的事件处理程序
onselect选择文本的事件处理程序

例子

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"><h:body><h:form><h:link value="Login page" outcome="login" /><br/><h:link value="Login page + Param " outcome="login" ><f:param name="username" value="mkyong" /></h:link><br/><h:link outcome="login" ><h:graphicImage library="images" name="myImage.png" /></h:link><br/><h:commandLink value="Login page" /><br/><h:commandLink action="#{user.goLoginPage}" value="Login page" /><br/><h:commandLink action="#{user.goLoginPage}" value="Login page + Param "><f:param name="username" value="mkyong" /></h:commandLink><br/><h:commandLink action="#{user.goLoginPage}"><h:graphicImage library="images" name="myImage.png" /></h:commandLink><br/><h:outputLink>Login page</h:outputLink><br/><h:outputLink value="login.xhtml" >Login page</h:outputLink><br/><h:outputLink value="login.xhtml"><h:outputText value="Login page" /><f:param name="username" value="www.w3cschool.cn" /></h:outputLink><br/><h:outputLink value="login.xhtml"><h:graphicImage library="images" name="myImage.png" /></h:outputLink></h:form></h:body>
</html>

下面的代码来自UserBean.java。

package cn.w3cschool.common;import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean{public String goLoginPage(){return "login";}
}

以下代码来自login.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:body><h1>login.xhtml</h1></h:body></html>

下载 Link-commandLink-outputLink.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF 相对应消息标记

JSF教程 - JSF相对应消息标记

h:message标记显示与UI元素相对应的消息。

以下JSF标记

<h:inputText  id="username"  size="20" label="UserName" required="true"><f:validateLength for="username" minimum="5" maximum="20" />      
</h:inputText><h:message for="username" style="color:red" />

如果输入超过20个字符。

<span style="color:red">UserName: Validation Error: 
Length is greater than allowable maximum of "20"</span>

如果输入小于5个字符。

<span style="color:red">UserName: Validation Error: 
Length is less than allowable minimum of "5"</span>

如果未输入输入字段。

<span style="color:red">UserName: Validation Error: Value is required</span>

标签属性

属性描述
id标签的标识
binding引用在backing bean中使用的组件
rendered布尔值; false将抑制渲染
styleClass级联样式表(CSS)类名称
for显示消息的组件ID
errorClass应用于错误消息的CSS类
errorStyleCSS样式应用于错误消息
fatalClassCSS类应用于致命消息
fatalStyleCSS样式应用于致命消息
globalOnly仅显示全局消息的指令。 默认值:false
infoClassCSS类应用于信息消息
infoStyleCSS样式应用于信息消息
layout消息布局规范:表或列表
showDetail确定是否显示邮件详细信息的布尔值。 h:messages的默认值为false,h:message的默认值为true
showSummary确定是否显示消息摘要的布尔值。h:messages的默认值为true,h:message的值为false
tooltip一个布尔值,用于设置是否在工具提示中呈现消息详细信息;仅当showDetail和showSummary为true时才会呈现工具提示
warnClass警告消息的CSS类
warnStyleCSS样式的警告消息
style内联样式信息
title用于辅助功能的标题。 浏览器通常为标题的值创建工具提示

例子

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"xmlns:ui="http://java.sun.com/jsf/facelets"><h:body><h:form><h:messages style="color:red;margin:8px;" /><br /><h:panelGrid columns="3">Enter your username :<h:inputText id="username" value="#{user.username}" size="20" required="true"label="UserName" ><f:validateLength minimum="5" maximum="10" /></h:inputText><h:message for="username" style="color:red" />Enter your age :<h:inputText id="age" value="#{user.age}" size="20" required="true"label="Age" ><f:validateLongRange for="age" minimum="1" maximum="200" /></h:inputText><h:message for="age" style="color:red" /></h:panelGrid><h:commandButton value="Submit" action="result" /></h:form></h:body>
</html>

下面的代码来自UserBean.java。

package cn.w3cschool.common;import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean implements Serializable{private static final long serialVersionUID = 1L;public String username;public int age;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}

以下代码来自result.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:body>Username : #{user.username}<br />Age : #{user.age}</h:body>
</html>

下载 Message_Tag.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF 所有消息标记

JSF教程 - JSF所有消息标记

h:messages标记在与UI元素对应的一个地方显示所有消息。

以下JSF标记

<h:messages style="color:red;margin:8px;" />

如果输入的用户名超过20个字符,输入的密码小于5个字符。

<ul style="color:red;margin:8px;"><li>  UserName: Validation Error: Length is greater than allowable maximum of "20" </li><li>  Password: Validation Error: Length is less than allowable minimum of "5" </li>
</ul>

标签属性

属性描述
id标签的标识
binding引用在backing bean中使用的组件
rendered布尔值; false将抑制渲染
styleClass级联样式表(CSS)类名称
for显示消息的组件ID
errorClass应用于错误消息的CSS类
errorStyleCSS样式应用于错误消息
fatalClassCSS类应用于致命消息
fatalStyleCSS样式应用于致命消息
globalOnly仅显示全局消息的指令。 默认值:false
infoClassCSS类应用于信息消息
infoStyleCSS样式应用于信息消息
layout消息布局规范:表或列表
showDetail确定是否显示邮件详细信息的布尔值。h:messages的默认值为false,h:message的默认值为true
showSummary确定是否显示消息摘要的布尔值。h:messages的默认值为true,h:message的值为false
tooltip一个布尔值,用于设置是否在工具提示中呈现消息详细信息;仅当showDetail和showSummary为true时才会呈现工具提示
warnClass警告消息的CSS类
warnStyleCSS样式的警告消息
style内联样式信息
title用于辅助功能的标题。 浏览器通常为标题的值创建工具提示

例子

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"xmlns:ui="http://java.sun.com/jsf/facelets"><h:body><h:form><h:messages style="color:red;margin:8px;" /><br /><h:panelGrid columns="3">Enter your username :<h:inputText id="username" value="#{user.username}" size="20" required="true"label="UserName" ><f:validateLength minimum="5" maximum="10" /></h:inputText><h:message for="username" style="color:red" />Enter your age :<h:inputText id="age" value="#{user.age}" size="20" required="true"label="Age" ><f:validateLongRange for="age" minimum="1" maximum="200" /></h:inputText><h:message for="age" style="color:red" /></h:panelGrid><h:commandButton value="Submit" action="result" /></h:form></h:body>
</html>

下面的代码来自UserBean.java。

package cn.w3cschool.common;import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean implements Serializable{private static final long serialVersionUID = 1L;public String username;public int age;public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}}

以下代码来自result.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:body>Username : #{user.username}<br />Age : #{user.age}</h:body>
</html>

下载 Message_Tag.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF PanelGrid示例

JSF教程 - JSF PanelGrid示例

h:panelGrid标记渲染一个HTML“table"元素。

以下JSF标记

<h:panelGrid id="panel" columns="2" border="1"cellpadding="10" cellspacing="1"><f:facet name="header"><h:outputText value="Login"/></f:facet><h:outputLabel value="Username" /><h:inputText  /><h:outputLabel value="Password" /><h:inputSecret /><f:facet name="footer"><h:panelGroup style="display:block; text-align:center"><h:commandButton id="submit" value="Submit" /></h:panelGroup></f:facet>
</h:panelGrid>

将渲染为以下HTML标记。

<table id="j_idt10:panel" border="1" cellpadding="10" cellspacing="1">
<thead><tr><th colspan="2" scope="colgroup">Login</th></tr>
</thead>
<tfoot><tr><td colspan="2"><span style="display:block; text-align:center"><input id="j_idt10:submit" type="submit"name="j_idt10:submit" value="Submit" /></span></td></tr>
</tfoot>
<tbody><tr><td><label>Username</label></td><td><input type="text" name="j_idt10:j_idt17" /></td></tr><tr><td><label>Password</label></td><td><input type="password" name="j_idt10:j_idt21" value="" /></td></tr>
</tbody>
</table>

标签属性

属性描述
id标签的标识
binding引用在backing bean中使用的组件
rendered布尔值; false将抑制渲染
styleClass级联样式表(CSS)类名称
value值绑定
bgcolor表的背景颜色
border表格边框的宽度
cellpadding表格单元周围的填充
cellspacing表格单元格之间的间距
columnClasses列的CSS类的逗号分隔列表
columns表中的列数
footerClass表的页脚的CSS类
frame框架框架侧面的规格    围绕要绘制的表格; 有效值:    none,above,below,hsides,vsides,lhs,rhs,box,border
headerClass表头的CSS类
rowClasses列的CSS类的逗号分隔列表
rules细胞之间画线的规格;    有效值:组,行,列,全部
summary表的摘要“使用的目的和结构    用于诸如语音的非视觉反馈
dir文本的方向。 有效值为 ltr (从左到右)和 rtl (从右到左)。
lang元素的属性和文本的基本语言
border元素的边框宽度的像素值
lang元素的属性和文本的基本语言
title用于辅助功能的标题。 浏览器通常为标题的值创建工具提示
width元素的宽度
onblur失去焦点的事件处理程序
onchange值更改的事件处理程序
onclick鼠标按钮的事件处理程序点击该元素
ondblclick双击鼠标按钮的事件处理程序
onfocus元素接收焦点的事件处理程序
onkeydown按键的事件处理程序
onkeypress键按下并释放的事件处理程序
onkeyupKey的事件处理程序发布
onmousedown鼠标按钮的事件处理程序
onmousemove鼠标移动的事件处理程序
onmouseout鼠标左的事件处理程序
onmouseover鼠标移动到的事件处理程序
onmouseup释放鼠标按钮的事件处理程序

例子

以下代码来自result.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"xmlns:c="http://java.sun.com/jsp/jstl/core"><h:body>Number :  <h:outputText value="#{user.number}" /></h:body>
</html>

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"xmlns:c="http://java.sun.com/jsp/jstl/core"><h:body><h:form><h:panelGrid columns="3">Enter a number : <h:inputText id="number" value="#{user.number}" size="20" required="true"label="Number" ><f:convertNumber /></h:inputText><h:message for="number" style="color:red" /></h:panelGrid><h:commandButton value="Submit" action="result" /></h:form></h:body>
</html>

下面的代码来自UserBean.java。

package cn.w3cschool.common;import java.io.Serializable;
import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean implements Serializable{int number;public int getNumber() {return number;}public void setNumber(int number) {this.number = number;}}

下载 PanelGrid.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF 参数示例

JSF教程 - JSF参数示例

我们可以使用f:param标签将参数传递给组件或传递请求参数。

以下代码显示如何将参数传递到UI组件。

<h:outputFormat value="Hello {0}!.">        <f:param value="World" />
</h:outputFormat>

以下代码传递请求参数及其名称。

<h:commandButton id="submit" value="Show Message" action="#{userData.showResult}"><f:param name="username" value="JSF 2.0 User" />
</h:commandButton>

标签属性

属性描述
id组件的标识符
binding引用可以在backing bean中使用的组件
name参数组件的可选名称
value存储在组件中的值

例子

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"><h:body><h:form id="form">Enter your name :<h:inputText size="10" value="#{user.name}" /><br /><br /><h:commandButton id="submitButton" value="Submit - US" action="#{user.outcome}"><f:param name="country" value="United States" /></h:commandButton></h:form></h:body>
</html>

以下代码来自result.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"><h:body><h3><h:outputFormat value="Hello,{0}. You are from {1}."><f:param value="#{user.name}" /><f:param value="#{user.country}" /></h:outputFormat></h3></h:body></html>

下面的代码来自UserBean.java。

package cn.w3cschool.common;import java.util.Map;import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.context.FacesContext;@ManagedBean(name="user")
@SessionScoped
public class UserBean{public String name;public String country;public String outcome(){FacesContext fc = FacesContext.getCurrentInstance();this.country = getCountryParam(fc);return "result";}//get value from "f:param"public String getCountryParam(FacesContext fc){Map<String,String> params = fc.getExternalContext().getRequestParameterMap();return params.get("country");}public String getName() {return name;}public void setName(String name) {this.name = name;}public String getCountry() {return country;}public void setCountry(String country) {this.country = country;}}

下载 Param.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder / bin / startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF 属性示例

JSF教程 - JSF属性示例

我们可以使用h:attribute标签将属性值传递给组件,或者通过动作侦听器将参数传递给组件。

以下代码显示如何使用h:attribute标签。

<h:commandButton id="submit" 
actionListener="#{userData.attributeListener}" action="result"> <f:attribute name="value" value="Show Message" />        <f:attribute name="username" value="JSF 2.0 User" />
</h:commandButton>

标签属性

属性描述
name要设置的属性的名称
value属性的值

例子

下面的代码来自UserBean.java。

package cn.w3cschool.common;import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;
import javax.faces.event.ActionEvent;@ManagedBean(name="user")
@SessionScoped
public class UserBean{public String nickname;public void attrListener(ActionEvent event){nickname = (String)event.getComponent().getAttributes().get("username");}public String outcome(){return "result";}public String getNickname() {return nickname;}public void setNickname(String nickname) {this.nickname = nickname;}}

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"><h:body><h:form id="form"><h:commandButton action="#{user.outcome}"actionListener="#{user.attrListener}"><f:attribute name="username" value="www.w3cschool.cn" /><f:attribute name="value" value="Click Me" /></h:commandButton></h:form></h:body>
</html>

以下代码来自result.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:body>#{user.nickname}</h:body>
</html>

下载 Attribute.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

JSF setPropertyActionListener示例

JSF教程 - JSF setPropertyActionListener示例

h:setPropertyActionListener标记将一个操作监听器添加到将bean属性设置为给定值的组件。

以下代码显示如何使用 f:setPropertyActionListener 

<h:commandButton id="submit" action="result" value="Show Message"> <f:setPropertyActionListener target="#{userData.data}" value="JSF 2.0 User" />
</h:commandButton>

例子

下面的代码来自UserBean.java。

package cn.w3cschool.common;import javax.faces.bean.ManagedBean;
import javax.faces.bean.SessionScoped;@ManagedBean(name="user")
@SessionScoped
public class UserBean{public String username;public String outcome(){return "result";}public String getUsername() {return username;}public void setUsername(String username) {this.username = username;}}

以下代码来自result.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"><h:body><h1>JSF 2 setPropertyActionListener example</h1>#{user.username}</h:body></html>

以下代码来自demo.xhtml。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"   xmlns:h="http://java.sun.com/jsf/html"xmlns:f="http://java.sun.com/jsf/core"><h:body><h:form id="form"><h:commandButton action="#{user.outcome}" value="Click Me"><f:setPropertyActionListener target="#{user.username}" value="w3cschool" /></h:commandButton></h:form></h:body>
</html>

下载 setPropertyActionListener.zip

运行

将生成的WAR文件从目标文件夹复制到Tomcat部署文件夹,并运行Tomcat-Install-folder/bin/startup.bat。

Tomcat完成启动后,在浏览器地址栏中键入以下URL。

http://localhost:8080/simple-webapp/demo.xhtml

相关文章:

JSF HTML标签教程一口气讲完!(下)

JSF OutputScript示例 JSF教程 - JSF OutputScript示例 h:outputScript标记渲染类型为“script"的HTML元素&#xff0c;类型为“text/javascript"。 此标记将外部JavaScript文件添加到JSF页面。 以下JSF标记 <h:outputScript library"js" name"…...

cmake报错The link interface of target “gRPC::grpc“ contains: OpenSSL::SSL 解决

系统环境&#xff1a;麒麟V10 报错描述&#xff1a; The link interface of target "gRPC::grpc" contains: OpenSSL::SSL but the target was not found. Possible reasons include: * There is a typo in the target name. * A find_package call is missing fo…...

C语言PythonBash:空白(空格、水平制表符、换行符)与转义字符

C语言 空白 C语言中的空白&#xff08;空格、水平制表符、换行符&#xff09;被用于分隔Token&#xff0c;因此Token间可以有任意多个空白。 // 例1 printf("Hello, World!"); 例1中存在5个Token&#xff0c;分别是&#xff1a; printf("Hello, World! \n&qu…...

【Python】轻松解析JSON与XML:Python标准库的json与xml模块

轻松解析JSON与XML&#xff1a;Python标准库的json与xml模块 在现代数据处理与交换中&#xff0c;JSON&#xff08;JavaScript Object Notation&#xff09;和XML&#xff08;eXtensible Markup Language&#xff09;是最常用的两种数据格式。它们广泛应用于API数据传输、配置…...

物联网对商业领域的影响

互联网彻底改变了通信方式&#xff0c;并跨越了因地理障碍造成的人与人之间的鸿沟。然而&#xff0c;物联网&#xff08;IoT&#xff09;的引入通过使设备能够连接到互联网&#xff0c;改变了设备的功能。想象一下&#xff0c;你的闹钟连接到互联网&#xff0c;并且能够用你的声…...

第16章 SELECT 底层执行原理

一、SELECT查询的完整结构 1.1 方式一&#xff08;SQL 92语法&#xff09; SELECT ..., ..., ... FROM ..., ..., ... WHERE 多表的连接条件 AND 不包含组函数的过滤条件 GROUP BY ..., ... HAVING 包含组函数的过滤条件 ORDER BY ... ASC/DESC LIMIT ..., ... 1.2 方式二&a…...

python查询日志,并组装sql,修复缺失的数据

前言 由于mysql链接超时波动&#xff0c;导致数据缺失&#xff0c;需要根据日志填补数据 流程 获取确实数据的订单列表 搜索日志&#xff0c;获取请求日志 根据请求日志拼装sql 打印sql供修复数据 代码 因为我们日志打印的有问题&#xff0c;所以这里用字符串截取获取入…...

RecyclerView进阶知识讲解

在 Android 开发中&#xff0c;RecyclerView 是一种高效的列表和网格布局控件&#xff0c;用于显示大规模数据。尽管基本使用方法简单&#xff0c;但深入理解并掌握其高级进阶用法能大幅提升用户体验和应用性能。下面&#xff0c;我将从布局管理、动画和手势、自定义缓存、优化…...

C语言 函数

时间&#xff1a;2024.11.10-11.11 一、学习内容 1、什么是函数 函数&#xff1a;程序中独立的功能。将反复书写的代码&#xff0c;又不确定什么时候回用到的代码打包起来。 2、函数的基本格式 函数的定义格式&#xff08;写在main函数外&#xff09; void 函数名() { 函数…...

windows中docker安装redis和redisinsight记录

创建一个Redis运行容器&#xff0c;命令如下 docker run -it -d --name redis -p 6379:6379 redis --bind 0.0.0.0 --protected-mode no -d 代表Redis容器后台运行 --name redis 给创建好的容器起名叫redis -p 6379:6379 将容器的6379端口映射到宿主机的6379端口&#xff0c;注…...

itextpdf打印A5的问题

使用A5打印的时候&#xff0c;再生成pdf是没有问题的。下面做了一个测试&#xff0c;在打印机中&#xff0c;使用A5的纸张横向放入&#xff0c;因为是家用打印机&#xff0c;A5与A4是同一个口&#xff0c;因此只能这么放。 使用itextpdf生成pdf&#xff0c;在浏览器中预览pdf是…...

qt QUndoView详解

1、概述 QUndoView 是 Qt 框架中用于显示 QUndoStack&#xff08;撤销堆栈&#xff09;内容的视图类。它通常与 QUndoStack 一起使用&#xff0c;为用户提供了一个可视化的界面来查看和操作撤销/重做历史。QUndoView 可以显示堆栈中的每个命令&#xff0c;并允许用户通过界面进…...

python+智谱AI-实现钉钉消息自动回复

python智谱AI-实现钉钉消息自动回复 实现了电脑窗口切换&#xff0c;截图识别未读消息&#xff0c;与语言模型交互后&#xff0c;将答案带入到钉钉窗口中。偷个懒&#xff0c;直接贴代码了&#xff0c;后续不断完善注释&#xff0c;如果遇到读不懂的地方&#xff0c;欢迎交流。…...

Kafka-Eagle的配置——kafka可视化界面

通过百度网盘分享的文件&#xff1a;kafka-eagle-bin-2.0.8.tar.gz 链接&#xff1a;https://pan.baidu.com/s/1H3YONkL97uXbLTPMZHrfdg?pwdsltu 提取码&#xff1a;sltu 一、界面展示 二、软件配置 1、关闭kafka集群 kf.sh stop 2、将该软件上传到/opt/modules下 cd /opt…...

【命令操作】Linux上带宽流量监控nethogs命令详解 _ 统信 _ 麒麟 _ 方德

原文链接&#xff1a;【命令操作】Linux上带宽流量监控nethogs命令详解 | 统信 | 麒麟 | 方德 Hello&#xff0c;大家好啊&#xff01;今天带来一篇关于Linux上nethogs命令详解的文章。nethogs是一款非常实用的网络流量监控工具&#xff0c;帮助用户实时查看系统中每个进程的网…...

【入门篇】数字统计——多语言版

题目跳转&#xff1a;数字统计 题目解析&#xff1a; 这道题目要求统计在给定范围 [L, R] 内所有整数中数字 2 出现的次数。例如&#xff0c;在范围 [2, 22] 中&#xff0c;数字 2 分别在数 2、12、20、21、22 中出现的次数&#xff0c;最终出现了6次。 题目的输入为两个正…...

探索那些现代C++语法糖

本文来聊聊现代C的一些语法糖。 1.Auto auto x 10; // 推导为 int auto y 3.14; // 推导为 double2.范围-based for 循环 std::vector<int> v {1, 2, 3, 4, 5}; for (auto val : v) {std::cout << val << " "; }3.nullptr int* ptr nullpt…...

【LeetCode】【算法】33. 搜索旋转排序数组

LeetCode 33. 搜索旋转排序数组 题目描述 整数数组 nums 按升序排列&#xff0c;数组中的值 互不相同 。 在传递给函数之前&#xff0c;nums 在预先未知的某个下标 k&#xff08;0 < k < nums.length&#xff09;上进行了 旋转&#xff0c;使数组变为 [nums[k], nums[k…...

Python小游戏25——黄金矿工

首先&#xff0c;你需要安装Pygame库。 如果你还没有安装&#xff0c;可以使用以下命令进行安装&#xff1a; 【bash】 pip install pygame 【python】代码展示 import pygame import random # 初始化Pygame pygame.init() # 设置屏幕尺寸 screen_width 800 screen_height 60…...

WPF中Prism框架中 IContainerExtension 和 IRegionManager的作用

在Prism框架中&#xff0c;IContainerExtension和IRegionManager扮演着重要的角色&#xff0c;具体作用如下&#xff1a; IContainerExtension IContainerExtension接口是Prism 7中引入的&#xff0c;用于抽象依赖注入容器的操作。它实现了IContainerProvider和IContainerReg…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

简易版抽奖活动的设计技术方案

1.前言 本技术方案旨在设计一套完整且可靠的抽奖活动逻辑,确保抽奖活动能够公平、公正、公开地进行,同时满足高并发访问、数据安全存储与高效处理等需求,为用户提供流畅的抽奖体验,助力业务顺利开展。本方案将涵盖抽奖活动的整体架构设计、核心流程逻辑、关键功能实现以及…...

循环冗余码校验CRC码 算法步骤+详细实例计算

通信过程&#xff1a;&#xff08;白话解释&#xff09; 我们将原始待发送的消息称为 M M M&#xff0c;依据发送接收消息双方约定的生成多项式 G ( x ) G(x) G(x)&#xff08;意思就是 G &#xff08; x ) G&#xff08;x) G&#xff08;x) 是已知的&#xff09;&#xff0…...

Day131 | 灵神 | 回溯算法 | 子集型 子集

Day131 | 灵神 | 回溯算法 | 子集型 子集 78.子集 78. 子集 - 力扣&#xff08;LeetCode&#xff09; 思路&#xff1a; 笔者写过很多次这道题了&#xff0c;不想写题解了&#xff0c;大家看灵神讲解吧 回溯算法套路①子集型回溯【基础算法精讲 14】_哔哩哔哩_bilibili 完…...

线程与协程

1. 线程与协程 1.1. “函数调用级别”的切换、上下文切换 1. 函数调用级别的切换 “函数调用级别的切换”是指&#xff1a;像函数调用/返回一样轻量地完成任务切换。 举例说明&#xff1a; 当你在程序中写一个函数调用&#xff1a; funcA() 然后 funcA 执行完后返回&…...

Nuxt.js 中的路由配置详解

Nuxt.js 通过其内置的路由系统简化了应用的路由配置&#xff0c;使得开发者可以轻松地管理页面导航和 URL 结构。路由配置主要涉及页面组件的组织、动态路由的设置以及路由元信息的配置。 自动路由生成 Nuxt.js 会根据 pages 目录下的文件结构自动生成路由配置。每个文件都会对…...

UR 协作机器人「三剑客」:精密轻量担当(UR7e)、全能协作主力(UR12e)、重型任务专家(UR15)

UR协作机器人正以其卓越性能在现代制造业自动化中扮演重要角色。UR7e、UR12e和UR15通过创新技术和精准设计满足了不同行业的多样化需求。其中&#xff0c;UR15以其速度、精度及人工智能准备能力成为自动化领域的重要突破。UR7e和UR12e则在负载规格和市场定位上不断优化&#xf…...

python执行测试用例,allure报乱码且未成功生成报告

allure执行测试用例时显示乱码&#xff1a;‘allure’ &#xfffd;&#xfffd;&#xfffd;&#xfffd;&#xfffd;ڲ&#xfffd;&#xfffd;&#xfffd;&#xfffd;ⲿ&#xfffd;&#xfffd;&#xfffd;Ҳ&#xfffd;&#xfffd;&#xfffd;ǿ&#xfffd;&am…...

JVM 内存结构 详解

内存结构 运行时数据区&#xff1a; Java虚拟机在运行Java程序过程中管理的内存区域。 程序计数器&#xff1a; ​ 线程私有&#xff0c;程序控制流的指示器&#xff0c;分支、循环、跳转、异常处理、线程恢复等基础功能都依赖这个计数器完成。 ​ 每个线程都有一个程序计数…...

华为OD机考-机房布局

import java.util.*;public class DemoTest5 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseSystem.out.println(solve(in.nextLine()));}}priv…...