每个类前要有注释,类前的注释格式是:

/**

*类是干什么的

*@author  编写该类的作者

*/

类中的每个方法前也要有注释:

/**

*该方法是干什么的

*@param 该方法中传入的参数

*@return

*/

/**
* 目录服务类
* @author X
*
*/
@Component("project.docm.catalog.CatalogService")
@SuppressWarnings("all")
public class CatalogService {
@Autowired
PlatParamItemService paramItemService;

/**
* 获取根目录
* @return
*/
private String getRootPath(){
return paramItemService.getParam("FILE_FOLDER").getEvalue();
}

private String getIndexPath(){
return paramItemService.getParam("INDEX_FOLDER").getEvalue();
}
/**
* 查询目录
* @param path
* @return
*/
public List getCatalogs(String path) throws Exception{
File file = new File(path);
List result = new ArrayList();
if(file.isDirectory()){
//根目录
Map m = new HashMap();
m.put("id",UUID.randomUUID().toString());
m.put("name", file.getName());
m.put("len", file.list().length);
m.put("path", ZipUtils.gzip(file.getPath()));
m.put("size", file.length());
m.put("iconCls", "fa fa-laptop");
m.put("date", new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date(file.lastModified())));
m.put("children", eachCatalog(file));
result.add(m);
}else{
throw new Exception("不是一个目录");
}
return result;
}

public List getFiles(File catalog){
List result = new ArrayList();
if(catalog.isDirectory() && catalog.exists()){
File[] files = catalog.listFiles();
for(File file : files){
if(file.isFile()){
Map m = new HashMap();
m.put("id",UUID.randomUUID().toString());
m.put("name", file.getName());
m.put("path", ZipUtils.gzip(file.getPath()));
m.put("size", file.length());
m.put("iconCls", "fa fa-laptop");
m.put("date", new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date(file.lastModified())));
result.add(m);
}
}
}
return result;
}

public List eachCatalog(File path){
if(path.isDirectory()){
File[] files = path.listFiles();
List dirs = new ArrayList();
for(File file : files){
if(file.isDirectory()){
Map m = new HashMap();
m.put("id",UUID.randomUUID().toString());
m.put("path", ZipUtils.gzip(file.getPath()));
m.put("name", file.getName());
m.put("len", file.list().length);
m.put("size", file.length());
m.put("iconCls", "fa fa-folder");
m.put("date", new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date(file.lastModified())));
m.put("children", eachCatalog(file));
dirs.add(m);
}
}
return dirs;
}
return null;
}

//新增目录
@Transactional
public Object saveCatalogs(File file){
if(!file.exists()){
if(file.mkdir()){
Map m = new HashMap();
m.put("id",UUID.randomUUID().toString());
m.put("name", file.getName());
m.put("len", file.list().length);
m.put("path", ZipUtils.gzip(file.getPath()));
m.put("size", file.length());
m.put("iconCls", "fa fa-folder");
m.put("date", new SimpleDateFormat("yyyy/MM/dd HH:mm:ss").format(new Date(file.lastModified())));
m.put("children", eachCatalog(file));
return m;
}
}
return false;
}
//删除目录
public boolean deleteCatalogs(File file) {
if(file.exists() && file.isDirectory()){
if(file.delete()){
//删除索引
try {
IndexHelper.deleteIndex(file, getIndexPath(), getRootPath());
} catch (IOException e) {
e.printStackTrace();
}
return true;
}
}
return false;
}
/**
* 删除文件
* @param file
* @return
*/
public boolean deleteFile(File file) {
if(file.exists()){
return file.delete();
}
return false;
}
}

转载于:https://www.cnblogs.com/zhangshitong/p/4974460.html

