Delta - A lightweight java web framework
什么是 Delta Framework
Delta 是一个基于MVC架构的轻量级WEB开发框架,基于jdk1.8开发,目前最新版本更新为 delta_1.1_beta,项目完全开源,并提供包装后的jar包方便用户快速开发,下面是对其基本结构的说明。
Delta 主要分为以下三大组成部分(此外,项目中还附带了一些文本加解密、生成验证码等常用工具类):
- Porter 负责数据库与一级实体之间的联系与转换,对JDBC的进一步封装,常应用在业务的DAO层。
- Assembler 负责项目各层代码间的注入与拼装,并提供了动态代理生成组件 ProxyFactory 等常用工具。
- Rover 处理框架的核心逻辑,主要接管请求关系映射,实现了对物理资源的隐式访问,并提供了黑名单机制以便开发者屏蔽关键资源,提供了表单验证组件 XForm 以及 Convertor 简化了以往表单填充、验证等重复操作。
如果您对SpringMVC、Struts2等框架已经有所了解,同时又很想快速体验Delta Framework的特色,您可以 从Github下载 或 浏览由该框架实现的项目,当然,非常欢迎您加入我们的开发过程,及时向我们提出代码解决方案、建议或者不足。项目目前正处于测试阶段,我们会持续跟进更新,敬请关注!
接下来是使用本框架进行快速开发的使用手册,由于Porter模块较为独立,有关它的使用说明将首先列出。
如何独立使用 Porter
Porter 的功能正如它的名字(搬运工)一样,它实现的核心功能即ORM,它依赖于基于连接池技术的JDBCUtil,JDBCUtil目前解除了对具体数据库的依赖,您可以在需要使用MySQL、Oracle、SQLServer以及其他关系型数据库的项目中通用代码,当然、如果您需要执行数据库相关的特定SQL语句,JDBCUtil中提供的 executeQuery / executeUpdate / execute 等方法便能完成您的需求。此外,由于执行方法的独立以及事务管理的原子性,JDBCUtil提供了组合事务合并查询的一套方法,由于在JDBCUtil是Delta框架中辅助部分,且普通用户无需直接对其操作,该手册中将不再对其详细说明,在后续版本中,JDBCUtil将通过配置文件兼容dbcp、c3p0等多组开源连接池)。
使用Porter前,jdbc.properties的参数配置是必须的,它需要被提供在src主目录下,同时,数据库驱动也是必须的。
配置完成!现在让我们开始第一段代码吧!先看看我要映射的数据表结构,以最简单的 t_user 表为例。
Field | Type | Extra |
---|---|---|
id | int (11) | PK, auto_increment |
username | char (32) | |
password | char (32) |
建完数据表,接下来要做的就是编写实体类代码了。
package com.entity;
import com.delta.core.porter.annotation.Entity;
import com.delta.core.porter.annotation.Ignore;
@Entity("t_user")
public class User {
private int id;
private String username;
private String password;
@Ignore
public