zoukankan      html  css  js  c++  java
  • java项目常用架构

    三层架构 :

    界面层/表现层 UI

    业务逻辑层 BLL 针对具体的问题的操作,也可以理解成对数据层的操作,对数据业务逻辑处理。

    数据访问层 DAL 访问数据库

    mvc :

    而 MVC 是在三层架构的基础上设计的一种框架型架构,三层架构是一种宏观的概念,而 MVC 就是一种比较具体的三层架构的框架实现

    View 同UI

    Controller 用于将用户请求转发给相应的Model进行处理,并将处理Model的计算结果向用户提供相应响应。

    Model 承载数据,并对用户提交请求进行计算的模块。其分为两类,一类称为数据承载Bean,一类称为业务处理Bean。所谓数据承载Bean是指实体类,专门承载业务数据的,如Student、User等。而业务处理Bean则是指Service或Dao对象,专门用于处理用户提交请求的。

    常用项目分层:

    备注: 此处model不同于mvc的model!

    model层即entity层。存放我们的实体类,与数据库中的属性值基本保持一致,用于将数据变成java对象,提供给其他层使用。

    mapper层即dao层,对数据库进行数据持久化操作,增删改查等,直接跟数据库打交道,他的方法语句是直接针对数据库操作的。

    service层。存放业务逻辑处理,也是一些关于数据库处理的操作,不直接和数据库打交道而是通过mapper,提供和接口还有接口的实现方法,

    项目实现(这里很复杂,注意每一步的意义)

    Service接口           定义最基本的操作 增删改查

    AbstractService类  实现Service接口 并导入mapper层(即使用mapper增删改查)

    xxxxService接口     继承Service接口,传入model

    xxxxServiceImpl类  实现xxxxService接口,继承AbstractService类(也导入了model

    mbg生成的查询都是特制的example,灵活性差

    query类 接收参数生成自定义example

    controller层,即控制器,controller通过接收前端传过来的参数进行业务操作,在返回一个指定的路径或者数据表。

    导入service层,并使用service中的方法

  • 相关阅读:
    linux 添加环境变量(php为例)
    composer install Your requirements could not be resolved to an installable set of packages
    pytesseract 验证码识别
    mac crontab时间断内随机时间执行定时任务
    Mac使用crontab来实现定时任务
    安居客滑动验证码识别
    jQuery图片点击预览遮罩层,再点击关闭效果
    linux系统必学-部分链接
    JavaScript概念总结:作用域、闭包、对象与原型链
    Web前端性能优化全攻略
  • 原文地址:https://www.cnblogs.com/yanze/p/9564335.html
Copyright © 2011-2022 走看看