java 项目心得_读懂JAVA WEB项目的一点心得 | 学步园
今日接手一个JAVA开发的WEB项目,代码已是现成的(无文档),需要熟悉和日后修改.很久没有写代码了,于是有点儿不知如何下手,现在将自己感觉有用的做法记录一下.
一、熟悉应用整体功能
WEB项目的话,可以部署一下,就可以应用起来,了解项目的主要功能。可以自己想想这些功能如果是自己做的话,会如何实现,实现上有什么技术难点等。
二、熟悉代码整体架构
需要对整个项目的体系结构有一个了解。
1、查看/WEB-INF/web.xml文件,看看用了哪些Filter、Servlet、标签等,查看其他的配置文件,包括数据库配置文件、日志配置文件什么的心里有个大概。
2、使用Eclipse的JAVADOC导出功能,生成html,可以再贴到WORD保存成DOC文件,这样,查看DOC文件,边看,边用笔、纸等稍画画图(列出包名、类名、类主要方法、是否是单例模式、是不是抽象类、各类的逻辑调用关系),可将一个基础的、简单的业务中涉及到的类及各类的主要功能、各类间的关系有个大概的了解。如CMS系统中的一个文章对象Article的业务处理逻辑搞清楚。比如:文章对象:AbstractArticleManageCommand管理基类、
Add/Del/Modify/ArticleComand管理类(实现基类)、ArticleBean业务逻辑类、ArticleDao与数据库处理类、ArticleSQLCode读取SQL文件类、ArticleVO文章对象类。这样差不多,会大概了解一个业务的处理会涉及到哪些类、各类的职责、调用关系等。(这里在纸上稍画画可能会比电脑快一点,个人比较习惯,觉得直观些也好理解些。)
3、再使用Eclipse的UML生成功能,将一个业务的各类的类图生成,并将它们的调用关系标注出来。会看起来更清晰一些。
4、用Excel将各包中的类进行总结:
包括:
所属层类型(业务逻辑层/前台展现层/数据持久层)
所属模块(用户管理/产品管理/文章管理)
所属包路径
类名
类作用:如,
文章对象原型VO/文章对象业务逻辑处理类Bean/文章对象逻辑实现类DAO/
文章管理器基(抽象)类/管理文章对象管理器Command/文章显示标签Tag
文章管理SQL辅助类
三、主要功能的实现
对上面有个大概了解后,再到各业务处理类如前台显示用到TAG标签、列表增删查改等功能用到的业务逻辑类、分页、过滤器、servle等,都是做什么的、再去仔细看看是如何做的,是用struts还是一般的Bean,再做具体的了解。
有时可以按分类的看,如:所有过滤器、所有标签、所有servlet的功能、对应的类处理;有时也可按业务分类看,如:新闻的前台调用(列表、分页、显示)、后台管理(增删查改、置顶、加精、审批),权限管理,用户管理。这样子看。
四、主要技术
如使用到的Ajax实现的多个上传图片、无刷新分页、多服务器管理等。
今天先暂写到这里,等我边看边记录。
java 项目心得_读懂JAVA WEB项目的一点心得 | 学步园相关推荐
- java 内部类定于_搞懂 JAVA 内部类
前些天写了一篇关于 2018 年奋斗计划的文章,其实做 Android 开发也有一段时间了,文章中所写的内容,也都是在日常开发中遇到各种问题后总结下来需要巩固的基础或者进阶知识.那么本文就从内部类开刀 ...
- java 自旋锁_搞懂Java中的自旋锁
轻松搞懂Java中的自旋锁 前言 在之前的文章<一文彻底搞懂面试中常问的各种"锁">中介绍了Java中的各种"锁",可能对于不是很了解这些概念的同学 ...
- java中date类型如何赋值_一文读懂java中的Reference和引用类型
简介 java中有值类型也有引用类型,引用类型一般是针对于java中对象来说的,今天介绍一下java中的引用类型.java为引用类型专门定义了一个类叫做Reference.Reference是跟jav ...
- 一文读懂Java中File类、字节流、字符流、转换流
一文读懂Java中File类.字节流.字符流.转换流 第一章 递归:File类: 1.1:概述 java.io.File 类是文件和目录路径名的抽象表示,主要用于文件和目录的创建.查找和删除等操作. ...
- java学不下去能学web安全吗,这半年学习 Web 安全的一点心得体会
原标题:这半年学习 Web 安全的一点心得体会 来自公众号: 信安之路 大家好,我是 Mirror(王宇阳),专科在读的大二学生:接触信安时间不长,大佬多多指教.信安之路成长平台网站开放后我就在双十一 ...
- JVM学习笔记(Ⅰ):Class类文件结构解析(带你读懂Java字节码,这一篇就够了)
JVM学习笔记(Ⅰ):Class类文件结构解析,带你读懂Java字节码 前言:本文属于博主个人的学习笔记,博主也是小白.如果有不对的地方希望各位帮忙指出.本文主要还是我的学习总结,因为网上的一些知识分 ...
- 一图读懂Java架构
一图读懂Java架构: 1,Java 类加载过程 类加载过程 2,Java 内存分区 方法区 堆区 虚拟机栈区 程序计数器 本地方法栈 后三个都是线程私有 3,Java执行引擎 解释器 + JIT实时 ...
- JVM(一)一文读懂Java编译全过程
一文读懂Java编译全过程 java代码首先要通过前端编译器编译成.class字节码文件,然后再按一定的规则加载到JVM(java 虚拟机)内运行,有三种运行方式,解释模式(javac).编译模式(C ...
- 简单一文带你读懂Java变量的作用和三要素
Java变量的作用 不只是java,在其他的编程语言中变量的作用只有一个:存储值(数据) 在java中,变量本质上是一块内存区域,数据存储在java虚拟机(JVM)内存中 变量的三要素 变量的三要素分 ...
最新文章
- leetcode 8. 字符串转换整数 (atoi)
- Arduino IDE 如何添加 ESP32 开发板?
- Sprint Application bootstrap的研究和调试
- Linux操作系统各版本ISO镜像下载(包括oracle linux\redhat\centos\u
- Windows程序开发——指挥官夏尔对于Windows程序开发框架的选择
- 集合框架之ArrayList集合
- HTML常用特殊符号集
- 兔子问题or斐波那契数列
- oracle 定时任务 每天执行,Oracle定时任务(定时执行某个SQL语句)
- php在线售卡系统,云尚在线发卡系统PHP源码|专门为个人或小型企业提供在线售卡,订单处理系统...
- 鹏业安装算量软件合并计算项目操作
- 正确安装Senta的姿势
- 单片机课设波形发生器 产生方波、三角波、正弦波、锯齿波 波形幅度可调、频率可调
- 麻省理工学院计算机博士几年,破译「罗塞塔石碑」要几十年?华裔MIT博士开发新系统,快速解密...
- 【错误解决】System.NotSupportedException:“LINQ to Entities does not recognize the method
- 服务器维护首先查看指示灯,HP ILO2 使用详细教程[图文]
- python 柱状图如何添加数字标签_matplotlib可视化之如何给图形添加数据标签?
- 德国的共享杯,共享碗--还有什么不能共享?
- [deviceone开发]-纳豆项目源码开源
- 白银之手服务器人物不显示,白银之手 - 萌娘百科 万物皆可萌的百科全书
热门文章
- SQLServer 批量插入数据的两种方法
- python极简代码实现快速排序
- Spring使用ComponentScan扫描Maven多模块工程的其它模块
- 201521123050 《Java程序设计》第8周学习总结
- 世界摩天大楼2009年排名
- CSDN Blog 之七宗罪
- PHP学习之六:预定义常量
- 安卓(android)建立项目时失败,出现Android Manifest.xml file missing几种解决方法?(总结中)
- IIS7下 【请求被中止: 未能创建 SSL/TLS 安全通道 】 解决方法
- 关于VS2017编译UE4项目,输出窗口有乱码的解决方案