Java MVC全栈框架 ActFramework

Apache
Java
跨平台
2017-02-16
开源老码农

ActFramework是一种简洁易用,具有强大表达力的Java MVC全栈框架:

一个返回HelloWorld的请求处理器(演示视频 : 7分钟):

@GetAction("/hello")
public String sayHello() {
    return "Hello World!"
}

一个完整的User RESTful服务应用(演示视频 : 7分钟):

package demo.helloworld;

import act.controller.Controller;
import act.db.morphia.MorphiaAdaptiveRecord;
import act.db.morphia.MorphiaDao;
import org.mongodb.morphia.annotations.Entity;
import org.osgl.mvc.annotation.*;

import java.util.Map;

import static act.controller.Controller.Util.notFoundIfNull;

@Entity("user")
public class User extends MorphiaAdaptiveRecord {

    @Controller("user")
    public static class Service extends MorphiaDao {

        @PostAction
        public User create(User user) {
            return save(user);
        }

        @GetAction
        public Iterable list() {
            return findAll();
        }

        @GetAction("{id}")
        public User show(String id, Map data) {
            return findById(id);
        }

        @PutAction("{id}")
        public User update(String id, Map data) {
            User user = findById(id);
            notFoundIfNull(user);
            user.mergeValues(data);
            return save(user);
        }

        @DeleteAction("{id}")
        public void delete(String id) {
            deleteById(id);
        }
    }

}

联系方式:

QQ 群: 283919975

的码云指数为
超过 的项目
加载中

评论(30)

B
BeeHoney
开发效率和性能和bee-spring-springmvc有什么长处? https://gitee.com/aiteasoft/bee-spring-springmvc
开源老码农
开源老码农 软件作者
不清楚 bee-spring-springmvc 的性能, 不过 act 和 spring 的性能对比这里有数据: https://www.techempower.com/benchmarks/#section=test&runid=e1c8ec93-c322-4b7a-ba4c-561cb05a3820&hw=ph&test=json&l=zik0vz-v&f=zijunz-zik0zj-zik0zj-zik0zj-zik0zj-zik0zj-zik0vz-zik0zj-zik0zj-4zsov 开发效率怕是比不上 bee-spring-springmvc, 因为后者声称 "develop a history order manage function in 30 minutes", 只是我没有找到 bee-spring-springmvc 是如何做到 develop a history order manage function in 30 minutes 的
独坐海棠
独坐海棠
加油,需要的只是时间的积累
周波-RememBerBer
周波-RememBerBer
Niubility
开源老码农
开源老码农 软件作者

引用来自“风入云”的评论

喜欢这样的精简风格,但文档太少了。比如我加入这个依赖, org.actframework act-beetlsql 1.5.5 ,但启动就报错,db.properties也设置了数据库的链接信息。
真抱歉. 文档的确是短板,还需要在这方面加力. 能加个群吗? 283919975, 群里已经积累一些老用户了, 他们也都非常热心,你的问题可以到群里提.也可以直接给项目提 issue. 谢谢你对 Act 的关注
开源老码农
开源老码农 软件作者

引用来自“专业写BUG的程序员”的评论

idea 有支持play的插件,请问该框架有idea的插件支持么? 像导航,引用跳转,语法高亮,自动补全,usage等等。
目前没有
专业写BUG的程序员
专业写BUG的程序员
idea 有支持play的插件,请问该框架有idea的插件支持么? 像导航,引用跳转,语法高亮,自动补全,usage等等。
开源老码农
开源老码农 软件作者
目前还没有
风入云
风入云
喜欢这样的精简风格,但文档太少了。比如我加入这个依赖, org.actframework act-beetlsql 1.5.5 ,但启动就报错,db.properties也设置了数据库的链接信息。
开源老码农
开源老码农 软件作者

引用来自“最后的夏天”的评论

看了跑了一下hello的例子挺喜欢的,但是觉得官网文档不是很完善,外加官网在海外首页一张大图就加载了好久. actframework本身小众网上搜索资料基本都是作者自己产出的,所以希望能将官网文档做的更完善一点,框架需要集成连接池,orm,缓存等等才能完全显现威力.现在各个框架为springboot的做的starter让springboot几乎零配置,外加网上资料太多了,所以显得无比简单.下载了act的json的demo跑不通,文档中也没看到类似@restcontroler返回json的方法..
官网现在别去看, 直接看 https://gitee.com/actframework/actframework 就好, 文档看这里: https://gitee.com/actframework/act-doc/tree/master/cn. 演示代码开这里: https://github.com/act-gallery
专业写BUG的程序员
专业写BUG的程序员
我还在使用playframework
猫九大大
猫九大大
性能跟简洁都很不错,作者文档能完善下就很nice

ActFramework 1.8.31 发布 - 老码农的新年大礼包

