优雅写代码之《项目规范》-附加树状图生成

news2024/10/7 16:19:21

阿丹:

        最近有一些小伙伴在跳槽之后接触到了新的项目小组,在讨论如何整理出漂亮的项目结构以及代码书写的时候,既然有小伙伴发问了,那当然就要一起学习,来!开卷!本文章只作为一个分享,要注意项目的结构风格不同的人各有千秋,精髓就是让其他人看得懂,在其他人阅读代码的时候能找得到。

代码分享:

        有些小伙伴问我怎么快速的将一个项目的文件夹层级像下面的方式展示出来,甚至还有一些小伙伴一点点的手撸!惊呆了老铁!分享一个代码可以直接生成我们需要的树状文件。

        首先要到目标文件夹下面

在标记的地方删除内容并输入cmd,回车就可以在当前目录下面唤出dos窗口。

 

请耐心学习下面简单的指令分享:

TREE指令生成树状图 

Windows系统中的tree命令可以用来显示文件夹的树形结构图。它可以帮助用户更直观地查看文件夹及其子文件夹的组织方式。 以下是tree命令的一些常用参数:

  • /f:显示所有文件和子目录。
  • /a:显示隐藏文件和子目录。
  • /d:只显示目录名,不显示其下的子目录和文件。
  • /l:显示文件的大小。
  • /h:如果某个目录下的文件数目很多,则将其以千字节为单位进行统计显示。
  • /i:显示每个文件的索引节点编号。
  • /c:显示每个文件的完整路径。
  • /q:以紧凑形式显示文件名。
  • /w:指定树状图的宽度。
  • /t:指定树状图的深度。

使用tree命令的基本语法如下:

tree [drive:][path] [/F] [/A] [/D] [/L] [/H] [/I] [/C] [/Q] [/W] [/T]

 要显示当前工作目录及其子目录的树状图,可以输入:

tree .

 如果你想要显示其他位置的树状图,只需要将.替换为你想要查看的位置即可。 注意:默认情况下,tree命令会列出所有文件和子目录。如果你只想查看某个特定类型文件的树状图,可以使用通配符*来进行筛选。例如,要显示当前目录下所有的.txt文件的树状图,可以输入:

tree *.txt

 可以通过重定向符号(>)将tree命令的结果写入到指定的文本文件中。例如,要将当前工作目录及其子目录的树状图写入到myfolder_tree.txt文件中,可以输入以下命令:

tree . > myfolder_tree.txt

 如果你想生成其他位置的树状图,只需将.替换为你想要查看的位置即可。例如,要生成C:\MyFolder目录及其子目录的树状图,并将其写入到myfolder_tree.txt文件中,可以输入以下命令:

tree C:\MyFolder > myfolder_tree.txt

 这样,tree命令的输出就会被保存到myfolder_tree.txt文件中了。

项目结构图:

└─com
    └─adn
        └─demo
            └─{模块名,如user}
                ├─config 配置类
                ├─constant
                │  └─enums 常量、枚举
                ├─component 自定义切面、过滤器、拦截器等
                │  ├─annotation
                │  ├─aspectj
                │  ├─filter
                │  └─interceptor 
                ├─controller 控制层
                ├─model 所有的bean都放在这里
                │  ├─convert 实体类之间的转化
                │  ├─dto feign使用的实体类,DTO结尾 远程调用等
                │  ├─bo service使用业务实体类 BO结尾
                │  ├─vo 接口出入参数,http交互常用
                │  │  ├─request
                │  │  └─response
                │  └─entity 实体类基本实体类
                ├─repository 数据库orm操作,接口定义等
                │  ├─impl 接口实现
                │  └─mapper mybatis的mapper接口,对应的xml文件放在resources资源目录下的mappers文件夹下
                ├─service 服务类
                │  ├─manager 复杂业务逻辑,不用写接口,供service调用,禁止调用上层service
                │  ├─handler 较复杂业务逻辑,不用写接口,供service、manager调用,禁止调用上层
                │  ├─helper  简单业务逻辑,不用写接口,供service、manager、handler调用,禁止调用上层
                │  ├─logic 最基本业务逻辑,不用写接口,供service、manager、handler、helper调用,禁止调用上层
                │  └─impl 接口实现,如UserRepositoryImpl
                └─extranal 外部feign接口
                   └─fallback  feign的fallbackFactory

