Stripes (framework)
Appearance
Stable release | 1.6.0
/ July 23, 2015 |
---|---|
Repository | |
Written in | Java |
Operating system | Cross-platform |
Platform | Java Virtual Machine |
Type | Web application framework |
License | Apache License 2.0 |
Website | www |
Stripes is an open source web application framework based on the model–view–controller (MVC) pattern. It aims to be a lighter weight framework than Struts by using Java technologies such as annotations and generics that were introduced in Java 1.5, to achieve "convention over configuration". This emphasizes the idea that a set of simple conventions used throughout the framework reduce configuration overhead. In practice, this means that Stripe applications barely need any configuration files, thus reducing development and maintenance work.
Features
- Action based MVC framework
- No configuration files
- POJOs
- Annotations replace XML configuration files
- Flexible and simple parameter binding
- Search engine friendly URLs
- Runs in J2EE web container
- JUnit integration
- Easy internationalization
- Wizard support
- JSP layouts
- JSP or freemarker templates as View
- Spring integration
- JPA support
- AJAX support
- Fileupload support
- Compatible with Google App Engine
- Open-source
- Lightweight
Example
A Hello World Stripes application, with just two files:
- HelloAction.java
import net.sourceforge.stripes.action.ActionBean;
import net.sourceforge.stripes.action.ActionBeanContext;
import net.sourceforge.stripes.action.DefaultHandler;
import net.sourceforge.stripes.action.ForwardResolution;
import net.sourceforge.stripes.action.Resolution;
import net.sourceforge.stripes.action.UrlBinding;
@UrlBinding("/hello-{name=}.html")
public class HelloAction implements ActionBean {
private ActionBeanContext context;
private String name;
public ActionBeanContext getContext() {
return context;
}
public void setContext(ActionBeanContext context) {
this.context = context;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
@DefaultHandler
public Resolution view() {
return new ForwardResolution(“/WEB-INF/HelloWorld.jsp”);
}
}
- HelloWorld.jsp
<html><body>
Hello ${actionBean.name}<br/>
<br/>
<s:link beanclass="HelloAction"><s:param name="name" value="John"/>Try again</s:link><br>
</body></html>
No additional configuration files needed.
Bibliography
- Daoud, Frederic (October 27, 2008). Stripes: ...and Java Web Development Is Fun Again (1st ed.). Pragmatic_Programmers. p. 396. ISBN 1-934356-21-2.