- 博客(19)
- 收藏
- 关注
原创 Windows ssh-copy-id : 无法将“ssh-copy-id”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。
问题:ssh-copy-id : 无法将“ssh-copy-id”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。解决办法在终端先执行以下内容:function ssh-copy-id([string]$userAtMachine, $args){ $publicKey = "$ENV:USERPROFILE" + "/.ssh/id_rsa.pub" if (!(Test-Path "$publicKey")){ Write-Error "ERROR
2021-11-29 01:12:38
7763
原创 设计模式 4:工厂方法模式
在《简单工厂模式》一节我们介绍了简单工厂模式,提到了简单工厂模式违背了开闭原则,而“工厂方法模式”是对简单工厂模式的进一步抽象化,其好处是可以使系统在不修改原来代码的情况下引进新的产品,即满足开闭原则。1. 工厂方法模式的优缺点优点:用户只需要知道具体工厂的名称就可得到所要的产品,无须知道产品的具体创建过程。灵活性增强,对于新产品的创建,只需多写一个相应的工厂类。典型的解耦框架。高层模块只需要知道产品的抽象类,无须关心其他实现类,满足迪米特法则、依赖倒置原则和里氏替换原则。缺点:类的个数
2021-10-24 23:37:40
319
原创 设计模式 3:简单工厂模式
在日常开发中,凡是需要生成复杂对象的地方,都可以尝试考虑使用工厂模式来代替。注意:上述复杂对象指的是类的构造函数参数过多等对类的构造有影响的情况,因为类的构造过于复杂,如果直接在其他业务类内使用,则两者的耦合过重,后续业务更改,就需要在任何引用该类的源代码内进行更改,光是查找所有依赖就很消耗时间了,更别说要一个一个修改了。工厂模式的定义:定义一个创建产品的接口,将产品的实际创建工作延迟到具体子工厂类当中。这满足创建模式中所要求的“创建与使用相分离”的特点。按实际业务场景划分,工厂模式有 3 种不同
2021-10-24 22:47:27
137
原创 设计模式 2:原型模式
1. 原型模式的定义与特点原型(Prototype)模式的定义如下:用一个已经创建的实例作为原型,通过复制该原型对象来创建一个和原型相同或相似的新对象。在这里,原型实例指定了要创建的对象的种类。用这种方式创建对象非常高效,根本无须知道对象创建的细节。例如,Windows 操作系统的安装通常较耗时,如果复制就快了很多。在生活中复制的例子非常多,这里不一一列举了。原型模式的优点:Java 自带的原型模式基于内存二进制流的复制,在性能上比直接 new 一个对象更加优良。可以使用深克隆方式保存对象的状态,
2021-10-23 23:04:14
246
原创 设计模式:1. 单例模式
文章目录1. 单例模式的定义与特点2. 单例模式的优点和缺点3. 单例模式的应用场景4. 单例模式的结构与实现4.1. 单例模式的结构4.2. 单例模式的实现5. 单例模式的应用实例1. 单例模式的定义与特点单例(Singleton)模式的定义:指一个类只有一个实例,且该类能自行创建这个实例的一种模式。例如,Windows 中只能打开一个任务管理器,这样可以避免因打开多个任务管理器窗口而造成内存资源的浪费,或出现各个窗口显示内容的不一致等错误。单例模式有 3 个特点:单例类只有一个实例对象该单例
2021-10-21 00:01:41
159
原创 Spock + PowerMock 模拟静态方法报错 java.lang.ClassCastException
问题:在用Spock + PowerMock 模拟静态方法时,遇到如下报错:javax.xml.parsers.FactoryConfigurationError: Provider com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl could not be instantiated: java.lang.ClassCastException: com.sun.org.apache.xerces.internal.jax
2021-10-18 00:29:55
719
原创 LeetCode23: 合并K个升序链表
合并K个升序链表问题描述:给你一个链表数组,每个链表都已经按升序排列。请你将所有链表合并到一个升序链表中,返回合并后的链表。合并k个有序链表,与合并两个有序列表类似,但是难点在于如何快速得到k个链表中的最小节点。为了快速得到k个链表中的最小节点,可以使用优先级队列class Solution { public ListNode mergeKLists(ListNode[] lists) { if (lists.length == 0) { ..
2021-09-28 00:38:22
90
原创 Leetcode 21: 合并两个有序列表
Leetcode 21: 合并两个有序列表问题描述:将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。创建一个虚拟头节点 dummy(重点)wihle 循环每次比较 p1 和 p2 的大小,把较小的节点接到新链表上/** * Definition for singly-linked list. * public class ListNode { * int val; * ListNode next; * List.
2021-09-27 09:51:23
58
原创 Java 动态代理实例
package priv.xgw.annotation.rest;import java.lang.reflect.InvocationHandler;import java.lang.reflect.Method;import java.lang.reflect.Proxy;public class Main { public static void main(String[] args) { InvocationHandler handler = new Invoca
2021-04-19 23:15:40
73
原创 Java串口通信操作 RXTX 依赖包
令我非常郁闷的是明明这个技术官方是开源的,网上却有很多人拿过来需要积分下载,希望大家不要再纵容这种行为。以下链接中有 Windows32 位、Windows64 位、Linux 三种版本,需要的同学可以自行下载~RXTX依赖包下载地址使用方法如下:拷贝 RXTXcomm.jar 到 <JAVA_HOME>\jre\lib\ext目录中;拷贝 rxtxSerial.dll 到 <JAVA_HOME>\jre\bin目录中;拷贝 rxtxParallel.dll 到 <
2021-04-05 20:45:18
843
1
原创 UDP 实现聊天室功能
原文地址发送消息端package top.xvgenwen;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStreamReader;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.InetSocketAddress;import java.net.SocketExcept
2021-04-03 10:49:49
158
原创 Typora 使用教程
原文地址Typora 是一款支持实时预览的 Markdown 文本编辑器,拥有 macOS、Windows、Linux 三个系统版本,并且是完全免费的。官网下载地址常用语法使用教程:目录@[toc]标题# 一级标题 ## 二级标题 ### 三级标题 #### 四级标题 ##### 五级标题 ###### 六级标题 引用> 一级引用>> 二级引用代码` `
2021-04-02 20:37:45
731
原创 前端 JavaScript 提取 JSON 数据
原文地址假如我们从后端接收到了以下数据:{"id":1, "name":"Xu Albter", "age":"18"}使用 JSON.parse()方法处理以上数据,将其转换为 JavaScript 对象:var obj = JSON.parse('{"id":1, "name":"Xu Albter", "age":"18"}');然后我们便可以通过以下方式取出属性值了obj.id //取出 id 值obj.name //取出 name 值obj.age //取出 age 值
2021-04-02 19:53:36
2806
1
原创 WordPress 插件 Code Snippets 轻松帮你插入 PHP 代码段
欢迎大家访问原文:原文地址Code Snippets 插件可以很方便的帮助你将 PHP 代码片段插入网站,不需要再将自定义片段添加到主题 functions.php 文件中。Code Snippets 提供了类似于“插件”菜单的图形界面,用于管理代码段。片段可以像插件一样被激活和停用。片段编辑器包括名称字段,启用可视编辑器的描述,允许您对片段进行分类的标记以及功能齐全的代码编辑器。下载链接在原文中,有需要的小伙伴可以直接点击下载。**注意:**如果网站被添加的错误代码片段弄崩溃了,那么我们该如何去修
2021-04-01 13:30:07
591
原创 第一个 Mybatis 程序
程序结构图如下:创建数据库 mybatis,并创建user表,插入测试数据create database mybatis;use mybatis;create table user( id int primary key, name varchar(20) default null, age integer default null)engine = innodb default charset = utf8;insert into user(id, name
2021-03-31 21:53:29
61
原创 MacOS 安装 JDK1.8
原文地址概述这篇文章主要为在 MacOS 系统上安装 JDK1.8 提供帮助。步骤如下:下载 JDK1.8 安装包点击安装包进行安装配置环境变量验证 JDK 是否安装成功1、JDK下载1.1 Oracle官网下载官网下载链接,下载如下图所示安装包1.2 百度网盘下载因为官网下载需要注册账号,比较繁琐,所以我下载好了放在网盘中,有需要的同学可以自行下载~百度网盘地址 提取码: 4t262、软件包安装双击下载好了的 .dmg 软件包,按下图操作,安装完毕即可。3、配
2021-03-31 15:31:13
708
1
原创 找到更多的这样的整数:一些相续正整数的立方和正好等于另一个整数的立方。
package Two;import java.util.Scanner;public class Solution { public static void main(String[] args) { Find(); } private static void Find() { //此方法将会找出你给定数字上限以下所有符合条件相续整数的立方 System.out.prin...
2019-09-17 12:47:47
505
原创 Maven Build时显示【ERROR】不再支持源选项5。请使用7或更高版本。
解决办法1(暂时性解决)在pom.xml文件中添加jdk版本说明,我的jdk版本是1.8,所以添加时根据自己的jdk版本进行修改。<properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <maven.compiler....
2019-09-14 22:50:39
15350
12
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人