理解JavaWeb目录结构

JavaWeb的目录结构

记录学习中的各种问题,不懂的地方都是自己百度自己总结,如有错误请各位大佬批评指正,不胜感激。

目录

    • JavaWeb的目录结构
  • 前言
  • 一、目录结构
  • 二、直接谷歌
    • 1.了解各层的功能是什么
    • 2.额外了解到的java项目常见目录结构
    • 3.搜索controller的时候出现三层架构
  • 总结


前言

最近在做毕设题目自己拟好后,在网上找了很多开源项目,但是发现一些很规整的javaweb的目录结构不是太懂
我想弄清楚:
写目录结构的时候参考的标准是什么


提示:因为所有的东西源于网络,所以都标转载,如侵立删。

一、目录结构

以我找的开源项目为例:
理解JavaWeb目录结构_第1张图片

二、直接谷歌

1.了解各层的功能是什么

  • controller:主要是对外接口
  • exception:异常处理
  • mapper/dao:数据库访问层
  • po:持久对象
  • realm:存储用户名,密码以及用户名相关联角色的“数据库”
  • service:核心业务逻辑

2.额外了解到的java项目常见目录结构

标准规范的命名,对于阅读和沟通都能起到很正面的促进作用。
目前比较常见的目录接口分为两类:
一类MVC模式的目录接口(简单项目推荐),
另一类是DDD领域设计模式(大型项目推荐);
MVC设计模式
概述
MVC, 模型(Model)、视图(View)和控制器(Controller); 传统的三层架构,面向过程的javaWeb分层模式,主要分为如下以下三个层次:

  1. 数据访问层; 即包含数据库在内的所有数据源的操作部分
  2. 业务逻辑层; 对业务数据进行逻辑处理部分
  3. 表现层; 与用户交互的部分类似

各结构功能
controller : 主要是对外的接口
service : 核心业务逻辑
dao/mapper : 数据库访问层
entity: 实体类,字段和数据库保持一致
vo: 前端专用类型,避免暴露数据库结构
common: 基础工具包和常量package

出处:java常见目录结构

3.搜索controller的时候出现三层架构

这两个专业名词我又搞不清楚了 后来继续搜索才知道

三层架构是一个分层式的软件体系架构设计,它可适用于任何一个项目。
MVC是一个设计模式,它是根据项目的具体需求来决定是否适用于该项目。

三层架构将整个项目划分为:表现层(UI)、业务逻辑层(BLL)、数据访问层(DAL)。
MVC 即Model(模型),View(视图),Controller(控制)。

三层是基于业务逻辑来分的,而mvc是基于页面来分的。

MVC主要用于表现层,
三层架构主要用于体系架构,

三层一般是表现层、中间层、数据层,
其中表现层又可以分成M、V、C,(Model View Controller)模型-视图-控制器

出处:三层架构和MVC设计模式的区别


总结

原来建立目录结构的标准是根据MVC设计模式来的
而MVC就是三层架构里面的界面层,在写这样一个小案例的时候基本用不到三层架构,弄清楚MVC设计模式就可以了。

如果把一个用户访问用MVC设计出来的网站的过程用图表示出来的话就是
理解JavaWeb目录结构_第2张图片
此图来源

以后再遇到项目的目录结构就知道怎么回事儿了,而且能够更清楚的看懂别人的开源代码。
还有就是在写一个javaweb项目的时候各种让人头疼的配置文件的目录都是干什么的也很迷惑
正好在搜MVC设计模式目录结构的时候看到了详细解释,一并附上。
详细javaweb项目中各个配置文件作用解释

你可能感兴趣的:(java,java,设计模式)