返回顶部
首页 > 资讯 > 精选 >seam+jsf开发心得是什么
  • 876
分享到

seam+jsf开发心得是什么

2023-06-17 12:06:35 876人浏览 独家记忆
摘要

这期内容当中小编将会给大家带来有关seam+jsf开发心得是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Seam全称是Jboss Seam,是一个Java EE 5框架。JSF是一种标准的 J2EE

这期内容当中小编将会给大家带来有关seam+jsf开发心得是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

Seam全称是Jboss Seam,是一个Java EE 5框架。JSF是一种标准的 J2EE 表示层的技术,其主旨是为了使 Java 开发人员能够快速的开发基于 Java 的 WEB 应用程序。

1. 异常处理问题

请为JSF加入Seam框架,看看Seam框架 - 无缝集成JSF,共三部分,里面告诉了你怎么在servlet容器下配合spring使用Seam,Seam不是一定要在ejb3和jboss下才可以使用。因为单独使用JSF的话她的异常处理功能很简陋,跟踪不到你想看的地方,对于开发很不方便,你只有打开日志才能看到问题所在,而Seam在加入 phase-listener以后,对JSF不同的生命周期都进行了功能增强,即使不使用Seam任何的功能,她也能毫无保留的输出所有的异常栈。

2.css问题

如果你想在你的项目中使用JSF,CSS太重要了,很多刚开始使用JSF的人都不是很习惯JSF基于块结构开发页面,因为JSF让你注意的是内容展现的结构,而不是内容展现的样式,这是完全符合w3开发html的初衷,大家使用< td>来做页面展现布局,其实是错误已久的方法,如果在JSF中能了解如何使用css进行布局,JSF不适合复杂页面设计这句话就不攻自破了。

3. 细心的使用dataTable组件

数据列表是最常用的页面组件,但是我毫不留情的说JSF的dataTable组件的实现简直太滥了,它就是 JSF 开发一大祸根。没有很方便的解决特定行样式显示的问题,没有解决回退按钮风险问题,没有dataScroll和dataTable组件进行数据库分页的优雅办法,数据提交的幻影问题,我的开发很多时间用在了dataTable的和其他组件块融合上面。不过JSF1.2通过统一el,加入了对jstl的 foreach标记的支持,我虽然还没有使用,但是我认为这有可能成为数据列表开发的一个有力补充。

4.建议把JSF的模型bean和后台的业务bean合二为一

这样可以在前端提交页面与模型绑定的同时,完成业务bean的数据封装,并且交由服务层处理一气呵成。这样做有个好处,就是我们会想方设法通过各种手段在***时间就完成模型bean对业务bean的封装,消除服务层对dto的依赖。这样是可行的,因为JSF的页面绑定机制提供了很好的帮助。

5.请考虑多的使用convert组件

比如列表页面有个radio块,提交radio值就是一个int数值,然后在展现逻辑去恢复这个radio 值对应的业务模型,这样增加了展现逻辑处理页面数据的负担,而且不好管理,如果把这个工作放在自定义的convert中,让convert在页面上显示 int数值,在提交上寻找对象,那么页面和服务层就屏蔽了这样的工作,看到的都是对象的进出。

6.用了myfaces的组件

我使用了myfaces一个自己的组件,就是跨页面专递参数,非常好用,刚使用JSF的朋友,可以看到跳转的下一个页面用它怎么做,但是建议传递模型对象,不要传递数值,你使用JSF就是因为她是基于对象考虑页面设计的。

7. 小心使用session来处理JSF

JSF过多的使用了session,但是我可以肯定一点,展现层一定是需要基于状态的方式来做的,这样可以简化开发,无状态的方式会带来更多的无序代码。不是每个人都是高手。可以考虑使用Seam的conversation来处理,她的长会话特别适合业务编辑,默认的短会话会填补JSF有时容易丢失的短期数据。

8.调试JSF的问题

