0%

什么是Maven

Maven是一款自动化构建工具,专注服务于Java平台的项目构建和依赖管理。

Maven的安装

在安装前,首先检查一下自己电脑中的Java版本,Java的版本必须是1.8的。

如果显示java 既不是内部命令也不是外部命令,则需要大家去配置Java的环境变量。

image-20230628215111829

阅读全文 »

什么是JDBC批处理

JDBC批处理是指,批量运行数据库的增删改查操作。

例如:当需要对数据库进行大量的数据插入操作时,如果一条一条的数据插入速度非常缓慢,这个时候就需要使用到批处理技术,将插入数据的操作进行积攒,当达到设置的指定数量时进行一次插入所有批次数据,这样做会大大减少对数据库访问所消耗的时间。

阅读全文 »

什么是JDBC

JDBC(Java Database Connectivity)是一个独立于特定数据库管理系统、通用的SQL数据库存取和操作的公共接口(一组API),定义了用来访问数据库的标准Java类库,(java.sql,javax.sql)使用这个类库可以以一种标准的方法、方便地访问数据库资源。

JDBC为访问不同的数据库提供了一种统一的途径,为开发者屏蔽了一些细节问题。

JDBC的目标是使Java程序员使用JDBC可以连接任何提供了JDBC驱动程序的数据库系统,这样就使得程序员无需对特定的数据库系统的特点有过多的了解,从而大大简化和加快了开发过程。

阅读全文 »

反射的基本概念

Java程序中,所有的对象都有两种类型:编译时类型和运行时类型,而很多时候对象的编译时类型和运行时类型不一致。

例如:某些变量或形参的类型是Object类型,但是程序却需要调用该对象运行时类型的方法,该方法不是Object中的方法,那么如何解决呢?

为了解决这些问题,程序需要在运行时发现对象和类的真实信息,现在有两种方案:

  • 方案1:在编译和运行时都完全知道类型的具体信息,在这种情况下,我们可以直接先使用instanceof运算符进行判断,再利用强制类型转换符将其转换成运行时类型的变量即可。
  • 方案2:编译时根本无法预知该对象和类的真实信息,程序只能依靠运行时信息来发现该对象和类的真实信息,这就必须使用反射。
阅读全文 »

项目实现要求

  • 编写客户端和服务器代码,要求客户端和服务器进行对象的传输交流。
  • 要求服务器支持同时多个客户端访问。
  • 并且客户端能够使用多个账号进行登录。
  • 客户端和服务器接收到对方的请求时,都给予对方响应内容。
  • 密码输入错误后支持用户重新输入。
阅读全文 »

软件结构

  • C/S结构 :全称为Client/Server结构,是指客户端和服务器结构。常见程序有QQ、红蜘蛛、飞秋等软件。

1_cs

阅读全文 »

对象流

前面学习的IO流,在程序代码中,要么将数据直接按照字节处理,要么按照字符处理。那么,如果读写Java其他数据类型的数据,怎么办呢?

1
2
3
4
5
6
7
String name = "张三";
int age = 30;
char gender = ‘男’;
double price = 13.14;
boolean is_boy = true;

Student stu = new Student("张三", 18);

Java提供了对象流来处理这些类型的数据:

  • ObjectOutputStream:将Java基本数据类型和对象写入字节输出流中。稍后可以使用 ObjectInputStream 将数据读入。通过在流中使用文件可以实现Java各种基本数据类型的数据以及对象的持久存储。如果流是网络套接字流,则可以在另一台主机上或另一个进程中接收这些数据或重构对象。
  • ObjectInputStreamObjectInputStream 对以前使用 ObjectOutputStream 写入的基本数据和对象进行反序列化。
阅读全文 »

经过前面配置好Slurm集群管理系统之后,经过和用户沟通,希望限制每次新建用户的磁盘使用量,由于之前是没有限制过的,所以导致很多老师和同学把服务器当成网盘在使用。上传文件后都不删除,导致原本充裕的磁盘后面都不够用了。数据多了,磁盘的读写速度也受到了一定的影响。

基于此,用户提出2个需求:

  1. 自动将NFS共享目录下超过3个月没有更新的文件删除。
  2. 将新建用户的磁盘使用量限定在1.5T内。

其中第1个需求比较简单,直接按照相应的逻辑写一个Shell脚本,然后设定计划启动程序即可;第2个需求稍微繁琐一点,需要使用到quote服务。

阅读全文 »

经过前面教程,我们现在已经搭建好了一个Slurm系统。为了方便管理,我们还需要开发相关的shell脚本用于对集群的管理,在这里我写了三个脚本。

脚本目录

master1节点目录/root/tools

  • add_user.sh:新建用户,并赋予用户访问集群资源权限。
  • del_user.sh:删除用户,并移除用户访问集群资源权限。
  • restartSlurm.sh:重启所有的Slurm节点。
阅读全文 »