当前位置:七道奇文章资讯编程技术Java编程
日期:2011-03-22 16:16:00  来源:本站整理

<b>用Stripes做Java Web开辟</b>[Java编程]

赞助商链接



  本文“<b>用Stripes做Java Web开辟</b>[Java编程]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:

择要:
Stripes是一个以让程序员的web开辟简单而高效为原则来计划的基于行动的开源Java web框架.本文将介绍Stripes与别的如Struts之类基于行动的框架的辨别和其供应的一些存在于Ruby on Rails之中的简单性. Stripes是一个以让程序员的web开辟简单而高效为原则来计划的基于行动的开源Java web框架.传统的Java web开辟着眼于借去耦(Decoupling)来实现其机动性,但招致多个的配置文件,额外的对象,和其他资源的分离.这些艰难造成相当多的程序员的更高的学习时间和低下的效率.后来果是有些Java程序员被一些非Java的框架所吸引去了:Ruby on Rails大概Django.一些Java web框架,如Stripes,正在开始从这些非Java框架中汲取其成功经验:简单而高效的开辟.本文将介绍Stripes与别的如Struts之类基于行动的框架的辨别和其供应的一些存在于Ruby on Rails之中的简单性.

图1是典型的用Stripes写的利用程序中的正常事件流程和组件.

图 1 典型Stripes流程

如你所见,其流程基本上就是一个MVC框架.Stripes和其他的基于行动的框架的一个主要的辨别是没有一个外部的配置文件.我们随后将看到,Stripes用annotation和约定而非配置来提高产出和削减紊乱.

编写你的第一个Stripe行动(Action)

让我们目前就开始通过成立Hello World例程来理解Stripes框架和理解其运作.HelloWorldAction类将提醒用户输入姓氏和名字然后在另一个View里面显示,首先我们来编写controller类.

public class HelloWorldAction implements ActionBean {

@ValidateNestedProperties({
@Validate(field = "firstName", required = true,
on = {"hello"}),
@Validate(field = "age", required = true, minvalue = 13,
on = {"hello"})
})
private Person person;
private ActionBeanContext context;

@DefaultHandler
public Resolution index() {
return new ForwardResolution("Hello.jsp");
}

public Resolution hello() {
return new ForwardResolution("SayHello.jsp");
}

public void setPerson(String person) {this.person = person;}
public String getPerson() { return person;}
public void setContext(ActionBeanContext c) {this.context = c; }
public ActionBeanContext getContext() {return context; }
}

Controller类是一个实现了Stripes特有接口ActionBean的POJO(Plain Old Java Object,译注:读破粥).全部的Stripes行动类都要实现这一接口以让StripesDispatcher servlet在运行服务时为其注入一个ActionBeanContext对象.ActionBeanContext对象可以让你存取的对象如request、response、和servlet context等servlet API.大大都时刻在Stripes利用中是不用读取这些底层API对象的.ActionBeanContext类还供该当前行动的状况并可以增添信息消息和错误消息到当前行动中.ActionBeanContext的变量和其读写办法可以放在一个基类里面,因为全部的Stripes行动都要实现之.

Controller类的其他部份关于任何Java程序员来说都是很面善的.有一个Person对象和其读写办法是用来读写用户的姓名给view的.固然这仅仅是一个简单的嵌套对象,Stripes可以通过Java调集、泛型支持、和下标化的属性来实现更复杂完善的数据捆绑.因为Stripes可以处理复杂数据捆绑,你的范畴对象(Domain Object)可以在其他需求它们的层重用.比方:通过Stripes你可以很简单的汇集一个范畴对象的信息,然后用其他的POJO框架,如Hibernate大概EJB3来对其举行长期化.

Person对象变量上有一个Stripes考证annotation用来保证用户在激活hello办法的时刻已经输入了姓名.假如用户没有输入这两个必须的变量,原始页会被返回,并显示一个相关的错误消息.该考证只有在hello事件被申请的时刻才会被激活,因为annotation的属性中指定了(on = {"hello"}).Stripes还会利用实用默许法例,按照考证办法和变量名称产生一个错误信息.比方,假如Person类的firstName变量在提交的时刻没有供应,用户将看到:

Person First Name is a required field.

这条消息是通过将Person.firstName举行刻读化处理后得到的.假若有必要,这些错误消息可以被重载来供应更多的客户自定义功效.
  以上是“<b>用Stripes做Java Web开辟</b>[Java编程]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:

  • <b>hosts是什么 hosts文件在什么位置 若何改正hosts</b>
  • <b>在 Windows 8 中手动安装语言包</b>
  • <b>五个常见 PHP数据库问题</b>
  • Windows中Alt键的12个高效快速的利用本领介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • <b>详解MySQL存储历程参数有三种范例(in、out、inout)</b>
  • <b>Win8系统恢复出来经典的开始菜单的办法</b>
  • <b>Win8系统花屏怎么办 Win8系统花屏的办理办法</b>
  • <b>Windows 7系统下无线网卡安装</b>
  • <b>为什么 Linux不需求碎片整理</b>
  • <b>Windows 8中删除账户的几种办法(图)</b>
  • <b>教你如安在win7下配置路由器</b>
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .