java框架_轻量级Java框架 oxygen

轻量级Java框架

介绍

一个轻量级Java框架

  • oxygen-core
  • 配置管理,支持${attrs.key:defaultValue}表达式获取配置
  • 加解密管理,提供加解密服务内置基础加密实现,例如SHA-1、SHA-256、MD5
  • 异常管理,提供异常包装,统一异常编码,便于国际化
  • i18n国际化
  • 资源文件加载,提供file,jar,classpath等文件加载
  • 类扫描器
  • 部分工具类
  • retry重试
  • oxygen-ioc
  • 基于构造器的轻量级依赖注入
  • oxygen-aop
  • 基于cglib实现的切面
  • 轻巧简单,可单独使用
  • 可使用注解Aspect或直接实现Interceptor编写切面
  • oxygen-cache
  • 内置Ehcache和LocalCache缓存
  • 提供基于注解Cacheable的方法缓存
  • oxygen-job
  • 提供基于注解Scheduled的定时任务
  • oxygen-jdbc
  • 小巧简单的jdbc实现,纯jdk实现,无第三方jar
  • 支持多数据源
  • 基于sql进行crud,不提供类似Hibernate的链式方法(原因:sql作为数据库领域的DSL,已经很自然优雅,Less is more)
  • oxygen-web
  • 轻量级web框架支持注解声明和函数式编程
  • 支持Servlet3.0 ServletContainerInitializer 自动加载,省略web.xml
  • 支持i18n动态切换
  • 提供WebHook进行请求拦截处理
  • 支持自定义全局异常处理
7a41e34f0b6587d0a04c0d7536d89266.png

特性

  • 轻量级,使用简单
  • 支持插件扩展
  • 函数式编程
  • 流式风格

快速开始

创建Maven项目

-tomcatvip.justlive oxygen-web${oxygen.server} ${oxygen.version}

或Gradle

compile 'vip.justlive:oxygen-web-tomcat:$oxygenVersion'

不需要webapp项目框架,支持Servlet3.0

编写 main 函数写一个 Hello World

public static void main(String[] args) { Router.router().path("/").handler(ctx -> ctx.response().write("hello world")); Server.server().listen(8080);}

用浏览器打开 http://localhost:8080 这样就可以看到 hello world 了!

内容详解

  • 注册路由
  • 硬编码方式
  • 注解方式
  • 获取请求参数
  • 表单参数或json请求参数
  • restful参数
  • header参数
  • cookie参数
  • 参数转对象
  • 静态资源
  • 上传文件
  • 结果渲染
  • 渲染json
  • 渲染文本
  • 渲染html
  • 渲染模板
  • 重定向
  • 写入cookie
  • 添加header
  • 写入session
  • 拦截器
  • 异常处理
  • 部署项目
  • 修改端口
  • 运行项目

注册路由

硬编码方式

Router.router().path("/").handler(ctx -> ctx.response().write("hello world"));Router.router().path("/get").method(HttpMethod.GET).handler(get);Router.router().path("/post").method(HttpMethod.POST).handler(post);

注解方式

@Router("/book")public class BookRouter {  // 视图 @Mapping("/") public ViewResult index() { return Result.view("/book.html"); }  // json @Mapping(value = "/ajax
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值