1. ActFramework 核心框架 ActFramework 是一款 "非轻量级" Java Web 应用框架. 作为著名的 PlayFramework 1.x 的继任者之一, ActFramework 具有功能丰富, 高性能和良好的开发时支持的特点....

01/03 08:10

ActFramework 1.8.30 发布 - 强大的非苗条型 Java Web 应用框架

作为一位负责任的码农,老码农继续检查在紧张的业务项目之后积极维护 ActFramework - 一种强大的非苗条型 Java Web 框架。 本次发版主要包含了一下内容: #1249 Act-Test 资源文件从 src/ma...

2019/11/25 09:06

ActFramework 1.8.29 发布 - 强大的 Java Web 开发框架

ActFramework 是 Java Web 开发框架, 同时也是运行引擎. 具有强大的表达力, 高性能等特点. 融合了大量老码农在 《"轻"量级 Java Web 服务框架漫谈》这篇博客中的思考结果。 在最近放出的 1....

2019/11/08 08:09

Act-starter 1.8.25.0 发布 - 非苗条型 Java web 服务框架

本次发布内容: 核心框架更新到 1.8.25 #1152 创建控制器实例发生空指针异常 该异常发生的条件: 1. 首先有一个基类, 其中某个请求处理方法有 URL 参数, 例如 "{id}": public class Service...

2019/07/03 08:47

Act-1.8.24 发布 - 非苗条型 Java Web 框架

1. 核心框架 (act-1.8.24) 更新: #1151 允许在开发模式下对资源文件过滤 大家都知道 Maven 能构建发布包的时候对资源文件进行过滤的. 在老码农一个项目中就采用了 maven 的这种特性, 参考如下...

2019/06/25 08:56

ActFramework 1.8.23 发布,非轻量级 Java 框架

1. 核心框架变化 ActFramework 1.8.23 发布, 带来的变化有: #1143 CLI 列表显示 - 交替反显, 更加便于阅读数据: #1142 增加 @Label 注解, Excel 和 CSV 输出的时候显示更加友好的名字: CLI 列...

2019/06/18 08:28

Act 1.8.22 发布 - 强大易用的 Java MVC 框架

Act 1.8.22 更新内容 * 命令行命令 `route.print` 不能正确处理 keyword 匹配的路由 #1136 * 提供配置选项禁止 JSON body patch #1134 * API 文档 - 特殊标记 session 变量 #1133 * API 文档...

2019/05/21 11:51

ActFramework 1.8.16 发布,高性能 Java Web 框架

ActFramework 是一款高效能(对程序员)和高性能(对运行系统)的 Java Web 应用和服务框架. 本次更新的主要内容: 改进对 XML 输入输出的处理 请求处理函数参数类型有循环引用时导致堆栈溢出 异步...

2018/12/10 08:59

ActFramework 1.8.13 系列更新,高性能 Java Web 框架

ActFramework 是一款高效能(对程序员)和高性能(对运行系统)的 Java Web 应用和服务框架. 本次更新的主要内容: 允许应用定义的连接事件处理器侦听指定 URL 路径上的 WebSocket 连接 允许异步处...

2018/11/27 09:01

ActFramework 1.8.12 系列更新,高性能 Java Web 框架

