问题描述
我们要开发个APP但是还有个WEBWEB上有几个简单的页面功能比APP简单些现在设计时候WEB是一个项目然后APP后台是一个WEBService服务现在觉得WEBService和WEB后台dao层都差不多公用一个数据库这么设计总感觉很别扭以后要是修改了一下数据库这两个项目的dao层都得改啊。。。求大神给个意见
解决方案
解决方案二:
这种,后台同用一个啊,把app,和web页面看成两个不同客户端,数据库,dao,同用。service层定义接口,根据app,web的业务做不同的实现,控制层web使用mvc,(struts,springmvc。。。)app,可以通过httpclent调用sevice层的业务接口
解决方案三:
那么你就独立一个然后提供接口,另一个直接调用。
解决方案四:
考虑到app的服务和web的服务有很多不同而且dao中各实体的关联app和web也不太一样例如app需要一对多而web里就不需要还有登陆调用接口方式也不同app调用是无状态的不需要容器保有session对app的调用每次都需要提供用户名密码验证而web中是保有session的不需要密码有token就行了
解决方案五:
1在开发时首先用hibernate把连接数据库的dao层提取出来单独作为一个纯数据库基类工程管理,appservice和web都引用该数据库基类工程,最大程度共用和与具体业务解耦。2appservice和web下有自己的数据库操作业务逻辑,包或者工程都可,尽可能的把自己的数据逻辑封装到自己的工程下。3要考虑不同独立服务的数据库并发读取和修改问题,以免出现数据丢失更新这类严重的并发问题,可以在字段中加入version,使用hibernate配置version。4如果考虑到负载均衡和安全,可以建多个数据库,在数据库之间做数据同步。
解决方案六:
用html适配?