java web代码规范:相关推荐

  1. java lint_Java代码规范与质量检测插件SonarLint

    1.  SonarLint SonarLint是一个代码质量检测插件,可以帮助我们检测出代码中的坏味道 下载与安装 在需要检测的单个文件或者单个项目上右键 --> Analyze --> ...

  2. Java开发代码规范之编程规约---命名风格

    前言 一个软件生命周期中,从可行性研究分析.计划到需求分析,再到软件设计.编码实现.测试,最后交付使用,运行维护过程中,维护过程占据了很大的比例,一个软件的生命周期中,很难保证自始至终都由最初的开发人 ...

  3. Java Web应用的代码分层最佳实践

    转载自 Java Web应用的代码分层最佳实践 代码分层,对于任何一个Java Web开发来说应该都不陌生.一个好的层次划分不仅可以能使代码结构更加清楚,还可以使项目分工更加明确,可读性大大提升,更加 ...

  4. Java Web应用的代码分层最佳实践。

    代码分层,对于任何一个Java Web开发来说应该都不陌生.一个好的层次划分不仅可以能使代码结构更加清楚,还可以使项目分工更加明确,可读性大大提升,更加有利于后期的维护和升级. 从另外一个角度来看,好 ...

  5. 【Java 强化】代码规范、JavaBean、lombok、内省(Introspector)、commons 项目、注解详解

    Java 强化 代码规范(包.类.接口.方法.变量.常量名) 主板加载通信组件案例(知识点回顾) 面向接口编程 + 集合 + 匿名内部类 加载资源文件 + 反射 JavaBean 规范 Lombok ...

  6. Java web Tomcat Server总结

    新建服务 Server-------New---------Server------Apache------Tomcat v8.0 Server-------Next-----Browse(Tomca ...

  7. 团队开发之:代码规范说明

    1.1  目的 今天人们越来越明白软件设计更多地是一种工程,而不是一种个人艺术.由于大型产品的开发通常由很多的人协同作战,如果不统一编程规范,最终合到一起的程序,其可读性将较差,这不仅给代码的理解带来 ...

  8. 中科方德java开发编码规范_插件推荐:如何将Java编码规范落地实际开发中

    一个软件需要花费80%的生命周期成本去维护. 几乎没有任何软件的整个生命周期仅由其原作者来维护. 编码规范改善软件的可读性,让工程师更快更彻底地理解新的代码. 如果你将源代码转变为一个产品,那么您需要 ...

  9. 代码规范(一)——java篇

    为什么80%的码农都做不了架构师?>>>    1. Result result=new Result(); result.setCode(201); result.setStr(r ...

最新文章

  1. cad应用程序的组件中发生了未经处理的异常_什么是CAD/CAM?
  2. 易华录发布蓝光存储新品
  3. 清理Pandas DataFrame中的数据
  4. python使用-python 类如何使用
  5. k3 审核流程图_金蝶K3系统操作流程图
  6. python代理ip连接失败_遇到问题--python--爬虫--使用代理ip第二次获取代理ip失败
  7. SourceOffSite Server和Visual SourceSafe 6.0d锁死问题的解决
  8. 计算机机房设备使用管理,机房设备使用管理制度
  9. 代码运行:CornerNet源码
  10. word制作表格并打印
  11. chrome浏览器无法打开网页怎么办
  12. 编解码学习笔记(七):微软Windows Media系列
  13. [转]批处理详细教程
  14. 触摸按键(电容式按键)
  15. 在Android中绘制圆角矩形图片
  16. Microsoft OLE DB Provider for SQL Server 错误 ‘80004005‘错误原因和解决方案
  17. 深入理解MySQL(2):详谈索引结构
  18. 人工智能几行代码实现换脸
  19. MFC实现打印所见即所得
  20. python web开发--web前端开发介绍

热门文章

  1. scala reduceLeft和reduceRight执行分析
  2. Python3 编程示例:斐波纳契数列
  3. Spring Boot 2.0.5 配置Druid数据库连接池
  4. css去除div连速点击的蓝色高亮效果
  5. pytorch指定用多张显卡训练_Pytorch多GPU训练
  6. b插到元素a之前python_python之路_前端基础之jQuery入门3
  7. CAN总线-位时序、波特率、采样点
  8. 工具SSHSecure连接远程服务器步骤
  9. 批处理命令 / 延迟环境变量扩展
  10. 小米10的Android安全更新,MIUI 12首批更新名单被曝光,小米10系列优先上Android 11...