Blade是一款简洁优雅、微内核设计的 Java Web 框架。
主要特性
- 轻量级:新一代JavaWeb框架,不依赖更多的库,摆脱SSH的臃肿,模块化设计,使用起来更轻便!
- 简洁高效:代码简洁、结构清晰,不足100KB源代码,写更少的代码快速开发!
- 插件扩展:支持用户基于Blade扩展其他功能,如redis,dbutils等集成,现已扩展了众多模版引擎和Sql2o组件~
功能示例
最简示例
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
/**
* 最简单的服务
*/
public
class
App
{
public
static
void
main
(
String
[
]
args
)
{
Blade
blade
=
Blade
.
me
(
)
;
// 创建一个GET请求
blade
.
get
(
"/"
,
new
RouteHandler
(
)
{
public
void
handle
(
Request
request
,
Response
response
)
{
response
.
html
(
"<h1>Hello Blade!</h1>"
)
;
}
}
)
;
// 在9000端口启动
blade
.
start
(
)
;
}
}
|
极简路由
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
// 配置路由
blade
.
route
(
"/hello"
,
NormalSample
.
class
,
"hello"
)
;
blade
.
route
(
"/save_user"
,
NormalSample
.
class
,
"post:saveUser"
)
;
// 路由实现
public
class
NormalSample
{
public
void
hello
(
Request
request
,
Response
response
)
{
System
.
out
.
println
(
"进入hello~"
)
;
request
.
attribute
(
"name"
,
"rose baby"
)
;
response
.
render
(
"hi"
)
;
}
public
void
saveUser
(
Request
request
,
Response
response
)
{
System
.
out
.
println
(
"进入saveUser~"
)
;
// 保存操作
}
}
|
爬虫能力
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
// 抓取心灵鸡汤
public
class
Soup
{
private
int
start_page
=
1
,
end_page
=
100
;
private
static
final
String
REG
=
"<div.*?body\">([\\s\\S]*?)<p>([\\s\\S]*?)</p>([\\s\\S]*?)</div>"
;
private
String
getBody
(
)
{
return
HttpRequest
.
get
(
String
.
format
(
"http://soup.setin.cn/p/%d.html"
,
start_page
)
)
.
userAgent
(
"Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)"
)
.
body
(
)
;
}
public
void
execute
(
)
{
//...
}
public
static
void
main
(
String
[
]
args
)
{
Soup
joke
=
new
Soup
(
)
;
joke
.
execute
(
)
;
}
}
|
刚整理了一套2018最新的0基础入门和进阶教程,无私分享,加Java学习q-u-n :六七八,二四一,五六三 即可获取,以及系统学习路线图
DSL数据库操作
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
// 保存操作
public
boolean
save
(
Integer
cid
,
Integer
tid
,
Integer
fuid
,
Integer
tuid
)
{
return
model
.
insert
(
)
.
param
(
"cid"
,
cid
)
.
param
(
"tid"
,
tid
)
.
param
(
"fuid"
,
fuid
)
.
param
(
"tuid"
,
tuid
)
.
param
(
"addtime"
,
new
Date
(
)
)
.
param
(
"ntype"
,
0
)
.
executeAndCommit
(
)
>
0
;
}
// 登录操作
public
User
signin
(
String
username
,
String
password
)
{
String
pwd
=
EncrypKit
.
md5
(
username
+
password
)
;
return
model
.
select
(
)
.
eq
(
"username"
,
username
)
.
eq
(
"password"
,
pwd
)
.
fetchOne
(
)
;
}
// 查询条数
public
Long
getUserCount
(
String
email
)
{
return
model
.
count
(
)
.
eq
(
"email"
,
email
)
.
fetchCount
(
)
;
}
|
安装
Maven用户
添加依赖到项目中非常简单,只要确保你的版本是最新的。 mvnrepository是 最新稳定版本
下面是一个实例:
1
2
3
4
5
|
<dependency>
<groupId>
com.bladejava
</groupId>
<artifactId>
blade-core
</artifactId>
<version>
x.x.x
</version>
</dependency>
|
这里添加了blade的核心库,根据你的需求可以添加其他依赖。 比如模版引擎的依赖、数据库操作的依赖等。
非Maven用户
有些同学可能还不会使用maven构建项目,建议有时间的话学习一下。
不使用maven构建基于blade的项目也非常简单,只要把你需要的jar包加进去就可以了。
blade
核心库文件有2个:blade-kit.jar
和 blade-core.jar
升级只需更换相应的jar包即可。