前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ActFramework R1.4.0 带来 WebSocket 的支持

ActFramework R1.4.0 带来 WebSocket 的支持

作者头像
老码农
发布2018-06-27 10:36:12
3440
发布2018-06-27 10:36:12
举报
文章被收录于专栏:老码农专栏老码农专栏

#17 WebSocket 支持

ActFramework 终于支持 WebSocket 了

聊天室应用:

代码语言:javascript
复制
@WsAction("msg")
public void onMessage(String message, WebSocketContext context) {
    context.sendToPeers(message);
}

Echo 应用:

代码语言:javascript
复制
@WsAction("echo")
public void onMessage(String message, WebSocketContext context) {
    context.sendToSelf(message);
}

关于更详细的 websocket 支持, 可参见 官方文档

#227 支持控制台颜色输出

通过配置 logback.xml 文件 (例子在这里) ActFramework 可以输出带颜色的 log 信息:

image
image

#228 生成 ASCII 字符的 favicon

如果 ActFramework 在 /resources/asset//resources/asset/img/resources/asset/image 目录下找到 favicon.pngfavicon.ico 文件,将会在应用启动的时候打印 ASCII 版的 favicon,例如:

image
image

#228 将带有 @Stateless 注解的类加入到应用的 singleton 注册表中

如果一个类上标注有 @Stateless 注解,ActFramework 在启动的时候会将该类加入 Singleton 注册表里

#212 简化 header session mapper 的配置

有时候没法依赖 cookie 来保存 session 数据, 这个时候我们需要将 session 数据映射到其他方式,比如 http header 里。在以前的版本中使用 header session mapper 不是特别方便:

  1. 实现 header session mapper 类
代码语言:javascript
复制
package com.mycomp;

public class MyAppSessionMapper extends act.util.SessionMapper.HeaderSessionMapper {
    public SessionMapper() {
        super("X-MyApp-");
    }
}
  1. 在 app properties 文件中加入:
代码语言:javascript
复制
session.mapper=com.mycomp.MyAppSessionMapper

R1.4.0 简化了上面的步骤,现在我们只需要在配置文件中加入下面一行即可:

代码语言:javascript
复制
session.mapper.header.prefix=X-MyApp-

#226 支持定制 banner 文字

如果框架在 /resources/ 找到一个名为 act_banner.txt 的文件,将会使用该文件的内容来作为应用启动时的 banner text 输出,例如

image
image

#219 支持 Singleton 的延迟加载

现在开发人员可以使用 @Lazy 注解和 @Singleton 注解一起表示一个 Singleton 类,但是不需要在应用启动过程之加载到 Singleton 注册表中,而是当第一次被使用的时候实例化并加载到 Singleton 注册表, 例如:

代码语言:javascript
复制
@Lazy
@Singleton
public class MySingletonClass {
}

点击 https://github.com/actframework/actframework/milestone/7?closed=1 查看 R1.4.0 的 issue 完整清单

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • #17 WebSocket 支持
  • #227 支持控制台颜色输出
  • #228 生成 ASCII 字符的 favicon
  • #228 将带有 @Stateless 注解的类加入到应用的 singleton 注册表中
  • #212 简化 header session mapper 的配置
  • #226 支持定制 banner 文字
  • #219 支持 Singleton 的延迟加载
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档