Struts框架自身是运用JavaServlet和JavaServerPages手艺的一种Model-View-Controller(MVC)完成.
细致来说,
Struts的长处有:
1. 完成MVC形式,构造清楚,使开辟者只关注营业逻辑的完成.
2. 有雄厚的tag能够用 ,Struts的标记库(Taglib),如能天真动用,则能大大提高开辟效力。别的,就目前国内的JSP开辟者而言,除了运用JSP自带的经常使用标记外,很少开辟本身的标记,也许Struts是一个很好的出发点。
3. 页面导航.页面导航将是以后的一个发展方向,事实上,如许做,使体系的头绪越发清楚。经由过程一个设置文件,即可把握全部体系各部分之间的联络,这关于后期的保护有着莫大的优点。尤其是当另一批开辟者接办这个项目时,这类上风表现得越发显著。
4. 供应Exception处置惩罚机制 .
5. 数据库链接池治理
6. 支撑I18N
瑕玷:
一、转到展现层时,须要设置forward,每一次转到展现层,置信大多数都是直接转到jsp,而涉及到转向, 须要设置forward,假如有十个展现层的jsp,须要设置十次struts,而且还不包括有时刻目次、文件变动,须要从新修正forward,注重, 每次修正设置以后,要求从新部署全部项目,而tomcate如许的服务器,还必须从新启动服务器,假如营业变动庞杂频仍的体系,如许的操纵简朴不可设想。如今就是如许,几十上百个人同时在线运用我们的体系,人人能够设想一下,我的懊恼有多大。
二、 Struts 的Action必须是thread-safe体式格局,它仅仅许可一个实例去处置惩罚一切的要求。所以action用到的一切的资本都必须一致同步,这个就引起了线程平安的题目。
三、 测试不方便. Struts的每一个Action都同Web层耦合在一起,如许它的测试依靠于Web容器,单元测试也很难完成。不过有一个Junit的扩大东西Struts TestCase能够完成它的单元测试。
四、 范例的转换. Struts的FormBean把一切的数据都作为String范例,它能够运用东西Commons-Beanutils举行范例转化。但它的转化都是在Class级别,而且转化的范例是不可设置的。范例转化时的错误信息返回给用户也是异常难题的。
五、 对Servlet的依靠性过强. Struts处置惩罚Action时必须要依靠ServletRequest和ServletResponse,一切它摆脱不了Servlet容器。
六、前端表达式言语方面.Struts集成了JSTL,所以它主要运用JSTL的表达式言语来猎取数据。但是JSTL的表达式言语在Collection和索引属性方面处置惩罚显得很弱。
七、 对Action实行的掌握难题.Struts建立一个Action,假如想掌握它的实行递次将会异常难题。以至你要从新去写Servlet来完成你的这个功用需求。
八、 对Action 实行前和后的处置惩罚. Struts处置惩罚Action的时刻是基于class的hierarchies,很难在action处置惩罚前和后举行操纵。
九、 对事宜支撑不够. 在struts中,现实是一个表单Form对应一个Action类(或DispatchAction),换一句话说:在Struts中现实是一个表单只能 对应一个事宜,struts这类事宜体式格局称为application event,application event和component event比拟是一种粗粒度的事宜。
Struts主要的表单对象ActionForm是一种对象,它代表了一种运用,这个对象中最少包括几个字段,这些字段是Jsp页面表单中的input字段,由于一个表单对应一个事宜,所以,当我们须要将事宜粒度细化到表单中这些字段时,也就是说,一个字段对应一个事宜时,纯真运用Struts就不太可能,固然经由过程连系JavaScript也是能够转弯完成的。
以上就是java struct什么意思的细致内容,更多请关注ki4网别的相干文章!