• 以HttpServer作为 http服务,彻底脱离Tomcat这一类的Web容器和Servlet,同时也让项目减少了几个依赖
  • 声明式API,让Controller变成了一个interface,降低了开发的工作量
  • 拥有其他web框架 拥有的大部分功能,比如AOP,IOC,声明式事务,异常监听等
  • 如果你不喜欢HttpServer,我们也提供了Tomcat启动器
  • 支持分布式开发

项目生态

  • 【分布式组件】Martian-cloud
  • 【网关及其他组件】
  • 【更多组件】筹划中

使用示例

只需要在你的interface上加上一个注解,即可对外提供一个接口,并且我们还支持传统的Controller写法

  1. @MarsGet(tableName = "userinfo",primaryKey = "id")
  2. public abstract 要返回的实体类 selectById(int id);
  3. // 单表新增
  4. @MarsUpdate(tableName = "userinfo",operType = OperType.INSERT)
  5. @MarsUpdate(tableName = "userinfo",operType = OperType.DELETE,primaryKey = "id")
  6. public abstract int delete(int id);
  7. @MarsUpdate(tableName = "userinfo",operType = OperType.UPDATE,primaryKey = "id")
  8. public abstract int update(实体对象参数);

前端如何得到提示?

正常请求API就好了,如果校验不通过会得到这样一个json

  1. {"error_code":1128,"error_info":"提示文字"}

spring是有一个叫ExecptionHandler 来解决这个问题,而Martion也提供了对应的解决方案

解决方案就是什么都不用管,如果出了异常,会自动给前端返回如下json串

  1. @RedisLock(key = "自己定义一个key")
  2. public int insert(){
  3. }

注意事项

  1. 项目只可以打jar包,不可以打war包,不然运行不了
  2. 需要jdk8 以上的版本