使用java基础包开发一个简化版springmvc框架

这个项目是3年前的,记忆尤深,刚刚接触springboot一个月(事实上是刚进一家公司,闲着没事干),发现非常多的功能都是那么容易的实现,于是乎想能否自己实现一个mvc,保持springmvc的使用风格,于是花了接近1个多月的时间写了这个项目,期间收获非常多,建议3年以下的的java同学可以参考。此框架参考了一个大型的电商系统框架源码(很老的项目基于Servlet)

项目地址 https://github.com/liuchengts/bassis

实现思路:

一、构建工具模块,基础的工具包,而不是耦合在代码中。

二、构建bean模块,类似于springbean工厂,但是我这里的bean模块还承担了自动扫描装配等工作。

三、构建hibernate模块,支持数据库操作,支持多数据源

四、构建web模块,框架主体

1、构建一个Servlet容器,类似于springDispatcherServlet,获得上下文,并构建一个配置文件读取器

2、随后开始启动框架初始化过程,主要有bean扫描器,bean路由匹配算法及存储,ioc资源注入,资源释放等

3、在代理上使用了cglib和jdk两种方式,也包含ams字节码的原生方式。

4、实现了aop,增加了拦截器栈(实现上我记得有个小bug没有处理好)

5、多数据源同步事务可以从aop的基础上开发,目前还没有加上。

五、构建test模块,独立整个框架源码,做的测试框架的项目,也介绍了一些框架特性用法,建议从这个test模块入手看,会更加直观了解整个框架的运作。

前段时间打算把这个项目有传统的web.xml配置的结构改为内嵌tomcat 类似springboot的结构,奈何时间不够,没空整了。

欢迎关注我的个人公众号
欢迎关注我的个人公众号
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值