在项目开发中自己设计MVC遇到的问题

##mvc简介
mvc是一种常用的项目开发的结构,其中j2ee,thinkphp,以及express都是用这个架构

  • m:model,表示数据库或者数据结构,包括其增删改查等操作
  • v:view,展示视图,html
  • c:control,表示控制器,用来连接model和view,从model中取出数据,给view

##微信公众平台的mvc
微信公众平台本身是单入口的程序,由于并不需要具体的view进行展示,所以利用框架开发并不合适,在这个项目中,我们自己搭建一个类似mvc的框架进行开发

  • model:各种工具类util,主要包括userUtil,logUtil,msgUtil等等
  • control:msgHandler,由于微信公众平台主要是消息的传递转发,所以我们主要就是利用一个control进行消息操作
  • view:由于展示的东西不多,所以view模块不需要

##开发中的问题
1.model的封装性,由于模型是对数据库进行操作,我们自己写的model难免会需要其他model的数据,一开始开发的时候,我直接在model中新建需要引用的model的实例,然后进行操作,这样的方式虽然方便,却破坏了模块封装的特性,出现重复操作的问题,在开发中,出现过一次问题

Connection reset by peer

问题就是对象循环引用