1、Stripes 快速入门指南[翻译] 说明:这是Stripes文档中的一篇叫Quick Start Guide的文章,看着顺眼,就翻译过来给大家看一下啦。 译者:lighter, 转载注明出于: Stripes 快速入门指南 tfenne于2006年八月27号作最后编辑 介绍: 这一篇指南编写的目的是为了让你尽可能地以最快的速度把Stripes运行起来.这里面包含了一些关于Stripes有开发Web应用程序时的配置说明,同时也让你快速地搭建第一个Stripes应用程序. 开发环境: Stripes充分利用了Java1.5中一些非常重要的特征,比如Ann
2、otations,还有泛型。同样它也很依赖一些Servlet2.4/JSP2.0的特征。所以你需要一个1.5版本的JDK(现在适用于大多数的平台),和一个可以支持Servlet2.4的Servlet容器,例如免费的Tomcat5.x和Caucho最新版本的、非常出色的Resin(对非商业用户免费提供) 这里希望读者有一定的JSP的开发经验,而且能理解一些常用的EL表达式,虽然没有必要去了解过于深入. Stripes配置: Stripes被设计成尽可能地只需要最少的配置文件。为了让其运行,你只需要在web应用程序的web.xml上简单地配置Stripes过滤器和Stripes D
3、ispatcher。一个非常标准的配置文件如下所示:
web.xml
Java代码
1.
2.
4、
5、
15.
6、
22.
7、stripes.controller.DispatcherServlet
29.
30.
8、on
36.
37.
9、
10、
11、
12、pping>
13、ging.jar (1.1) - Apache Commons Logging通常被用来提供一个日志接口,
2、cos.jar - 是com.oreilly.servlets包,Jason Hunter的免费礼物,通常作为form提交、用来实现文件的上传功能。
上面的lib文件已全部在Stripes的分发包里提供好,而且都经过了Stripes的测试。用越新版本的lib包或许也会工作正常,但这可能偏离我们想达到的目的。
另外,可以看到Stripes的日志输出,这一点对我们非常有帮助。为了达到目的,你须提供一个给Log4J的工作环境,或者对其他的日志公用包供给 14、一个适用环境。Log4J的jar文件,log4j-1.2.9.jar,是Stripes是一个分发包。一个Commons Logging样本和Log4J配置文件如下所示:
commons-logging.properties
Java代码
1. mons.logging.Log=mons.logging.impl.Log4JLogger
mons.logging.Log=mons.logging.impl.Log4JLogger
log4j.properties
Java代码
1. ### direct log messages to 15、 stdout ###
2. log4j.appender.stdout=org.apache.log4j.ConsoleAppender
3. log4j.appender.stdout.Target=System.out
4. log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
5. log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
6. # 16、 direct messages to file ###
7. log4j.appender.file=org.apache.log4j.FileAppender
8. log4j.appender.file.File=/tmp/stripes.log
9. log4j.appender.file.layout=org.apache.log4j.PatternLayout
10. log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 17、
11. ### set log levels - for more verbose logging change 'info' to 'debug' ###
12. log4j.rootLogger=INFO, stdout, file
13. .sourceforge.stripes=DEBUG
### direct log messages to stdout ###
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.T 18、arget=System.out
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### direct messages to file ###
log4j.appender.file=org.apache.log4j.FileAppender
log4j.appender.file.File=/tmp/stripes.l 19、og
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n
### set log levels - for more verbose logging change 'info' to 'debug' ###
log4j.rootLogger=INFO, stdout, file
.sourceforge.stripes=DEBUG
20、
日志配置文件需要放在classpath路径中去,例如在/WEB-INF/classes
最后一件需要放置的是StripesResources.properties文件;你现在可以复制到/WEB-INF/classes中去。StripesResources.properties用来(默认)查找显示Stripes验证出错时提示的错误信息,同样这必须放在Classpath路径中。举一个例子的片段如下所如:
例如 StripesResources.properties
Java代码
1. # Validation error messages used by Stripes' 21、built in type converters
2. converter.number.invalidNumber=The value ({1}) entered in field{0}must be a valid number
3. converter.byte.outOfRange=The value ({1}) entered in field{0}was out of the range{2}to{3}
4. converter.short.outOfRange=The value ({1}) entered in field {0}was 22、 out of the range{2}to{3}
5. converter.integer.outOfRange=The value ({1}) entered in field {0}was out of the range{2}to{3}
6. converter.float.outOfRange=The value ({1}) entered in field {0}was out of the range{2}to{3}
7. converter.enum.notAnEnumeratedValue=The value "{1}" is not 23、 a valid value for field{0}
8. converter.date.invalidDate=The value ({1}) entered in field {0 must be a valid date
9. converter.email.invalidEmail=The value ({1})entered is not a valid email address
10. ...
# Validation error messages used by Stripes' built in type converte 24、rs
converter.number.invalidNumber=The value ({1}) entered in field{0}must be a valid number
converter.byte.outOfRange=The value ({1}) entered in field{0}was out of the range{2}to{3}
converter.short.outOfRange=The value ({1}) entered in field {0}was out of the range{2}to{3}
converter. 25、integer.outOfRange=The value ({1}) entered in field {0}was out of the range{2}to{3}
converter.float.outOfRange=The value ({1}) entered in field {0}was out of the range{2}to{3}
converter.enum.notAnEnumeratedValue=The value "{1}" is not a valid value for field{0}
converter.date.invalidDate 26、The value ({1}) entered in field {0 must be a valid date
converter.email.invalidEmail=The value ({1})entered is not a valid email address
...
我的第一个Stripe:
作为第一个应用程序,我们会建立一个简单的页面,用来计算两个数,把它们加起来,在后面的描述中,可能添加其他的一些操作。首先,建立一个JSP文件用来显示界面。如下所示是一个简单的JSP页面代码。在web应用程序的根目录中,把以下文件放进一个名叫"qui 27、ckstart"的目录下。
JSP文件:"index.jsp"
Java代码
1. <%@ page contentType="text/html;charset=UTF-8" language="java" %>
2. <%@ taglib prefix="stripes" uri="
3.
4.
5 28、
6. Stripes Calculator
9.
10. Hi, I'm the Stripes Calculator. I can only do addition. Maybe, some day, a nice programmer
11. will come along and teach me how to do othe
29、r things?
12.
13. 30、 31、me="addition" value="Add"/>
26.
15.
16.
19. Number 1:
17.
18.
20.
23. Number 2:
21.
22.
24.
28.
25.
27.
29.
32. Result:
30. ${actionBean.result}
31.
32、
33.
34.
35.
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ taglib prefix="stripes" uri="
33、tml>
34、"/examples/quickstart/Calculator.action" focus="">
35、 36、>Result:Stripes Calculator
Hi, I'm the Stripes Calculator. I can only do addition. Maybe, some day, a nice programmer
will come along and teach me how to do other things?
Number 1:
Number 2:
${actionBean.result}