有时你使用JSF想知道你的数据在哪个阶段变化了,你不会把JSF代码加入到自己的工程中来调试把,请加入自定义的phaseListener,继承phaseListener这个接口,你可以在把你的程序设置在任何阶段跳出来进行调试。

9. 分页的问题

Google搜一下,有个Http://www.blogjava.net/steady/arcHive/2005/12 /30/26013.aspx提供了分页的方式,我就在使用,这是目前最可能的方式了把,呵呵,不过要注意她使dataTable的values直接使用了dataModel,她与Seam的@dataModel是不兼容的,所以不能使用Seam的@dataModel功能,需要使用get方式了。

10.如果想使用ajax4JSF等ajax框架,你需要使用facelet,让页面成为标准的xhtml,记好了,不要写了一大堆才发现这个问题

11. 如果你在dataTable列表页面使用了radio的话,

你还想在列表上做一些link操作,一定要在操作上加入immediate= true,否则在没有选择radio的情况下她是不会让你过去的。并且列表中要使用selectBooleanRadio,而不是 selectOneRadio或者selectManyRadio。checkbox也是一样。

12.对于doGet的方式请使用Seam的组件。

13. 如果你导入了其他页面,而没有使用facelet的话,那么导入的那个页面就要完全符合JSF组件的渲染方式,混合html会解析不出来。

反过来在主页面应该尽量多使用JSF标记与html混合的方式,这样可以使开发变得简单,尽管有时候JSF会很丢丑,你试试每个html组件都有个 render属性就知道了。JSF1.2已经把混合的html作为一个output组件来输出,可以和JSF组件兼容,是件好事。对于混合html这种方式,我想说你关注的是JSF组件和模型的关系,而不一定页面都得是JSF组件标记。

14.不要相信JSF运行的速度慢

JSF虽然在树形组件处理上,每一个阶段都经历了递归遍历,但是要相信JSF依然很快,我现在的系统很快,如果你使用后很慢那是项目产生了问题,而不是框架的产生了问题。

上述就是小编为大家分享的seam+jsf开发心得是什么了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网精选频道。

--结束END--

本文标题: seam+jsf开发心得是什么

