小记/自研框架
文章平均质量分 66
worn.xiao
这个作者很懒,什么都没留下…
展开
-
maven插件实现代码生成
一 生成原理1 先编写一套模版代码2 在模版代码中加入特殊占位符3 连接数据库读表和字段,对占位符做替换二 具体实现1 编写maven代码2 集成到maven插件 引入pom.xml文件3 双击运行可生成代码三 实现代码解析项目结构如下所示 上面是代码下面是模版插件1 定义模版我这里用的是mybatis-plus所以有那么几个文件是需要自动生成的,这个根据大家自己所需要的自己根据自己公司的需要定制自己的模版就可以了.daopackage pac.原创 2022-01-03 11:13:57 · 2229 阅读 · 0 评论 -
手写校验框架
一 需求设计思想 目的是做一个审核中台,根据定制的模版,对业务方传过来的数据根据模版进行一个校验,远程传过来的数据结构大致样式如下可以看出是一个json数据每一个大致的样式是每一个大Key对应一个对象,通过代码解析一般可以把它解析成<key,Object> 的形势。{ "PHOTO_ONLINE_TRANSPORT_PERMIT": { "items": { "online_taxi_transport_city": "", "full_n...原创 2021-09-26 00:16:57 · 202 阅读 · 0 评论 -
手写socket数据交换框架
数据通信是两个信息系统之间进行信息交换的过程,比如业务系统A需要登记业务系统B的数据信息,比如监控心跳之类的等等。基于系统之间的数据通信方式有很多。比如我们常见的基于http协议的rest风格的数据通信,基于Soap协议的webservice的wsdl文档的数据通信,基于socket的xml数据交换方式以及对象序列华数据交换方式等等的,当然还有很多比如rmi等等的远程调用方式,那么我们怎么来规划一...原创 2018-07-13 00:21:44 · 1206 阅读 · 0 评论 -
手写SpringMVC框架
/*1编写注解编写Springmvc常用的注解@controller@requestmapper@Serviceim@autoware通过编写如上所示的注解,来完成springmvc的基本功能package xiao.it.annotation;import java.lang.annotation.Documented;import java.lang.an原创 2017-12-11 14:32:11 · 372 阅读 · 0 评论 -
手写Mybatis
一 分析mybatis的工作原理:如上图所示是mybatis的工作原理1 首先程序加载全局的配置文件,形成配置文件类2 通过Mapper的接口形成一个mapper的代理3 通过调用mapper的代理执行对应的方法,此时代理中会发现,method.getdeclareClass并不是一个类,而是一个接口4 此时通过执行mapperMethod,也就是接口的方法原创 2017-12-25 00:01:25 · 3969 阅读 · 0 评论 -
操作日志小框架
一般来说项目中会碰到两个要求1 打日志不能影响主要的业务逻辑2 打日志要比较前后两个对象的差异为了满足这样的要求 我曾在好几个大公司都接到过这样的需求,那么怎么操作呢 一 首先先弄一个判空的工具类 public static boolean isBlank(Object str) { return (str == null || (str+"").trim(...原创 2018-11-21 16:12:29 · 557 阅读 · 0 评论 -
分布式锁框架
为什么要用分布式锁 1 怎么保证分布式系统中唯一中主键的生成 2 分布式环境下怎么保证,在高并发的情况下数据的唯一性问题 3 分布式环境下怎么保证数据并发写入的时候 不重复的问题 如上所列举的这些问题,在分布式环境下都是可以分布式锁来解决的,关键在于分布式锁要怎么实现呢这里就有好几种实现方案了 1.使用数据库实现分布式锁...原创 2018-12-16 22:48:20 · 587 阅读 · 0 评论 -
【基于zookeeper】微服务RPC框架设计与实现
一 微服务框架的构思1 大框架如上图所示服务端启动起来以后,向zookeeper注册自己的服务。2 客户端在调用服务的时候拉取注册中心注册的服务地址。3 客户端根据一定的负载均衡策略调用服务端的服务。4 服务端给出服务的响应结果给客户端。二 具体的设计过程2.1 服务器端的设计2.1.1 用户需求配置服务的注解 指定zookeeper的服务注册中心 ...原创 2018-12-16 23:08:37 · 603 阅读 · 0 评论