一个插件式微型Web框架。
支持jdk8,主框架80kb。组合不同的插件应对不同需求。
//Handler 模式: public class App{ public static void main(String[] args){ XApp app = XApp.start(App.class,args); app.get("/",(c)->c.output("Hello world!")); } } //Controller 模式: @XController public class App{ public static void main(String[] args){ XApp.start(App.class,args); } @XMapping("/") public Object home(XContext c){ return "Hello world!"; } }
主框架
快速集成包
插件
静态文件支持插件
说明
org.noear:solon.extend.staticfiles
扩展插件,添加静态文件支持(监视 resources/static 文件夹)
Yaml配置支持插件
org.noear:solon.extend.properties.yaml
扩展插件,添加yml配置文件支持
Session插件
说明(可将boot插件的session state服务,自动换掉)
org.noear:solon.extend.sessionstate.local
扩展插件,本地session
session
org.noear:solon.extend.sessionstate.redis
扩展插件,分布式session(其于redis构建)
redis
序列化插件
org.noear:solon.serialization.fastjson
视图插件,对 fastjson 适配,输出json视图 或 序列化输出
fastjson
json
org.noear:solon.serialization.snack3
视图插件,对 snack3 适配,输出json视图 或 序列化输出
snack3
org.noear:solon.serialization.jackson
视图插件,对 jackson 适配,输出json视图 或 序列化输出
jackson
视图插件
说明(可置多个视图插件)
org.noear:solon.view.freemarker
视图插件,对 freemarker 适配,输出html
freemarker
html
org.noear:solon.view.jsp
视图插件,对 jsp 适配,输出html
jsp
org.noear:solon.view.velocity
视图插件,对 velocity 适配,输出html
velocity
org.noear:solon.view.thymeleaf
视图插件,对 thymeleaf 适配,输出html
thymeleaf
org.noear:solon.view.beetl
视图插件,对 beetl 适配,输出html
beetl
org.noear:solon.view.enjoy
视图插件,对 enjoy 适配,输出html
enjoy
rpc client
org.noear:solonclient
solon rpc client 与solon 的 rpc service 配对
外部框架适配
org.noear:cron4j-solon-plugin
cron4j 适配