Entry

挨踢部落故事汇(11):编程起步从0到1

徘徊边缘 提交于 2020-07-28 19:48:53
Aris在大学期间对编程产生了兴趣,当时他的班主任是教Java的,看着老师用代码写出一些他们做不到的事,Aris便开始觉得编程是一件很牛逼的事情。从那时起,他就沉入到计算机的世界里,每周都会去图书馆借一些书回去,边对照书边敲代码执行,逐渐一个个小案例被成功的敲出来了,顿时他心生满满的成就感。但一味的跟着书编程,并不会一直运行成功,有一次因为书本的某个小错误,Aris没有发现,导致他执行不出结果,于是他通过百度、Google各种查询,最终找到解决方法。此后Aris觉得单单跟着书上敲是不行的,还需要自己灵活变通,后面的学习生涯也是这样一天天积累的。 Aris·Java开发 自学Java编写小游戏 毕业后的三年间,Aris由于个人原因,没有从事过任何相关的企业级开发工作,而是在一家IT培训机构担任Java项目助理,很久没接触过Java的他,理论知识在脑海里所剩无几,所以刚进培训机构时,他也是跟着前来培训的学生一起边工作边学习,增强自己Bug解决能力,更好的与学生沟通,不管是日常学习还是生活琐事,都逐一了解清楚,这样方便后期对学生日常管理做优化,在此期间Aris自学了Struts2和Spring和Hibernate这三个比较常用的框架,后期因为课程上的改革,研究了MyBatis数据层管理框架。当时Aris学Swing的时候,为了对Swing的应用更为熟练点,他自己尝试写了个<飞机大战>游戏

主机“ xxx.xx.xxx.xxx”不允许连接到该MySQL服务器

我只是一个虾纸丫 提交于 2020-07-28 12:55:31
问题: This should be dead simple, but I cannot get it to work for the life of me. 这本来应该很简单,但是我 无法 让它在我的一生中发挥作用。 I'm just trying to connect remotely to my MySQL server. 我只是想远程连接到我的MySQL服务器。 connecting as 连接为 mysql -u root -h localhost -p works fine, but trying 工作正常,但尝试 mysql -u root -h 'any ip address here' -p fails with the error 失败并显示错误 ERROR 1130 (00000): Host ''xxx.xx.xxx.xxx'' is not allowed to connect to this MySQL server In the mysql.user table, there is exactly the same entry for user 'root' with host 'localhost' as another with host '%'. 在 mysql.user 表中,具有主机“ localhost”的用户“ root”与具有主机“%

WeakHashMap源码分析

