Obatis开源项目

不可或缺的快速开发利器,真正实现Java面向对象的思想为中小企业提供Java快速开发服务。

 

介绍

Obatis开源项目是基于springboot、springcloud、mybatis等开源技术,旨在快速集成、统一开发模式和技术标准、真正实现Java面向对象的思想致力于为中小企业提供Java快速开发服务。项目于2019年4月开源至GitHub,其中包括工具包(Obatis-tools)、 HTTP网络通信(Obatis-net)、Office文件操作(Obatis-office,目前仅支持Excel的读和写操作)、文件处理(Obatis-file,目前包含基于FTP连接池文件上传)、web应用开发(Obatis-web)、数据库编程(Obatis-orm)等子项目,代码托管地址:https://github.com/obatis

项目立项的原则是面向中小企业(团队)提供Java开发服务,减少项目繁琐配置,规范数据的输入和输出格式。丰富的API接口,基于Spring项目、源于ORM思想,真正体现Java面向对象的编程思维,为开发者或团队提供开箱即用的开源项目。项目理念为风格一致、减少重复工作、提高团队协作效率。


更新日志

Obatis开源项目于2021年05月18日发布的全家桶最新版本为 1.0-release,更新内容包括:

1、优化获取HTTP请求信息;
2、增加des加密功能模块;
3、增加rsa加密功能模块;
4、NormalCommonConstant 更名为 NormalConstant;
5、Base64DecoderTool 更名为 Base64Decrypter;
6、Base64EncoderTool 更名为 Base64Encrypter;
7、DateCommonConvert 更名为 DateConvert;
8、JsonCommonConvert 更名为 JsonConvert;
9、PinYinCommonConvert 更名为 PinYinConvert;
10、优化文件上传的命名规则;
11、增加 IsVehicleLicense(验证车牌号)的注解;
12、将 ResultInfoOutput 更名为 ResultInfo;
13、增加IsContactNumber(验证联系电话)的注解;
14、长度校验标签最小值默认0;
15、增加对HttpRequestMethodNotSupportedException、HttpMediaTypeNotSupportedException 异常的拦截捕获;
16、修复request.getHeader("User-Agent”)获取到的值可能为null的bug;
17、增加座机号码的判断;
18、增加@ReturnTypeValue 注解,返回原生态的值,不对返回结果进行统一结构化处理;
19、obatis-upload更名为obatis-file,upload仅作为一个子模块;
20、BeanCommonConvert 更名为 BeanConvert;
21、ResponseDefaultErrorCode 更名为 ResponseErrorCode;
22、ResponseDefaultErrorStatus 更名为 ResponseErrorStatus;
23、优化网络请求工具类;
24、obatis-core更名为obatis-orm并成为独立的数据库编程模块,调整内部结构及数据库操作代理句柄API实现方式;
25、增加 obatis 全家桶入口依赖 obatis-starter;
26、遵循只做增强,不做修改的原则。启动类注解回归到 springboot 原生的 @SpringBootApplication 方式;


使用说明

Obatis开源项目采用 maven 结构,引入Obatis模块只需在pom.xml中引入maven配置即可。

Obatis全家桶依赖引用:

<dependency>
<groupId>com.obatis</groupId>
<artifactId>obatis-starter</artifactId>
<version>1.0-release</version>
</dependency>

Obatis web 依赖引用:

<dependency>
<groupId>com.obatis</groupId>
<artifactId>obatis-web</artifactId>
<version>3.0.1-release</version>
</dependency>

Obatis orm 依赖引用:

<dependency>
<groupId>com.obatis</groupId>
<artifactId>obatis-orm</artifactId>
<version>1.0-release</version>
</dependency>

项目启动类参考如下:

@SpringBootApplication
@EnableEurekaClient
@EnableFeignClients
@EnableCircuitBreaker
@EnableScheduling
public class ApplicationStartup {

public static void main(String[] args) {
SpringApplication.run(ApplicationStartup.class, args);
}

}

MySql默认不支持批量更新,如需使用批量更新功能,需要开发人员主动数据库连接url后面显示配置加上&allowMultiQueries=true,例如:

spring.datasource.url = jdbc:mysql://127.0.0.1:3306/test_data?serverTimezone=Asia/Shanghai&useUnicode=true&characterEncoding=UTF-8&useSSL=false&allowMultiQueries=true

参与项目

欢迎您参与Obatis项目的开发,如果有问题或者建议,欢迎直接提出Issue意见或者发送邮件至service@obatis.com,期待您的参与……
也可以加入QQ群:250577580,一起和其他人讨论、分享使用心得。更多内容尽在Obatis


参考文献

对比mybatis!谈开发Obatis开源框架的初衷
重新被定义,Obatis开源项目新版本发布
Obatis开源框架即将移除404错误请求处理类
讲解Obatis开源框架数据库编程表达式类的使用