| 程序包 | 说明 |
|---|---|
| org.noear.solon | |
| org.noear.solon.core |
| 限定符和类型 | 类和说明 |
|---|---|
class |
XApp
插件式微型Web框架(70kb)
框架主要有几部份组成:
1.微框架体系
2.插件体系
3.注解体系(为 mvc, prc 提供支持) //Bean分为:普通Bean和Web Bean
///设计目标::
1.更高的性能(弱化字段级注入,减少不必要的反射)
2.更轻量的结构、更强的扩展性
3.为Spring之外提供另一个选择
///保持手写和注解两种体验方案::
///关于Bean扫描和加载机制::
#XBean 为一般bean,会被加载 (仅支持类级别)
#XController, #XInterceptor 为特定bean,会被加载 (仅支持类级别)
其中:#XController (控制器), #XInterceptor (拦截器), #XBean(remoting=true)(服务) 会自动注入到 XApp.router
//这三者最终都会转换为:XAction
其中:#XController 加在 XHandler上, 会自动注入到 XApp.router
#XBean 加在 XPlugin上,会自运注入到 XApp.plug()
#XBean 加在普通类上,会自动注入到 XApp.beans
///插件(XPlugin)的作用::
1.扩展框架机能
2.按需定制架构
3.可让业务开发时分散、打包时合并;
///XMapping的策略
1.与Spring保持相近
2.编写更好性能的方法(根级map: /开头,子级map: 不要/开头;)
///更新日志:
20190109:为path var添加_支持
20190110:添加stop事件支持;
添加XContent.paramValues(k)->[];
添加XContent.paramAsEntity(c)->t;
添加XParam,支持XAction模型参数
20190111:添加Aop扩展机制
|
class |
XNav
XHandler 导航类
|
| 限定符和类型 | 字段和说明 |
|---|---|
protected Map<String,XHandler> |
XNav._main |
| 限定符和类型 | 方法和说明 |
|---|---|
XHandler |
XApp.handlerGet() |
XHandler |
XRouter.matchOne(XContext context,
int endpoint)
区配目标(根据上上文)
|
| 限定符和类型 | 方法和说明 |
|---|---|
List<XHandler> |
XRouter.matchAll(XContext context,
int endpoint) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
XRouter.add(String path,
int endpoint,
XMethod method,
int index,
XHandler handler) |
void |
XRouter.add(String path,
int endpoint,
XMethod method,
XHandler handler)
添加路由关系
|
void |
XNav.add(String path,
XHandler handler)
添加二级路径处理
|
void |
XRouter.add(String path,
XHandler handler)
添加路由关系
|
void |
XApp.add(String expr,
XMethod method,
XHandler handler)
主体监听
|
void |
XApp.after(String expr,
XMethod method,
int index,
XHandler handler) |
void |
XApp.after(String expr,
XMethod method,
XHandler handler)
重置监听
|
void |
XApp.all(String path,
XHandler handler)
添加所有方法的监听(GET,POST,PUT,PATCH,DELETE,HEAD)
|
void |
XApp.before(String expr,
XMethod method,
int index,
XHandler handler) |
void |
XApp.before(String expr,
XMethod method,
XHandler handler)
前置监听
|
void |
XApp.delete(String path,
XHandler handler)
添加DELETE方法的监听(REST.delete 从服务端删除资源)
|
void |
XApp.get(String path,
XHandler handler)
添加GET方法的监听(REST.select 从服务端获取一或多项资源)
|
void |
XApp.handlerSet(XHandler handler) |
void |
XApp.patch(String path,
XHandler handler)
添加PATCH方法的监听(REST.update 客户端提供改变的属性)
|
void |
XApp.post(String path,
XHandler handler)
添加POST方法的监听(REST.create 在服务端新建一项资源)
|
void |
XApp.put(String path,
XHandler handler)
添加PUT方法的监听(REST.update 客户端提供改变后的完整资源)
|
void |
XApp.send(String path,
XHandler handler)
添加SEND方法的监听(on web send)
|
| 限定符和类型 | 类和说明 |
|---|---|
class |
XAction
mvc:动作
|
class |
XHandlerLink
处理助手,提供处理链的存储
|
class |
XRouterHandler
XApp Handler
|
| 限定符和类型 | 字段和说明 |
|---|---|
XHandler |
XListener.handler |
XHandler |
XHandlerLink.nextNode
下个节点
|
XHandler |
XHandlerLink.node
当前节点
|
| 限定符和类型 | 字段和说明 |
|---|---|
protected List<XHandler> |
XHandlerAide._after
后置处理
|
protected List<XHandler> |
XHandlerAide._before
前置处理
|
| 限定符和类型 | 方法和说明 |
|---|---|
void |
XHandlerAide.after(XHandler handler)
添加后置处理
|
void |
XHandlerAide.before(XHandler handler)
添加前置处理
|
| 构造器和说明 |
|---|
XListener(String path,
XMethod method,
int index,
XHandler handler) |
Copyright © 2019. All rights reserved.