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

浙江邮电工程建设有限公司网站wordpress停用插件

浙江邮电工程建设有限公司网站,wordpress停用插件,wordpress 百度搜索,h5响应式音乐网站模板jsf 写一个action这是使用JSF 2.0#xff08;JavaServer Faces#xff09;构建的示例列表应用程序。 该应用程序是待办事项列表。 该应用程序具有添加#xff0c;编辑或删除列表中项目的功能。 待办事项具有名称和描述属性。 完成的应用程序的JSF页面具有#xff1a; 使用… jsf 写一个action 这是使用JSF 2.0JavaServer Faces构建的示例列表应用程序。 该应用程序是待办事项列表。 该应用程序具有添加编辑或删除列表中项目的功能。 待办事项具有名称和描述属性。 完成的应用程序的JSF页面具有 使用h:selectOneListbox html标记实现的待办事项列表。 使用f:selectItems核心标签填充列表数据。 待办事项名称和描述字段分别使用h:inputText和h:inputTextarea标记实现。 新增编辑保存删除和取消功能通过h:commandButton标记实现。 使用h:outputText标记实现的状态消息。 应用中使用的类 待办事项代表待办事项并具有名称和描述属性。 TodosBean这是一个托管bean 它具有运行应用程序的代码包括组件的侦听器和访问器方法。 TodoConverter这是一个自定义转换器将字符串todo名称转换为Todo对象反之亦然。 下图显示了已完成的应用程序的用户界面 此示例应用程序分三个步骤进行说明。 第一步说明基本列表的实现。 该应用程序的功能在接下来的步骤中得到了增强。 这些步骤是 步骤1待办事项列表显示项目并在选择时显示选定的待办事项属性。 第2步列出待办事项并执行将项目添加到列表的功能。 第3步列出待办事项和添加编辑和删除列表项的功能。 步骤1待办事项列表显示项目并在选择时显示选定的待办事项属性。 以下是此应用程序的代码组件 Todo.java类表示待办事项。 index.xhtml是带有列表框的JSF页面以及一条状态消息用于显示列表中的选定项目。 TodosBean.java托管Bean具有获取列表数据运行列表的值更改侦听器以及显示状态消息的功能。 Todo.java 此类表示待办事项。 它具有两个属性-名称和描述。 请注意 Object类的重写toString()方法。 Package com.javaquizplayer.example; public class Todo {private String name;private String desc;public Todo() {}public Todo(String name, String desc) {this.name name;this.desc desc;}public String getName() {return name;}public void setName(String name) {this.name name;}public String getDesc() {return desc;}public void setDesc(String desc) {this.desc desc;}Overridepublic String toString() {return this.name;} } index.xhtml 此JSF页面显示待办事项列表。 列表可以滚动可以选择一个项目。 所选项目名称显示在状态消息中。 列表框是使用h:selectOneListbox html标记实现的。 列表框的当前选定项目值由属性指定 value#{bean.todo} 。 选择项通过f:selectItems核心标签指定 f:selectItems value#{bean.data}/ 该标签位于h:selectOneListbox tag 。 列表框的项目是从TodosBean的getData()方法填充的该方法返回List集合。 列表框显示标签–待办事项的名称值即toString()方法中Todo对象的String值。 列表框的值更改侦听器使用以下属性指定 valueChangeListener#{bean.valueChanged} 选择列表项后将提交表单并执行此侦听器代码。 在此示例中当选择一个列表项时待办事项的名称在状态消息中显示为“ todo_item_name selected”。 每次在列表框中选择一个项目时都会提交该表单。 这是通过列表框的属性onchangesubmit() 。 状态消息与输出组件一起显示 h:outputText idmsg value#{bean.message} / 。 ?xml version1.0 encodingUTF-8? !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd html xmlnshttp://www.w3.org/1999/xhtmlxmlns:fhttp://java.sun.com/jsf/corexmlns:hhttp://java.sun.com/jsf/html h:headtitleA JSF List Example/title /h:head h:bodyh:formh3TODOs List/h3h:selectOneListbox idlist size10value#{bean.todo}valueChangeListener#{bean.valueChanged}onchangesubmit()f:selectItems value#{bean.data}/ /h:selectOneListboxh:outputText idmsg value#{bean.message} //h:form /h:body /html TodosBean 此托管bean类具有以下功能 创建初始待办事项数据并填充待办事项列表。 值更改侦听器以获取当前选定的列表项。 在列表中捕获当前选定的项目值。 设置状态消息。 package com.javaquizplayer.example; import javax.faces.bean.SessionScoped; import javax.faces.bean.ManagedBean; import javax.faces.event.ValueChangeEvent; import java.io.Serializable; import java.util.List; import java.util.ArrayList; ManagedBean(namebean) SessionScoped public class TodosBean implements Serializable {private ListTodo data; // todo list dataprivate String todo; // the currently selected item valueprivate String msg; // status messagepublic TodosBean() {loadData();// select the first item in the listTodo t data.get(0);setTodo(t.getName());setMessage(t.getName() selected.);}private void loadData() {data new ArrayList();Todo t new Todo(item 1, item 1 description);data.add(t);t new Todo(item 2, item 2 description);data.add(t);t new Todo(item 3, item 3 description);data.add(t);t new Todo(item 4, item 4 description);data.add(t);}public ListTodo getData() {return data;}public String getTodo() {return todo;}public void setTodo(String t) {todo t;}// value change listener for list item selectionpublic void valueChanged(ValueChangeEvent e) {String t (String) e.getNewValue();setMessage(t selected.);}public void setMessage(String s) {msg s;}public String getMessage() {return msg;} }步骤2列出待办事项并具有将项目添加到清单的功能。 在此步骤中应用程序具有添加新待办事项的功能。 单击新建按钮在名称和描述文本字段中输入待办事项数据并保存。 通过单击取消按钮或在列表中选择另一个项目来取消新的待办事项数据输入。 代码组成与上一步相同但是增加了新功能。 新的自定义转换器类将添加到应用程序。 Todo.java类表示待办事项未更改。 index.xhtml是带有列表框的JSF页面以及显示列表中所选项目的状态消息。 此外还有一些小部件可以输入新的待办事项并保存。 TodosBean.java托管Bean具有获取列表数据运行列表值更改侦听器并显示消息的代码。 此外还有用于新动作保存动作和取消动作的动作侦听器。 转换器TodoConverter.java将数据从todo字符串值转换为Todo对象反之亦然。 Todo.java 此类保持不变。 index.xhtml 以下是更改 列表框当前选择的项目值指定为 value#{bean.todo} 。 在上一步1中项目值解析为todo的名称字符串。 现在该值解析为Todo的一个实例。 以下是新添加的 待办事项的名称和描述字段分别通过h:inputText和h:inputTextarea标记实现。 请注意只有在编辑待办事项数据时即新的待办事项功能这些字段才可编辑 readonly#{not bean.editable} 。 当列表处于选择模式时这些字段是只读的。 转换器附加到列表以将选定的项目名称转换为Todo对象反之亦然使用f:converter核心标记 f:converter converterIdtodoConvertor/ 请注意为转换器设置了一个属性 f:attribute namebeanattr value#{bean}/ ; 用于访问转换器类中的Todo数据。 使用h:commandButton标签为新的保存和取消操作添加了三个命令按钮。 每个按钮都有其各自的动作侦听器。 例如 h:commandButton valueNew actionListener#{bean.newListener}/ 。 最后使用f:ajax核心标记将列表框的Submit更改为Ajax调用 onchangesubmit()替换为 f:ajax executethis rendermsg name desc / 为什么会有这种变化 使用提交选项时如果通过选择另一个列表项取消了“新建”操作则不会使用所选项目填充text和textarea字段。 值将保持编辑状态。 这是因为编辑后的文本值也随表格一起提交。 这些值将不会更改为所选项目的值。 但是对于Ajax不提交表单仅更新文本值 f:ajax标记的render属性指定要更新的字段状态消息待办事项名称和描述。 注意在以下代码中突出显示了上一步1中新添加和删除的代码行。 !DOCTYPE html PUBLIC -//W3C//DTD XHTML 1.0 Transitional//EN http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd html xmlnshttp://www.w3.org/1999/xhtmlxmlns:fhttp://java.sun.com/jsf/corexmlns:hhttp://java.sun.com/jsf/html h:headtitleA JSF List Example/title /h:head h:bodyh:formh3TODOs List/h3h:panelGridh:inputText idname value#{bean.todoName} size30readonly#{not bean.editable}/h:inputTextarea iddesc value#{bean.todoDesc}rows2 cols40readonly#{not bean.editable}/h:selectOneListbox idlist size10 value#{bean.todo}valueChangeListener#{bean.valueChanged}onchangesubmit()f:ajax executethis rendermsg name desc/f:selectItems value#{bean.data}/f:attribute namebeanattr value#{bean}/f:converter converterIdtodoConvertor//h:selectOneListbox/h:panelGridh:commandButton valueNew actionListener#{bean.newListener}/h:commandButton valueSave actionListener#{bean.saveListener}/h:commandButton valueCancel actionListener#{bean.cancelListener}/h:outputText idmsg value#{bean.message} //h:form /h:body /html TodoConverter.java 这是一个自定义转换器类将Todo对象转换为字符串todo名称反之亦然。 package com.javaquizplayer.example; import javax.faces.component.UIComponent; import javax.faces.context.FacesContext; import javax.faces.convert.Converter; import javax.faces.convert.ConverterException; import javax.faces.convert.FacesConverter; import java.util.Map; FacesConverter(valuetodoConvertor) public class TodoConverter implements Converter {private static final long serialVersionUID 1L;Overridepublic Object getAsObject(FacesContext context, UIComponent component,String value)throws ConverterException {if (value null) {return null;}MapString, Object attrs component.getAttributes(); TodosBean bean (TodosBean) attrs.get(beanattr);Todo todo bean.getTodoForName(value);return todo;}Overridepublic String getAsString(FacesContext context, UIComponent component,Object value)throws ConverterException {if (value null) {return null;}Todo todo (Todo) value;return todo.getName();} } TodosBean.java 此托管bean类具有以下功能 填充待办事项列表。 值更改侦听器以获取当前选定的列表项。 在列表中捕获当前选定的项目值。 设置状态消息。 这些是更改 将列表中当前选择的项目值捕获为Todo对象而不是先前使用的todo名称字符串。 更改值更改侦听器以获取Todo对象而不是字符串值todo名称。 这些是新添加的 待办事项名称描述及其可编辑性的访问器方法。 新的保存和取消动作的动作侦听器。 package com.javaquizplayer.example; import javax.faces.bean.SessionScoped; import javax.faces.bean.ManagedBean; import javax.faces.event.ValueChangeEvent; import javax.faces.event.ActionEvent; import java.io.Serializable; import java.util.List; import java.util.ArrayList; ManagedBean(namebean) SessionScoped public class TodosBean implements Serializable {private ListTodo data;private Todo todo; // selected item valueprivate String msg;private String name; // text field valueprivate String desc;private String actionFlag NONE; // specifies the current action (NEW, NONE)private boolean editable;public TodosBean() {loadData();if (data.size() 0) {return;}Todo t data.get(0);selectRow(t); // select the first item in the list}private void selectRow(Todo t) {setTodo(t);setTodoName(t.getName());setTodoDesc(t.getDesc());setMessage(t.getName() selected.););}private void loadData() {data new ArrayList();}public ListTodo getData() {return data;}public Todo getTodo() {return todo;}public void setTodo(Todo t) {todo t;}public void valueChanged(ValueChangeEvent e) {if (! actionFlag.equals(NONE)) {setEditable(false);actionFlag NONE;}Todo t (Todo) e.getNewValue();setMessage(t.getName() selected.););setTodoName(t.getName());setTodoDesc(t.getDesc());}public void setMessage(String msg) {this.msg msg;}public String getMessage() {return msg;}public String getTodoName() {return name;}public void setTodoName(String n) {name n;}public String getTodoDesc() {return desc;}public void setTodoDesc(String d) {desc d;}// returns the Todo object for a given todo name// method used in converterpublic Todo getTodoForName(String name) {for (Todo t : data) {if (name.equals(t.getName())) {return t;}}return null;}public void setEditable(boolean b) {editable b;}public boolean getEditable() {return editable;}public void newListener(ActionEvent e) {setEditable(true);setMessage(Enter new todo. Name must be uniquie and at least 5 chars.);setTodoName(NEW Todo);setTodoDesc();actionFlag NEW;}public void saveListener(ActionEvent e) {if (! actionFlag.equals(NEW)) {return;}String name getTodoName();String desc getTodoDesc();if (name.length() 5) {setMessage(Name must be at least 5 chars long.);return;}if (duplicateName(name)) {setMessage(Name must be unique.);return;}Todo t new Todo(name, desc);data.add(t);setMessage(name saved.);setTodo(t); // select the saved itemsetEditable(false);actionFlag NONE;}private boolean duplicateName(String name) {for (Todo t : data) {if (t.getName().equals(name)) {return true;}}return false;}public void cancelListener(ActionEvent e) {if (actionFlag.equals(NONE)) {return;}actionFlag NONE;setMessage(actionFlag action cancelled);if (data.size() 0) {setTodoName();setTodoDesc();setEditable(false);return;}// populate text fields with selected itemsetTodoName(todo.getName());setTodoDesc(todo.getDesc());setEditable(false);} }第3步列出待办事项和添加编辑和删除列表项的功能。 这是完成的应用程序。 它具有选择添加编辑和删除列表项的功能。 在此步骤中添加了两个新功能-编辑删除列表项。 要进行编辑请选择一个待办事项列表项然后单击“编辑”按钮。 这样可以更改名称和描述值并保存。 可以通过单击取消按钮或选择另一个列表项来取消编辑。 删除功能允许删除选定的待办事项列表项。 这些代码组件与前面的步骤2相同但是通过新功能进行了增强。 Todo.java类表示待办事项。 这没有改变。 转换器TodoConverter.java将数据从todo字符串值转换为Todo对象反之亦然。 这没有改变。 index.xhtml是具有列表框待办事项属性和状态消息的JSF页面该状态消息显示列表中的选定项目。 此外还有一些小部件可用于添加编辑所选项目或将其删除。 TodosBean.java托管Bean具有获取列表数据运行列表的值更改侦听器并显示消息的代码。 此外还有用于新的编辑删除保存和取消动作的动作侦听器。 Todo.java 此类保持不变。 TodoConverter.java 此类保持不变。 index.xhtml 以下是新添加的 添加了两个命令按钮以进行编辑和删除操作。 每个按钮都有其各自的动作侦听器。 TodoBean.java 此托管bean类具有以下功能 填充待办事项列表。 值更改侦听器以获取当前选定的列表项。 在列表中捕获当前选定的项目值。 设置状态消息。 待办事项名称描述及其可编辑性的访问器方法。 新的保存和取消动作的动作侦听器。 增强了这些功能以适应编辑和删除功能。 这些是新添加的 编辑和删除操作的操作侦听器。 代码下载 这些是下载完整的应用程序的WAR文件和源代码的链接。 源代码 WAR文件 注释和参考 该应用程序是使用Apache MyFaces 2.0开发的MyFaces 2.0实现了JavaServer Faces 2.0。 该应用程序已在Tomcat 6 Web服务器和GlassFish 3应用程序服务器GlassFish 3实现Java EE 6上进行了测试。 有用的链接 Apache MyFaces 2.0 GlassFish 3文档 Java EE 6 API 翻译自: https://www.javacodegeeks.com/2015/02/jsf-list-example.htmljsf 写一个action
http://www.yutouwan.com/news/494616/