编码的结构规范主要就是在项目的通过解耦和封装的思想来将一定的结构和规范整合起来,达到在一个包下强耦合,在不同包下解耦的作用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1211473.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

nvm下载安装以及配置

1. nvm下载 nvm各版本下载链接:Releases coreybutler/nvm-windows GitHub 建议下载安装版的,非安装版还需要额外配置环境变量。 2. nvm安装 注意:在安装 NVM for Windows 之前卸载任何现有版本的 Node.js(否则你会遇到版本冲突…

性能测试 —— Jmeter接口处理不低于200次/秒-场景

需求:期望某个接口系统的处理能力不低于200次/秒,如何设计? ①这个场景是看服务器对某个接口的TPS值是否能大于等于200,就可以了; ②系统处理能力:说的就是我们性能测试中的TPS; ③只要设计一…

电子电机行业万界星空科技MES解决方案

现在电子电机行业规模越来越大,也伴随着生产和管理成本走向变高的现象。针对这个问题,mes系统就成为各电子电机制造业的最优选择。 电子机电行业MES涵盖了从原材料采购到最终产品交付的整个过程,包括生产计划、物料管理、生产过程监控、质量…

【漏洞复现】浙大恩特客户资源管理系统 fileupload.jsp 任意文件上传漏洞

文章目录 前言声明一、系统概述二、漏洞描述三、资产探测四、漏洞复现五、修复建议 前言 杭州恩软信息技术有限公司客户资源管理系统fileupload.jsp接口存在安全漏洞,攻击者可通过上传恶意脚本应用,获取服务器控制权限。 声明 请勿利用文章内的相关技术…

Docker之安装mysql主从复制

安装mysql主从复制 1、新建主服务器容器实例3307 docker run -p 3307:3306 --name mysql-master \ -v /mydata/mysql-master/log:/var/log/mysql \ -v /mydata/mysql-master/data:/var/lib/mysql \ -v /mydata/mysql-master/conf:/etc/mysql \ -e MYSQL_ROOT_PASSWORDroot \…

通过cpolar实现外网ssh远程连接linux

现在我有个想法,就是希望通过外网能够远程连接到我的开发板。这里我们就需要使用到一种技术,内网穿透。 内网穿透是一种将内部网络中的设备通过外网进行访问的技术。在linux系统中,实现内网穿透有多种方式,其中最常见的方法是使用…

Spring全家桶源码解析--2.6 Spring scope 限制bean的作用范围

文章目录 前言一、Scope是什么?二、Scope使用2.1 单例:2.1.1 单例Bean的特点如下:2.1.2 单例设计模式 与单例bean: 2.2 原型bean:2.2.1 原型Bean的特点:2.2.2 原型Bean的销毁: 2.3 Request bean…

什么是集成测试?集成的方法有哪些?

前言 综合测试整合测试非常复杂,需要一些开发和逻辑技能。的确如此!那么把这个测试整合到我们的测试策略中的目的是什么呢?这个问题我们先不着急回答,让我们一步步往下看你就知道了。 为什么要进行集成测试? 以下是一…

Linux项目自动化构建工具---make/Makefile

顾得泉:个人主页 个人专栏:《Linux操作系统》 《C/C》 坚持才是硬道理! 一、工具背景 1.会不会写makefile,从一个侧面说明了一个人是否具备完成大型工程的能力。 2.一个工程中的源文件不计数,其按类型、功能、模块分…

达梦集群搭建

一、数据库安装 ###(一)安装前准备 版本准备 [rootlocalhost ~]# uname -a Linux localhost.localdomain 3.10.0-1160.el7.x86_64 #1 SMP Mon Oct 19 16:18:59 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux将镜像文件传到/opt目录下 [rootlocalhost100 …

【PyQt小知识 - 1】:QLineEdit内容的更新和获取、设置无边框

文章目录 QLineEdit更新和获取文本框内容设置为无边框 QLineEdit 更新和获取文本框内容 更新:QLineEdit().setText(text) 获取:QLineEdit().text() from PyQt5.QtWidgets import * import sysapp QApplication(sys.argv)window QWidget() window.re…

sqli-labs(Less-4) extractvalue闯关

extractvalue() - Xpath类型函数 1. 确认注入点如何闭合的方式 2. 爆出当前数据库的库名 http://127.0.0.1/sqlilabs/Less-4/?id1") and extractvalue(1,concat(~,(select database()))) --3. 爆出当前数据库的表名 http://127.0.0.1/sqlilabs/Less-4/?id1") …

Java map 详解 - 用法、遍历、排序、常用API等

概要: java.util 中的集合类包含 Java 中某些最常用的类。最常用的集合类是 List 和 Map。 Map 提供了一个更通用的元素存储方法。Map 集合类用于存储元素对(称作“键”和“值”),其中每个键映射到一个值。 本文主要介绍java m…

金融行业如何数字化转型?_光点科技

金融行业的数字化转型涉及技术创新的引入、客户体验的改善、内部流程的优化、安全和合规性的加强以及员工技能和企业文化的转变。 技术创新 包括云计算、人工智能、大数据分析和区块链技术的采用。云计算增强数据处理的灵活性,AI和机器学习在风险评估和欺诈检测方面…

【技术分享】配置二层远程端口镜像案例

热门IT课程-CSDN博客文章浏览阅读24次。认证课程介绍:华为HCIA试听课程 : 华为HCIA试听课程:华为HCIA试听课程:华为HCIP试听课程:思科CCNA试听课程:思科CCNA试听课程:思科CCNA试听课程&#xff…

Arduino安装 esp32 by Espressif (2.0.11)

安装Arduino IDE 2.2.1 Arduino 中安装 esp32 by Espressif (2.0.11) Arduino 中安装 DS1302 库文件 2022年安装的Arduino是1.8.10版本的,主控芯片是外置 2MB Flash 的 ESP32-C3芯片。ESP-C3-12F-2M。 202206 Arduino软件的安装、配置与程序下载的全过程演示 2023…

plsql查询中文出现乱码

添加环境变量:如下 变量名:NLS_LANG 变量值:SIMPLIFIED CHINESE_CHINA.ZHS16GBK 变量名:TNS_ADMIN 变量值:D:\instantclient_11_2\network\admin 在Path中添加instantclient_11_2存放路径

TOUGH系列软件教程

查看原文>>>全流程TOUGH系列软件实践技术应用 TOUGH系列软件是由美国劳伦斯伯克利实验室开发的,旨在解决非饱和带中地下水、热运移的通用模拟软件。和传统地下水模拟软件Feflow和Modflow不同,TOUGH系列软件采用模块化设计和有限积分差网格剖分…

notpad++正则化,利用关键字符删除整行

首先,ctrlf,选中[替换],勾选正则表达式(可以勾选[匹配大小写],不用勾选[匹配新行])。在[查找目标]框输入[^(.*)"car_no_clean"(.*)$\n]。在$后加上\n,可以将被替换的行直接删除,不加则…

【广州华锐互动】AR技术为气象站远程监控及在线指导维修提供极大便利

随着科技的不断发展,人类对于自然环境的理解和掌控能力也在不断提升。其中,AR(增强现实)技术的应用,为气象监控带来了革命性的变化。AR远程气象监测,就是将AR技术与气象监控相结合,通过虚拟与现…