English
blade 是一个简洁强大的web框架,它内置了IOC
管理,拦截器配置,REST API
开发等众多主流web特性,集成了模板引擎,缓存插件,数据库操作,邮件发送等常用功能,简洁的源码值得你阅读和学习。如果你喜欢,欢迎Star and Fork!
第一步、用maven构建一个webapp,加入blade的依赖,推荐获取最新版本
<dependency>
<groupId>com.bladejavagroupId>
<artifactId>bladeartifactId>
<version>x.x.xversion>
dependency>
第二步、在web.xml
中配置Blade核心过滤器并设置你的初始化类,你也可以不配置(使用jetty启动)
<web-app>
<display-name>Archetype Created Web Applicationdisplay-name>
<filter>
<filter-name>BladeFilterfilter-name>
<filter-class>blade.BladeFilterfilter-class>
<init-param>
<param-name>applicationClassparam-name>
<param-value>blade.sample.Appparam-value>
init-param>
filter>
<filter-mapping>
<filter-name>BladeFilterfilter-name>
<url-pattern>/*url-pattern>
filter-mapping>
web-app>
第三步、编写App.java和路由文件,下面是一个示例
public class App extends BladeApplication{
Logger logger = Logger.getLogger(App.class);
@Override
public void init() {
// 设置路由、拦截器包所在包
Blade.defaultRoute("blade.sample");
}
}
@Path
public class Hello {
@Route("/hello")
public String hello() {
System.out.println("hello");
return "hello.jsp";
}
@Route(value = "/post", method = HttpMethod.POST)
public void post(Request request) {
String name = request.query("name");
System.out.println("name = " + name);
}
@Route("/users/:name")
public ModelAndView users(Request request, Response response) {
System.out.println("users");
String name = request.pathParam(":name");
ModelAndView modelAndView = new ModelAndView("users");
modelAndView.add("name", name);
return modelAndView;
}
@Route("/index")
public String index(Request request) {
request.attribute("name", "jack");
return "index.jsp";
}
}
OK,这一切看起来多么的简单,查阅使用指南更多现成的例子供你参考:
Blade使用指南 (完善中…)
一些例子:https://github.com/bladejava
1. 优化sql2o支持
2. 去除blade-kit无用类
3. 添加邮件支持
4. 添加程序计时支持
5. 添加http网络请求支持
1. 去除对外公开的多余方法展示
2. 添加`Blade.run()`方式运行jetty
3. 添加`Blade.register()`方法注册bean对象
4. 优化IOC对象管理
5. 优化底层IO
6. 简化插件扩展
7. 拦截器路由匹配分离
8. 修复jetty在多maven环境下运行bug
9. 添加初始化监听context
10. 优化文件上传
11. 优化路由匹配
12. 添加方法执行监测
13. 添加缓存支持
第一个稳定版本发布
Blade框架基于 Apache2 License
Mail: biezhi.me#gmail.com
Java交流群: 1013565