相关文章:

  • 深圳市住房建设与保障局官方网站深圳制作公司网站
  • 阿里巴巴1688网站做店铺长安区网站建设
  • 昆明怎样优化网站网络哪家公司最好
  • 浙江专业网页设计免费建站深圳计算机速成班培训
  • 获得网站源文件网站建设推广费会计分录
  • 个人备案的网站 做企业站找方案的网站
  • 万网如何做网站手机网页视频下载软件
  • 婚车租赁网站怎样做什么网站能免费
  • 无锡网站推广电话互联网电子商务网站开发技术
  • 绵阳专业网站建设网站兼容
  • 昆明中小企业网站建设wordpress 导航下拉
  • 新乡电子商务网站建设红色文化网站建设
  • 做网站公司好开吗怎么做提卡网站
  • 西部数码网站管理系统怎样查网站谁做的
  • 药学专业网站网站 如何做后台维护
  • 企业网站手机端模板下载wap网站还有能打开的吗
  • 网站网址前的小图标怎么做深圳知名设计公司有哪些
  • 好的网站具备的条件wordpress用户头像
  • 关键词优化公司哪家强百度推广优化工具
  • 装修公司做网站有用吗优化关键词的方法
  • 怎么维护网站教程公司名称起名大全
  • 信息型网站软件开发文档包括
  • 设计网站合集的网站明灯赣州网络推广
  • 企业网站seo数据wordpress关闭邮箱验证码
  • 网站开发 沈阳如何增加网站的访问量
  • 电脑系统做的好的网站好桂林网站制作
  • 经营范围 网站开发wordpress编辑器模板
  • 企业网站建设要注意什么2022最新引流推广平台
  • 上海网站建设中小型企业快速排名工具免费查询
  • 东莞微网站建设建筑设计找工作的网站