与世无争的帅哥 提交于 2020-07-28 12:43:10
WeakHashMap与HashMap有些类似,但也有很多地方不同。它们设置了相同的负载因子和初始容量,但是前者的数据结构只使用了 数组+链表 ,并没有用到红黑树, 在这里,与HashMap重复且设置值一致的变量就不重复介绍了,只简单说下不同的地方。 代表空Key private static final Object NULL_KEY = new Object(); 复制代码 保存GC后被清除的WeakEntries private final ReferenceQueue\<Object\> queue = new ReferenceQueue\<\>(); 复制代码 Entry: 数组存放节点 private static class Entry < K , V > extends WeakReference < Object > implements Map . Entry < K , V > { V value; final int hash; Entry<K,V> next; Entry(Object key, V value, ReferenceQueue<Object> queue, int hash, Entry<K,V> next) { super (key, queue); this .value = value; this .hash = hash;

《30天自制操作系统》笔记3 --- (Day2 上节)完全解析文件系统

大城市里の小女人 提交于 2020-07-28 07:39:48
Day2 汇编语言学习与Makefile入门 本文仅带着思路,研究源码里关于文件系统的参数 关于day2主程序部分及更多内容,请看 《30天自制操作系统》笔记 导航 发现学习中的变化 源码差异分析 FAT12/FAT16/FAT32相关资料 开始全面分析 资料大全 发现学习中的变化 day1代码(只简单地使用DB DW DD RESB指令) 1 ; hello-os 2 ; TAB=4 3 4 ; 标准FAT12格式软盘专用的代码 Stand FAT12 format floppy code 5 6 DB 0xeb, 0x4e, 0x90 7 DB " HELLOIPL " ; 启动扇区名称(8字节) 8 DW 512 ; 每个扇区(sector)大小(必须512字节) 9 DB 1 ; 簇(cluster)大小(必须为1个扇区) 10 DW 1 ; FAT起始位置(一般为第一个扇区) 11 DB 2 ; FAT个数(必须为2) 12 DW 224 ; 根目录大小(一般为224项) 13 DW 2880 ; 该磁盘大小(必须为2880扇区1440*1024/512) 14 DB 0xf0 ; 磁盘类型(必须为0xf0) 15 DW 9 ; FAT的长度(必??9扇区) 16 DW 18 ; 一个磁道(track)有几个扇区(必须为18) 17 DW 2 ; 磁头数(必??2) 18

Redis-初体验/数据结构

孤街浪徒 提交于 2020-07-28 03:48:01
定义: Redis 是 C 语言开发的一个开源的(遵从 BSD 协议)高性能键值对(key-value)的内存数据库,可以用作数据库、缓存、消息中间件等。它是一种 NoSQL(not-only sql,泛指非关系型数据库)的数据库。 特点: 性能优秀,数据在内存中,读写速度非常快,支持并发 10W QPS。单进程单线程,是线程安全的,采用 IO 多路复用机制。丰富的数据类型,支持字符串(strings)、散列(hashes)、列表(lists)、集合(sets)、有序集合(sorted sets)等。支持数据持久化。可以将内存中数据保存在磁盘中,重启时加载。主从复制,哨兵,高可用。可以用作分布式锁。可以作为消息中间件使用,支持发布订阅 Redis内部内存对象管理 ! redis内存管理 Redis 内部使用一个 redisObject 对象来表示所有的 key 和 value,结构如下 typedef struct redisObject{ //对象的数据类型(String/Hash/List/Set/Zset) unsigned type:4; //表示redisObject对象的底层编码实现,主要有简单动态字符串,链表,字典,跳跃表,整数集合以及压缩列表, unsigned encoding:4; //指向底层数据结构的指针 void *ptr; //引用计数器,初始值为1

hostname -A会做啥

早过忘川 提交于 2020-07-28 03:44:17
一大数据大佬反馈说某云os配置主机名后不生效: 其实用man hostname可以了解到,是会返回机器IP地址的FQDN名称,如: -A, --all-fqdns Displays all FQDNs of the machine. This option enumerates all configured network addresses on all configured network interfaces, and trans- lates them to DNS domain names. Addresses that cannot be translated (i.e. because they do not have an appropriate reverse DNS entry) are skipped. Note that different addresses may resolve to the same name, therefore the output may contain duplicate entries. Do not make any assumptions about the order of the output. 我们用tcpdump抓包看下:会发起DNS查询机器对应IP的名称解析 来源: oschina 链接: https://my

java并发编程 -CountDownLatch和CyclicBarrier在内部实现和场景上的区别

霸气de小男生 提交于 2020-07-28 02:58:32
前言 CountDownLatch和CyclicBarrier两个同为java并发编程的重要工具类,它们在诸多多线程并发或并行场景中得到了广泛的应用。但两者就其内部实现和使用场景而言是各有所侧重的。 内部实现差异 前者更多依赖经典的AQS机制和CAS机制来控制器内部状态的更迭和计数器本身的变化,而后者更多依靠可重入Lock等机制来控制其内部并发安全性和一致性。 public class { //Synchronization control For CountDownLatch. //Uses AQS state to represent count. private static final class Sync extends AbstractQueuedSynchronizer { private static final long serialVersionUID = 4982264981922014374L; Sync(int count) { setState(count); } int getCount() { return getState(); } protected int tryAcquireShared(int acquires) { return (getState() == 0) ? 1 : -1; } protected boolean

Map集合

倾然丶 夕夏残阳落幕 提交于 2020-07-28 01:52:28
概述 Map集合是双列集合,一个元素包含两个值( key 和 value ) Map集合中的元素,key和value数据类型可以相同也可以不同 Map集合中的元素, key不允许重复,value可以重复 key和value是一一对应的 Map公用方法 public V put(K key, V value):把指定的键与指定的值添加到Map集合中,key不重复时,返回值V为null;key重复的时候,会使用新的value替换Map中的value,返回被替换的value值 public V remove(Object key):把指定的键所对应的键值对元素在Map集合中删除,返回被删除元素 public V get(Object key):根据指定的键,在Map集合中获取对应的值 boolean containsKey(Object key):判断集合中是否包含指定的键 public Set keySet():获取Map集合中所有的键,储存到Set集合中 public Set<Map.Entry<K, V>> entrySet():获取到Map集合中所有键值对对象的集合(Set集合) 遍历Map集合 键找值的方法 使用Map集合中 keySet()方法将集合中的key取出,储存到Set集合中 利用遍历器或增强for循环遍历Set集合,获取每一个key 使用Map集合中get

JavaFX初探(菜单)

故事扮演 提交于 2020-07-27 23:15:40
JavaFX初探(菜单) 本节我们介绍如何创建菜单、菜单栏、增加菜单项、为菜单分类,创建子菜单、设置菜单上下文。你可以使用下面的类来创建菜单。 MenuBar MenuItem Menu CheckMenuItem RadioMenuItem CustomMenuItem SeparatorMenuItem ContextMenu 下图是一个典型的菜单的使用: 在应用中构建菜单 一个菜单就是一系列可操作的项目,可以根据用户的需要来表现。当一个菜单可见的时候,用户可以在某一时刻选中其中一个,在用户选中某一项时,这个菜单变成隐藏模式。通过使用菜单,我们可以节省用户界面的空间,因为有一些功能某些时间并不是总要现实出来的。 菜单在菜单栏中被分组,你需要使用下面的菜单项类,当你构建一个菜单的时候。 MenuItem 创建可选项 Menu 创建子菜单 RadioButtonItem 创建一个单选项 CheckMenuItem 这个菜单项可以在选择被无选择之间转换。 为了给菜单分类,可以使用SeparatorMenuItem 类。 菜单通常在窗口的顶部,并且这些菜单是隐藏的,我们可以通过鼠标点击上下文来打开菜单。 创建菜单栏 尽管菜单栏可以放在用户界面的任何地方,但是一般情况我们放到窗口的顶部。并且菜单栏可已自动的改变自己的大小。默认情况下,每一个菜单栏中的菜单像一个按钮一样呈现出来。

open-ldap服务安装(1)

浪尽此生 提交于 2020-07-27 14:52:55
LDAP简介   LDAP 代表 轻量级目录访问协议 。在我的理解中ldap就是一个数据库。   在LDAP中,目录条目以分层树状结构排序。   传统上,这种结构反映了地理和组织边界,表示国家/地区的条目 显示在树的顶部。 下面是代表各州和国家组织的条目。 它们下面可能是表示组织单位,人员,打印机,文档或您可以想到的任何其他内容的条目。图1.1显示了使用传统命令的实例LDAP目录树。      而现在一般使用基于域名来显示, 因为它允许使用 DNS 定位目录服务 。 图1.2显示了使用基于域的命名的LDAP目录树示例。 LDAP使用场景   我暂时只用到了统一身份验证。 安装OPEN-LDAP yum安装(首先需要epel源) yum -y install openldap compat-openldap openldap-clients openldap-servers openldap-servers-sql openldap-devel migrationtools 目录结构 [root@zabbix1 openldap]# pwd /etc/ openldap [root@zabbix1 openldap]# tree . ├── certs │ ├── cert8.db │ ├── key3.db │ ├── password │ └── secmod.db ├──