Kotlin 扩展函数和扩展属性的使用方法
Kotlin 能够扩展一个类的新功能而无需继承该类或者使用像装饰者这样的设计模式。 这通过叫做 扩展 的特殊声明完成。 例如,你可以为一个你不能修改的、来自第三方库中的类编写一个新的函数。 这个新增的函数就像那个原始类本来就有的函数一样,可以用普通的方法调用。 这种机制称为 扩展函数 ...
2024-01-10GitHub 秘籍收录了一些 Git 和 Github 非常酷同时又少有人知的功能
本秘籍收录了一些 Git 和 Github 非常酷同时又少有人知的功能。灵感来自于 Zach Holman 在 2012 年 Aloha Ruby Conference 和 2013 年 WDCNZ 上所做的演讲:Git and GitHub Secrets(slides) 和 More Git and GitHub Secrets(slides)。GitHub忽略空白字符变化在任意diff页面的URL后加上?w=1,可以去掉那些只是空白字符的变化,使你能更专注...
2024-01-10Linux安装MySQL教程(二进制分发版)
本教程为大家分享了Linux安装MySQL详细步骤,供大家参考,具体内容如下第一步: 下载MySQL安装包进入mysql官网,进入download界面,选择自己需要的版本和操作平台,我的电脑是Centos 7。我这里操作系统选择linux Generic,版本选最新。(我觉得选红帽系统应该也行,因为CentOS 本来和红帽就差不多)你可...
2024-01-10从零开始安装VMwareTools的详细步骤(图文教程)
VMware Tools是VMware虚拟机中自带的一种工具,相当于VirtualBox中的增强功能(Sun VirtualBox Guest Additions),是VMware提供的增强虚拟显卡和硬盘性能、以及同步虚拟机与主机时钟的驱动程序。它的功效不仅仅如此,我们可以通过它进行虚拟机和物理机之间的文件传输的,前提是我们要先安装它。那到底怎么安...
2024-01-10详解PHP用mb_string处理windows中文字符
我们都知道windows中(当然是中文版),文件名和文件内容等编码都是gbk,而我们在开发过程中,IDE里的编码则是UTF-8,(这里不讨论为什么等等问题,只考虑怎么把编码转变成一样的)所以导致我写的UTF-8编码的正则模式字符串中的中文在gbk编码的文件中并不能正确匹配。一开始,我并没有什么办法,...
2024-01-10PHP实现动态删除XML数据的方法示例
本文实例讲述了PHP实现动态删除XML数据的方法。分享给大家供大家参考,具体如下:前面介绍了动态添加XML数据的方法,这里在原有Message_XML类的基础上稍作改进,实现动态删除xml的功能:一. 代码<?php class Message_XML extends DomDocument{//定义类Message_XML并继承DomDocument类 private $Root; public function __cons...
2024-01-10JS、CSS和HTML实现注册页面
一个用HTML和CSS实现的注册页面模板,废话不多说了,上代码!更新:使用JavaScript实现用户名和密码表单校验功能。代码如下:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>注册页面</title> <style> *{ margin: 0px; padding: 0px; box-sizing: border-bo...
2024-01-10java 中 zookeeper简单使用
一、zookeeper的基本原理数据模型,如下:ZooKeeper数据模型的结构与Unix文件系统很类似,整体上可以看作是一棵树,每个节点称做一个ZNode。每个ZNode都可以通过其路径唯一标识,比如上图中第三层的第一个ZNode,它的路径是/app1/c1。在每个ZNode上可存储少量数据(默认是1M, 可以通过配置修改,通常不建议...
2024-01-10shiro并发人数登录控制的实现代码
在某些项目中可能会遇到如每个账户同时只能有一个人登录或几个人同时登录,如果同时有多人登录:要么不让后者登录;要么踢出前者登录(强制退出)。比如spring security就直接提供了相应的功能;Shiro的话没有提供默认实现,不过可以很容易的在Shiro中加入这个功能。 通过Shiro Filter机制扩展Kickout...
2024-01-10java 中模式匹配算法-KMP算法实例详解
java 中模式匹配算法-KMP算法实例详解朴素模式匹配算法的最大问题就是太低效了。于是三位前辈发表了一种KMP算法,其中三个字母分别是这三个人名的首字母大写。简单的说,KMP算法的对于主串的当前位置不回溯。也就是说,如果主串某次比较时,当前下标为i,i之前的字符和子串对应的字符匹配,那...
2024-01-10Eclipse安装Aptana插件(注意对应版本问题)
昨天,我同学用Eclipse安装Aptana插件,她弄了一天都没安装起,最后找了我。 然后我也按照她的那个方法安装,结果一样,安装不成功!网上很多安装教程都是不完整的,我也不知道为什么,可能这是国内一些安装教程的通病!就是没有注重版本号的对应!而且中间会漏写一些关键步骤!假如你出现...
2024-01-10Spring Boot中使用Actuator的/info端点输出Git版本信息
对于Spring Boot的Actuator模块相信大家已经不陌生了,尤其对于其中的/health、/metrics等强大端点已经不陌生(如您还不了解Actuator模块,建议先阅读《Spring Boot Actuator监控端点小结》)。但是,其中还有一个比较特殊的端点/info经常被大家所忽视,因为从最初的理解,它主要用来输出application.properties配置文...
2024-01-10Java中的对象流总结(必看篇)
Java中可以通过对象流将一个序列化的对象保存到硬盘中,或者硬盘中读取一个对象。对象流的存储和读取包含以下几点内容:1、所保存的对象必须实现Serializable接口。2、 所保存的对象的属性也必须实现Serializable接口。3、 最好要给该对象提供一个版本号,private static final long serialVersionId。下面是一...
2024-01-10Java语言实现简单FTP软件 FTP远程文件管理模块实现(10)
本文为大家分享了FTP远程文件管理模块的实现方法,供大家参考,具体内容如下首先看一下界面:1、远程FTP服务器端的文件列表的显示将远程的当前目录下所有文件显示出来,并显示文件的属性包括文件名、大小、日期、通过javax.swing.JTable()来显示具体的数据。更改当前文件目录会调用com.oyp.ftp.pane...
2024-01-10详解Spring AOP 拦截器的基本实现
一个程序猿在梦中解决的 Bug没有人是不做梦的,在所有梦的排行中,白日梦最令人伤感。不知道身为程序猿的大家,有没有睡了一觉,然后在梦中把睡之前代码中怎么也搞不定的 Bug 给解决的经历?反正我是有过。什么是 AOP ?AOP 为 Aspect Oriented Programming 的缩写,意为:面向切面编程,通过预编译方...
2024-01-10Java关于IO流的全面介绍
JDK提供的流继承了四大类:InputStream(字节输入流)、OutputStream(字节输出流)、Reader(字符输入流)、Writer(字符输出流)。字符流和字节流的主要区别:1、字节流读取的时候,读到一个字节就返回一个字节; 字符流使用了字节流读到一个或多个字节(中文对应的字节数是两个,在UTF-8码表中是3个字节)时。...
2024-01-10Java使用递归法解决汉诺塔问题的代码示例
汉诺(Hanoi)塔问题:古代有一个梵塔,塔内有三个座A、B、C,A座上有n个盘子,盘子大小不等,大的在下,小的在上(如图)。有一个和尚想把这n个盘子从A座移到B座,但每次只能允许移动一个盘子,并且在移动过程中,3个座上的盘子始终保持大盘在下,小盘在上。在移动过程中可以利用B座,要求...
2024-01-10MyBatis学习教程(五)-实现关联表查询方法详解
一、一对一关联 1.1、提出需求 根据班级id查询班级信息(带老师的信息)1.2、创建表和数据 创建一张教师表和班级表,这里我们假设一个老师只负责教一个班,那么老师和班级之间的关系就是一种一对一的关系。 CREATE TABLE teacher( t_id INT PRIMARY KEY AUTO_INCREMENT, t_name VARCHAR() ); CREATE TABLE ...
2024-01-10详解Android系统中的root权限获得原理
前言一直很好奇Android Root的原理,恰好最近碰到了一个跟Android默认带Root权限的问题,这里顺便记录一下Android系统root的原理。原理Android是基于Llinux内核的开源操作系统,与Ubuntu系统类似,所以在Android里获取root权限其实和在Linux系统下获取root权限是一回事。在Linux系统下获取root权限的方法是在命令...
2024-01-10eclipse配置javap命令的方法
javap命令常用来对java类文件来进行反编译,主要用来对java进行分析的工具,在学习Thinking in Java时,由于需要对类文件反编译,以查看jvm到底对我们写的代码做了哪些优化和处理,比如我看的使用+=对字符串进行拼接时,jvm的处理方式。废话不多说,下面直接带上配置的教程:点击菜单栏 Run ---> External ...
2024-01-10