Java知识点
[TOC]
一、Java 基础知识1、Object 类相关方法
getClass 获取当前运行时对象的 Class 对象。
hashCode 返回对象的 hash 码。
clone 拷贝当前对象, 必须实现 Cloneable 接口。浅拷贝对基本类型进行值拷贝,对引用类型拷贝引用;深拷贝对基本类型进行值拷贝,对引用类型对象不但拷贝对象的引用还拷贝对象的相关属性和方法。两者不同在于深拷贝创建了一个新的对象。
equals 通过内存地址比较两个对象是否相等,String 类重写了这个方法使用值来比较是否相等。
toString 返回类名@哈希码的 16 进制。
notify 唤醒当前对象监视器的任一个线程。
notifyAll 唤醒当前对象监视器上的所有线程。
wait 1、暂停线程的执行;2、三个不同参数方法(等待多少毫秒;额外等待多少毫秒;一直等待)3、与 Thread.sleep(long time) 相比,sleep 使当前线程休眠一段时间,并没有释放该对象的锁,wait 释放了锁。
finalize 对象被垃圾回收器回收时执行的方法。
2、基本数据类型
整型:byte(8)、s ...
数据库工具
数据库逆向工程
生成Mybatis实体类和接口
-GeneratorMapper.xml 与src目录同级
1、pom<build> <plugins> <!--mybatis代码自动生成插件--> <plugin> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-generator-maven-plugin</artifactId> <version>1.3.6</version> <configuration> <!--配置文件的位置--> <configurationFile>GeneratorMapper.xml</configurationFile> ...
Soft test
计算机组成与体系结构进制① R进制转十进制
R进制转为十进制,底数为R
② 十进制转R进制 – 短除法
R为待转进制数
③ 二进制转八进制和十六进制 (1)二进制转八进制,三位为一单位
(2)二进制转十六进制,四位为一单位,10开始使用A为一个数字为进行代表,A:10,B:11, C:12, D:13, E:14, F:15
加法:
减法:
乘法:
除法:
浮点数运算浮点数能表示的数的范围由阶码(e)的位数决定,精度由尾数的位数决定。
数符:正为0 负为1
阶符:在转换时候出现 n的正负 依然遵循 正0 负1 的规律
阶码:次方数
尾数:小数点后的数
编码
①原码 转为二进制,不足8为补0,最高位为符号位。(1)->00000001
1为负,0为正; (-1)->100000001 (1-1)->(1+(-1))->100000010->-2
②反码 正数和原码相同; 负数符号位不变其余取反,运算后除了符号位其余取反则位原码值 ...
MinIo
MinIoMinlO基于Apache License v2.0开源协议的对象存储服务,可以做为云存储的解决方案文档。
Golang语言实现,配置简单,单行命令可以运行起来。
MilO兼容亚马逊S3云存储服务接口,适合于存储大容量非结构化的数据,一个对象文件可以是任意大小,从几kb到最大5T不等。
官网文档:MinIO
创建与使用
拉取
docker pull minio/minio
创建容器
docker run -p 9000:9000 -p 9001:9001 --name minio -d --restart=always \ -e "MINIO_ROOT_USER=minio" -e "MINIO_ROOT_PASSWORD=minio123" \ -v /home/data:/data -v /home/config:/root/.minio minio/minio server /data --console-address ":9001"
访问 192.168.238.3: ...
Docker
Docker**镜像(Image)**:Docker将应用程序及其所需的依赖、函数库、环境、配置等文件打包在一起,称为镜像。
容器(Container):镜像中的应用程序运行后形成的进程就是容器,只是Docker会给容器做隔离,对外不可见。
DockerHub:DockerHub是一个Docker镜像的托管平台。这样的平台称为Docker Registry。
安装
卸载
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ ...
Zookeeper
Zookeeper
安装
下载(3.5版本后带bin版本)Index of /dist/zookeeper/zookeeper-3.9.0 (apache.org)
#上传#在opt创建zooKeeper目录mkdir zooKeeper#创建zookeeper数据目录mkdir zkdata#解压 /opt/zooKeepertar -zxvf apache-zookeeper-3.9.0-bin.tar.gz#进入到conf目录cd conf#拷贝 -- 因为 zoo_sample 这个配置文件不能生效,名字要为 zoocp zoo_sample.cfg zoo.cfg#编辑zoo.cfg 更改数据目录位置和更改端口vim zoo.cfgdataDir=/opt/zooKeeper/zkdata# admin.serverPort 默认占8080端口admin.serverPort=8882
数据模型
默认持久化
临时节点: -e
顺序节点:-s
服务端命令【Linux】
######## ...
Dubbo
DubboDubbo是 SOA 时代的产物,SpringCloud 是微服务时代的产物
要点
在Dubbo中,服务注册是通过注册接口名称来实现的,而不是实现类名称。Dubbo将服务按照接口名称进行注册和查找,然后根据所选的接口匹配对应的实现类。
Dubbo的服务提供者会将其服务暴露在注册中心,同时指定提供该服务的接口,而服务消费者则会根据接口名称来引用相应的服务。
使用
生产者:(接口,版本,超时时间,重试次数,服务权重)
@Service( interfaceClass = UserService.class, version = "2.0", timeout = 3000, retries = 0, weight = 100) public class UserServiceImpl implements UserService {}
消费者:(接口,版本,负载均衡策略,集群容错,服务降级)
@Reference( interfaceClass = UserS ...
Git
Git版本控制
1、本地版本控制记录文件每次的更新,可以对每个版本做一个快照,或是记录补丁文件,适合个人用,如RCS。
2、集中版本控制 SVN所有的版本数据都保存在服务器上,协同开发者从服务器上同步更新或上传自己的修改
3、分布式版本控制 Git 【*】
每个人都拥有全部的代码
所有版本信息仓库全部同步到本地的每个用户,这样就可以在本地查看所有版本历史,可以离线在本地提交,只需在连网时ush到相应的服务器或其他用户那里。由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可以恢复所有的数据,但这增加了本地存储空间的占用。
不会因为服务器损坏或者网络问题,造成不能工作的情况!
Git环境配置下载:Git_镜像
使用:
Git Bash:Unix与Linux风格的命令行,使用最多,推荐最多
Git CMD:Vindows风格的命令行
Git GUI:图形界面的Gt,不建议初学者使用,尽量先熟悉常用命令
常用命令
1)、cd:改变目录。2)、cd ..回退到上一个目录,直接cd进入默认目录3)、pwd:显示当前所在的 ...
Swagger
SwaggerSwagger
SpringBoot集成1、依赖
swagger2
ui
<!--swagger--><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> <version>2.9.2</version></dependency><dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger-ui</artifactId> <version>2.9.2</version></dependency>
2、业务
3、Config配置@Configuration@EnableSwagger2 //开启Swaggerpub ...
XML约束和驱动
Spring基本XML<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans https://www.springframework.org/schema/beans/spring-beans.xsd"> <bean id="mysqlImpl" class="com.chen.dao.UserDaoMysqlImpl"></bean> <bean id="UserSer ...