个人理解
文章平均质量分 60
CocanCodin
这个作者很懒,什么都没留下…
展开
-
总是记不住的 hashcode和equals 的重写
Ass(As) we can(know), 比较两个基础数据类型是否相同时,用 == 即可 而对象间比较不成立 一个举到烂的例子: String a = "a"; String aa = "a"; // false System.out.print(a == aa); // true System.out.print(a.equals(aa)); 因为String重写了Object的equals及hashcode方法 重写equals可以理解,但是为什么要重写hashcode方法? 如原创 2021-07-12 11:51:32 · 105 阅读 · 0 评论 -
Java NIO简单示例
BIO:阻塞IO,阻塞Socket的accept方法,直到建立连接 NIO:非阻塞IO,所有连接注册到Selector上作为一个事件,服务端通过轮询这个Selector来查看是否需要建立连接或执行某些 感兴趣的事件 NIO服务端: public class NioServer { public static void main(String[] args) { Selector selector = null; ServerSocketChannel serverSo原创 2020-12-09 21:59:39 · 257 阅读 · 0 评论 -
注解配置搭建本地Springboot 2.x + Apache Dubbo 2.7 + Zookeeper分布式框架
大致的调用流程如下: Step1: 创建一个Maven项目,添加公共接口,以idea为例: Step2: 2.1:创建Provider项目(Springboot),引入上述定义好的公共接口依赖: 一直Next直到项目创建完成。 2.2:在创建好的springboot项目中引入公共接口依赖: 并在原有基础上添加 apache dubbo 及 dubbo-zookeeper 相关依赖:...原创 2019-12-11 16:33:40 · 344 阅读 · 0 评论 -
Linux 【SUID & SGID & SBIT】
SUID : /etc/shadow 文件的权限为: -r-------- root root 意为仅有root才能去强制修改内部的数据信息,但是普通的用户想要修改自己的密码时,同样也会修改这个文件,但却不会因无权限导致密码修改失败,这就是SUID的功能。 SUID 仅对二进制文件有效; 首先,用户执行的passwd源于 /usr/bin/passwd ,其权限:-rwsr-xr-x root ...原创 2019-10-25 00:24:37 · 116 阅读 · 0 评论 -
Linux Bash sed
sed工具 sed -[nefri] [action] -n : silent模式,将通过sed处理(操作)过的行信息显示出来,未处理的不予显示; -e : 直接在命令行上进行sed的action编辑; -f : 将sed的action写入一个文件内,-f filename 可以读取并执行 filename 里面的action; -r : sed将变为支持扩展型正则表达式语法(默认是基础正则表达...原创 2019-10-10 16:27:57 · 194 阅读 · 0 评论 -
Linux Bash杂记
在Bash中,当希望获取用户输入的内容时,可以用到【read】命令,有点类似 c++的cin 或 Java的System.in; read [-pt] variable -p: 在输入的时候给予用户提示; -t: 等待输入超时的时间 variable: 输入的内容赋值到的变量名 如: read -p "Input Your Name:" -t 30 name 变量 变量在系统中分为自定...原创 2019-10-10 15:35:48 · 145 阅读 · 0 评论 -
Linux Ext2
Ext2文件系统结构(inode & block): inode存放文件的用户权限,属性,以及记录文件数据使用到的block编号,一个inode大小为 128 bytes; block负责存放文件的实际数据,大小有 1KB,2KB 和 4KB 可选; 每一个文件对应唯一的一个inode节点; 每一个inode下面可以有一个或多个block节点,取决于文件的大小; block节点一旦确定大...原创 2019-09-25 14:54:08 · 197 阅读 · 0 评论 -
JDK动态代理个人理解
使用演示:(例子出自《JavaEE互联网轻量级框架整合开发》) 接口:HelloWorld.java public interface HelloWorld { public void sayHelloWorld(); } 该接口实现类:HelloWorldImpl.java(此类为 被代理类) public class HelloWorldImpl implements HelloWorld...原创 2019-08-11 17:10:07 · 144 阅读 · 0 评论 -
Java多线程实现简单抢红包
抢红包是在并发场景下操纵和获取资源,只需要将操作和获取的过程建立线程安全机制即可; 抢红包需要多线程同时访问同一共享资源,所以将共享资源作为成员变量注入线程类中供其调用 (使用操纵内存的方式); 实现过程 红包类: // 红包实体,共享变量,通过直接操作内存实现 public class RedPack{ // 红包剩余数量 int remain; // 总...原创 2019-07-20 00:02:59 · 1107 阅读 · 0 评论 -
HashMap源码个人理解
HashMap实现Map接口,继承AbstractMap类,可序列化; 静态成员变量: DEFAULT_INITIAL_CAPACITY 默认数组(散列桶)容量:1<<4; MAXIMUM_CAPACITY 数组(散列桶)最大容量: 1<<30; DEFAULT_LOAD_FACTOR 扩容比例 0.75f; 即超过或达到数组容量的3/4后触发扩容,扩容方法:r...原创 2019-07-03 23:34:09 · 132 阅读 · 0 评论 -
【2019-03-10】个人记录【Maven引入本地依赖 + RestTemplate问题】
2019-03-10 第一: Maven引用本地项目类的方式: 将需要引入的项目使用maven打包(jar包): 项目根目录cmd: mvn clean package 在接收项目的pom中复制上述jar包pom内部的 groupId, artifactId 以及 version ,并指定scope为system 找到打包好的jar包,拷贝其在硬盘内的绝对路径+jar包名称.jar 在接收项目的...原创 2019-03-10 14:59:21 · 7740 阅读 · 1 评论 -
CentOS7搭建个人服务器 & 部署JavaWeb项目
尽量使用CentOS7即以上版本的Linux系统(个人推荐腾讯云服务器,配置过程很流畅),使用yum指令自动安装jdk、tomcat以及数据库:MariaDB(Mysql的分支),它可以让你免受配置各种环境变量之苦,安装完直接就可以用,无需配置。 首先拿到服务器第一步,去到安全组设置,把该打开的端口(TCP:80,443,22,ICMP什么的都打开),这里使用的是腾讯云安全组配置,配置内容大...原创 2018-08-07 17:26:13 · 1814 阅读 · 0 评论