本文链接: https://lsjlt.com/news/289084.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • seam+jsf开发心得是什么
    这期内容当中小编将会给大家带来有关seam+jsf开发心得是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。Seam全称是Jboss Seam,是一个Java EE 5框架。JSF是一种标准的 J2EE...
    99+
    2023-06-17
  • JSF是什么
    这篇文章给大家分享的是有关JSF是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。  一、什么是JSF   JSF和JSP是一对新的搭档。JSP是用于后台的逻辑处理的技术,而JSF恰恰相反,是使开发人员能够快速...
    99+
    2023-06-03
  • 什么是 JSF(Java Server Faces)
    JSF为JAVA的 Web应用用户界面的开发人员提供了标准的编程接口、丰富可扩展的UI组件库(一个核心的JSP标记库用来处理事件、执行验证以及其他非UI相关的操作和一个标准的HTML 标记库来表示 UI组件)、事件驱动模型等一套完整的Web...
    99+
    2023-06-03
  • DataNode是怎么向NameNode发送心跳得
    这篇文章主要讲解了“DataNode是怎么向NameNode发送心跳得”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“DataNode是怎么向NameNode...
    99+
    2024-04-02
  • windows平台bugfree3.0.3搭建心得是什么
    windows平台bugfree3.0.3搭建心得是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。   ...
    99+
    2024-04-02
  • Java异常的学习心得是什么
    这期内容当中小编将会给大家带来有关Java异常的学习心得是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一. 异常机制异常机制是指当程序出现错误后,程序如何处理。具体来说,异常机制提供了程序退出的安全...
    99+
    2023-06-17
  • OpenSuse 字体设置的心得是什么
    这篇文章给大家介绍OpenSuse 字体设置的心得是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Opensuse 字体设置的kde3默认的konsole字体实在太难看了,七歪八扭的。更郁闷的是不好设置,改了一个字...
    99+
    2023-06-16
  • Java NIO2 AIO开发核心流程是什么
    这篇文章主要讲解了“Java NIO2 AIO开发核心流程是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Java NIO2 AIO开发核心流程是什么”吧!按照《Unix网络编程》的划分...
    99+
    2023-06-17
  • JSF和JavaScript的区别是什么
    这篇文章主要介绍“JSF和JavaScript的区别是什么”,在日常操作中,相信很多人在JSF和JavaScript的区别是什么问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”...
    99+
    2024-04-02
  • JSF与Struts的区别是什么
    本篇内容介绍了“JSF与Struts的区别是什么”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!JSF与Struts的异同  Struts和J...
    99+
    2023-06-03
  • 代驾小程序开发核心功能是什么
    这篇文章将为大家详细讲解有关代驾小程序开发核心功能是什么,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。随着越来越多的人意识到酒后驾驶的危害性,代驾业务成为受欢迎的市场。 代驾公司也正式走上合法化的道路。 ...
    99+
    2023-06-27
  • Vue与Less的实战心得:提升前端开发效率
    一、Vue.js框架介绍及应用场景 Vue.js是一个渐进式JavaScript框架,可以帮助开发者轻松构建出动态的、响应式的网页应用。Vue.js的核心特点是其轻量级、易用性以及组件化设计。Vue.js非常适合构建一些单页面应用(SP...
    99+
    2024-02-03
    Vue.js Less.js 前端开发 提升效率
  • jQuery Ajax使用心得及注意事项分别是什么
    jQuery Ajax使用心得及注意事项分别是什么,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。 IE7及以...
    99+
    2024-04-02
  • 什么是javaweb开发
    Java:简单来说,Java是一门语言,是一门和计算机交流的语言。Web:web(World Wide Web)即全球广域网,它是一种分布式图形信息系统。简单来说就是 浏览器上的一个个网站。Java Web:是用Java技术来解决相关web...
    99+
    2021-04-19
    java入门 javaweb 开发
  • 什么是Web开发
    本篇文章给大家分享的是有关什么是Web开发,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。1、 桌面应用程序开发桌面应用程序开发,是一种比较基本...
    99+
    2024-04-02
  • 什么是AJAX开发
    本篇内容介绍了“什么是AJAX开发”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成! ...
    99+
    2024-04-02
  • php开发是什么
    php是一种编程脚本语言,即超文本预处理器,具有非常强大的功能,所有的CGI的功能php都能实现,而且php可以用C、C++进行程序的扩展,几乎支持所有流行的数据库以及操作系统,能够用于管理动态内容、支持数据库、处理会话跟踪,甚至构建整个电...
    99+
    2024-04-02
  • 关于php原生开发与主流php框架使用心得
    1.PHP是世界上最好的web开发语言 PHP是世界上最好的web开发语言,这个无可辩驳,当然去掉web两个字,这毫无意义,网上很多喷子鼓吹的java,.net,python都差的远。 php有如下优点: 简单易学。正是因为如此,才造就了p...
    99+
    2023-08-31
    php 开发语言 数据库
  • 从小白到大神:Go语言项目开发心得分享
    从小白到大神:Go语言项目开发心得分享近年来,Go语言因其简洁高效的特性越来越受到开发者的喜爱。作为一门开源的编程语言,Go具有并发能力强、静态类型检查、内存管理自动化等优点,受到了众多大型互联网公司的青睐。作为一名从零开始学习Go的小白开...
    99+
    2023-11-02
    Go语言 小白 大神
  • Java开发者值得关注的7款新工具分别是什么
    这期内容当中小编将会给大家带来有关Java开发者值得关注的7款新工具分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。云计算、大数据地快速发展催生了不少热门的应用及工具。作为老牌语言Java,其生态...
    99+
    2023-06-17
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作