8000 GitHub - gitter-badger/blade-1: a lightweight Java web framework,reverse your code!
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

gitter-badger/blade-1

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

#Blade javaweb中的瑞士军刀

English

@biezhi on weibo Hex.pm Build Status JDK maven

blade 是一个轻量级快速开发web应用程序的框架,它集成了IOC对象管理,拦截器配置,REST API开发等众多主流web特性。

Blade特性

  • 简洁的MVC
  • REST风格API
  • 注解+正则拦截器
  • 微内核IOC容器
  • 实用工具类
  • 模板引擎支持
  • 支持JDK1.6+
  • 内置Jetty启动
  • 插件扩展机制
  • ...

快速入门

第一步、用maven构建一个webapp,加入blade的依赖,推荐获取最新版本

<dependency>
	<groupId>com.bladejava</groupId>
	<artifactId>blade</artifactId>
	<version>x.x.x</version>
</dependency>

第二步、在web.xml中配置Blade核心过滤器并设置你的初始化类,你也可以不配置(使用jetty启动)

<web-app>
	<display-name>Archetype Created Web Application</display-name>
	<filter>
		<filter-name>BladeFilter</filter-name>
		<filter-class>blade.BladeFilter</filter-class>
		<init-param>
			<param-name>applicationClass</param-name>
			<param-value>blade.sample.App</param-value>
		</init-param>
	</filter>
	
	<filter-mapping>
		<filter-name>BladeFilter</filter-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使用指南

更新日志

v1.0.8

1. 优化文件上传
2. 优化路由匹配
3. 添加方法执行监测

v1.0.4

1. 优化底层IO
2. 简化插件扩展
3. 拦截器路由匹配分离
4. 修复jetty在多maven环境下运行bug 
5. 添加初始化监听context

v1.0.1

1. 去除对外公开的多余方法展示
2. 添加`Blade.run()`方式运行jetty
3. 添加`Blade.register()`方法注册bean对象
4. 优化IOC对象管理

v1.0.0

第一个稳定版本发布

开源协议

Blade框架基于Apache2 License

联系我

Mail: biezhi.me#gmail.com

Java交流群: 1013565

About

a lightweight Java web framework,reverse your code!

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%
0