ActFramework 是一款高效能(对程序员)和高性能(对运行系统)的 Java Web 应用和服务框架. 本次更新的主要内容: 热加载失效 Hot-reload issue caused by `StackOverflowError` on `AppConfig....

2018/11/20 09:00

没有更多内容

加载失败,请刷新页面

2
回答
快速开始一个 ActFramework 应用项目

下面是在 posix 兼容系统上快速开始一个 #ActFramework 项目的方式: curl https://gist.githubuserconte...

2018/01/03 09:27
136
回答
向@eechen发起编码挑战

@eechen 在这篇问答中发出了这样豪言: 高校开设课程的Java居然在Web上被PHP吊打,伪编译的虚拟机语言在Web开发上还是早死早超生吧,别妄想超...

2017/03/29 08:05
2
回答
ActFrameWork图片验证码渲染问题
开源老码农 的回答 2017/03/20 12:18
最佳答案
@piaohao , 你的代码试图在控制器响应方法内直接操作 HTTP 响应的输出流. 这个带来的问题是框架后面就没有办法往输出流里面写Header, Cookie这些信息了. 因此, 你需要传入一个 Function 给 RenderBinary, 当系统调用 RenderBinary 的 ...
3
回答
ActFramework循环依赖问题
开源老码农 的回答 2017/03/20 12:04
最佳答案
@piaohao , 根据你上面的依赖结构, Act是可以捕获到循环依赖的问题: 但是那天你的真实项目里面的确没能发现循环依赖. 这个还要麻烦你帮忙重现一下. 提个 issue 到Github上面去. 循环依赖问题的 一个办法是注入Provider而不是直接注入Bean. 比如上面的BaseS...
3
回答
Actframework找不到模板
piaohao 的回答 2017/03/16 13:50
最佳答案
引用来自“罗格林”的评论 这是一个已经确认的bug: https://github.com/actframework/actframework/issues/68 现在的workaround是去掉template语句里面的回车符 是的,方法写一行问题得到解决,期待下一个版本修复这个bug
1
回答
Actframework mysql字段映射问题
开源老码农 的回答 2017/03/15 14:36
最佳答案
在配置文件里面加上这个配置: db.namingconvention=com.avaje.ebean.config.MatchingNamingConvention
1
回答
ActFramework模板路径问题
开源老码农 的回答 2017/03/15 13:06
最佳答案
用非默认的freemarker模板,需要添加相应的插件依赖到项目的POM文件里: <dependency> <groupId>org.actframework</groupId> <artifactId>act-freemarker</artifactId> <version>${act.fr...
1
回答
Actframwork注入错误
piaohao 的回答 2017/03/14 20:07
最佳答案
引用来自“罗格林”的评论 是某个地方需要依赖注入SysConfigService的实现, 但是没有任何绑定通知框架. 参考: 依赖注入 II - 注入对象类型 依赖注入III - 定义绑定 在接口上加了注解@AutoBind,问题解决
4
回答
Actframework不支持lombok吗?
开源老码农 的回答 2017/03/14 19:48
最佳答案
引用来自“罗格林”的评论 lombok和ActFramework都需要对字节码进行增强. 不过字节码增强的时间是不同的. Lombok在编译时增强. ActFramework在加载类的时候增强. 上面的错误产生的原因是由于ActFramework直接调用ECJ在内存中编译源码, 没有给Lomb...
1
回答
TodoBackend - 后端MVC框架的竞技场

TodoBackend 是一个后端MVC框架的展示平台, 现在已经有超过85个不同的实现在这个平台上展示出来供不同技术栈的开发人员学习参考 这个平台要求实...

2017/02/28 19:56

没有更多内容

加载失败,请刷新页面

ActFramework 在 TEB R14 中击败 Spring

注意 TechEmpower Framework Benchmark R17 结果: https://www.techempower.com/benchmarks/#section=data-r17&hw=ph&test=json&l=hra0e7&c=4&o=4 TFB 自从 R15 之后已经开始自动迭代测试, 未...

2017/05/11 13:54
2.9K
18
Actframework中如何灵活控制JSON响应

@DiamondFsd 昨天写了一篇关于如何在Spring MVC中灵活控制JSON返回的博客,其中@JSON注解的思路和我在actframework的处理方式非常相似。 刚好昨天把actframework放上码云了,就这个话题写下 ...

2017/02/17 08:59
518
2
ActFramework 1.8.31 发布 - 新年大礼包

1. ActFramework 核心框架 ActFramework 是一款非轻量级 Java Web 应用框架. 作为著名的 PlayFramework 1.x 的继任者, ActFramework 具有功能丰富, 高性能和良好的开发时支持的特点. 2020 的...

01/03 05:33
278
1
ActFramework 入门指南

声明: 本文来自 ActFramework QQ 群 "冰儿!-北京-Java" 同学的博客 以下博客正文: ActFramework 是一款高性能 Java 全栈框架,用于开发传统的 MVC 应用或 RESTful 服务。和其他现有 MVC/RE...

2019/07/03 08:51
988
8
一场版本升级引发的性能血案 - 王者归来

上次老码农在[一场版本升级引发的性能血案 - 之数据历险](https://my.oschina.net/greenlaw110/blog/1821001)一文中讲得口吐白沫, 最后还是没有一个结果, 反而被 OSCer 们各种吐槽: "看得我快...

2018/06/04 12:05
566
1
用 ActFramework 写一个网页聊天室是怎样的体验

看到 [t-io](https://www.oschina.net/p/t-io) 老谭的 [用t-io来写一个网页聊天室或客服是个怎样的体验](https://my.oschina.net/talenttan/blog/1806324), 一时手痒, 就打算用 ActFramework...

2018/05/05 20:28
2.2K
2
How To Do It - HelloWorld 项目总结报告

1. 介绍 HelloWorld 是一个HowToDoIt 组织的第一个项目, 一个简单的 MVC 展示应用. 实现项目需要响应发送到 GET / 端点的请求并显示一个主页 显示 Hello World - 其中 World 可以被 who 查询...

2018/07/29 19:11
3.1K
5
使用 maven 生成一个支持端到端自动测试的 RESTful 服务项目脚手架

额外的话: 我会非常感激如果您在读本文的时候 Follow 文中的操作步骤在你的环境中实践本文所讲内容, 我保证这个过程不会非常复杂, 即便加上你研究代码的时间也不需要超过 15 分钟 和传统后端...

2018/05/13 21:02
5.6K
5

没有更多内容

加载失败,请刷新页面

返回顶部
顶部