试试这个代码。
创新互联公司专注于企业营销型网站建设、网站重做改版、无极网站定制设计、自适应品牌网站建设、H5高端网站建设、商城网站建设、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为无极等各大城市提供网站开发制作服务。
import java.io.File;
import java.text.DecimalFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
public class FilesAndDirectories {
public FilesAndDirectories() {
}
public void runTest() {
// list files and folders
String dir = "D:\\temp";
File file = new File(dir);
displayInfo(0, file);
}
private void displayInfo(int depth, File file) {
// Name, Date, Size, Attr
boolean executable = file.canExecute();
boolean readable = file.canRead();
boolean writable = file.canWrite();
boolean hidden = file.isHidden();
boolean directory = file.isDirectory();
long lastModified = file.lastModified();
long length = file.length();
String name = file.getName();
// create ASCII file structure
StringBuilder buf = new StringBuilder();
for (int i = 0; i depth; ++i) {
buf.append("|");
}
if (directory) {
buf.append("+ ");
}
if (name.isEmpty()) {
buf.append(".");
} else {
buf.append(name);
}
// add modification date
buf.append("\t\t");
Date date = new Date(lastModified);
buf.append(new SimpleDateFormat().format(date));
buf.append("\t\t");
// add file size in kilobytes
long kb = length / 1024;
DecimalFormat format = new DecimalFormat();
format.setGroupingUsed(true);
buf.append(format.format(kb));
buf.append(" KB");
// add read, write, execute attribute flags
buf.append("\t\t");
if (hidden)
buf.append(".");
if (readable)
buf.append("R");
if (writable)
buf.append("W");
if (executable)
buf.append("X");
// print everything to the command line
System.out.println(buf.toString());
File[] children = file.listFiles();
if (children != null) {
for (File child : children) {
displayInfo(depth + 1, child);
}
}
}
public static void main(String[] args) {
new FilesAndDirectories().runTest();
}
}
多实例的redis 主要通过 redis shard功能实现
可以看一下Java Redis线程池ShardedJedisPool 使用方法
主要的原理是根据key做hash散列算法存储查询到不同的实例分片上
javaweb的四层/五层逻辑结构。
首先要明白为什么要分层?
分层的目的是为了简化工作流程,避免重复代码和不必要的冗余,提高开发速度和效率。
由上到下分为:
1.UI层(对用户进行显示)
2.持久化层(用来持久化数据库)
3.业务层(有丰富的业务逻辑,并进行处理,就是把实际数据库的映射到内存中,就好比把仓库的粮食放到锅里去煮还是拿去分给大家,这就是两种业务逻辑)
4.表现层(在我看来就是服务层,用来管理容器级别的服务,例如事务,安全,数据访问逻辑等等)
这是这四层结构,还有三层结构表示的:
表示层
业务逻辑
持久化
这个分层主要是看遵循哪一种标准以及分层的用途了。
就好比计算机网络中的网络结构分层,有五层的通用结构,四层的TCP/IP协议,七层的OSI协议。
我觉得不必深究,当你真实的去运用这些知识后,再去质疑也不迟。
建议 楼主了解下MVC
一般的项目大概分为4层
dao 就是数据操作层
一般放对数据库进行操作的方法,比如查找某条数据
biz 业务处理层
对用户的数据进行业务逻辑处理比如注册时,判断用户注册的用户名是否已存在,如果已存在返回用户错误信息,否则将用户注册的信息写入数据库
servlet 逻辑判断层
对页面的请求响应数据进行逻辑处理,如封装等
jsp 表现层
将程序处理的最终结果显示给用户
他们之间的联系就是,比如注册:
用户在jsp页面进行表单填写,点击提交到一个servlet,servlet将注册信息封装成javaBean交给biz层处理,这时候biz层对javaBean解封将用户注册的用户名提取出来调用dao层的checkUserName()进行判断该用户名是否已存在.如果存在返回一个信息给servlet告知用户该用户名已存在,请重新注册.如果该用户名不存在,说明可注册,biz再调用dao层的savaUser()方法将用户的注册信息写入数据库,返回servlet一个注册成功的信息,最后由servlet将这些处理的最终结果返回给jsp页面给用户.
建议楼主去多看看别人的项目,或者自己写些小项目这样在写程序的过程中能更贴切的理解这些过程存在的意义
总之,分层思想的存在是更方便的管理和维护
新闻名称:java分层代码实列 java分层窗格
当前URL:https://www.cdcxhl.com/article14/dopsgge.html
成都网站建设公司_创新互联,为您提供App开发、建站公司、软件开发、服务器托管、定制开发、Google
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联