
java
文章平均质量分 68
怪我冷i
这个作者很懒,什么都没留下…
展开
-
彻底解决win10系统Tomcat10控制台输出中文乱码
首先乱码问题的原因通俗的讲就是读的编码格式和写的解码格式不一致,比如最常见的两种中文编码UTF-8和GBK,UTF-8一个汉字占三个字节,GBK一个汉字占两个字节,所以当编码与解码格式不一致时,输出端当然无法识别这是啥,所以只能以乱码代替。值得一提的是GBK不是国家标准编码,常用的有两,一个是GB2312,一个是GB18030。原创 2024-09-08 01:00:00 · 958 阅读 · 0 评论 -
手把手带你写一个 MiniTomcat——代码篇
方法启动默认监听8080端口,如有需要可以提供配置到指定xml文件里;下如v1,v2,v3,v4每个代表一个版本。v1 简单的返回指定字符串。原创 2024-08-31 01:00:00 · 1108 阅读 · 0 评论 -
基于DDD领域驱动的电商履约案例实战
电商履约系统和周边各子域的映射关系。电商履约核心子域战术建模。电商履约完整流程分析。原创 2024-08-29 08:30:00 · 356 阅读 · 0 评论 -
vscode远程免密ssh原理与实操方法
SSH是一种加密协议,全称为Secure Shell,用于安全地远程登录到服务器或其他远程设备上执行命令或传输文件。它提供了一种安全的加密通信机制,使得远程登录和文件传输等操作不会被恶意攻击者窃取或篡改,确保了数据的保密性和完整性。SSH采用公钥密码学技术,能够有效地防止被中间人攻击或网络窃听。举例来说,如果我们要使用 Github 这种 git 代码托管平台的话,首先本地要生成一个 SSH和,然后将公钥填写到 Github 的 SSH Key 管理面板中。原创 2024-05-03 18:00:00 · 1364 阅读 · 0 评论 -
手把手带你写一个 MiniTomcat
MiniTomcat 的课程大体上分成四大块:HTTP Server、Connector、Container 和扩展部分。熟悉 Tomcat 的人想必更加清楚,Connector + Container 就是 Tomcat 的核心了。学习这些内容,会为进一步的研究打下良好的基础。原创 2024-04-21 00:00:00 · 754 阅读 · 0 评论 -
什么是JWT
【代码】什么是JWT。转载 2024-02-07 20:35:24 · 97 阅读 · 0 评论 -
git密码提交切换SSH提交
每次登录都要输入密码是显示繁琐,好在git提供了保存密码的功能。在本地工程文件夹下,.git目录,保存以下配置。或者在git bash命令行,执行命令如果希望全局保存,可以加--global参数。原创 2023-10-01 12:49:26 · 889 阅读 · 0 评论 -
Deepin20.4安装JDK17
Deepin安装JDK171.下载Sun版JDK压缩包(.tar.gz),选择其中的32/64位Linux版本。wget https://download.oracle.com/java/17/latest/jdk-17_linux-aarch64_bin.tar.gz2.将其解压缩:#解压sudo tar -zxvf ~/Downloads/jdk-17_linux-aarch64_bin.tar.gz -C /usr/lib#改名cd /usr/libsudo mv jdk-17.0.原创 2022-03-20 17:48:34 · 3061 阅读 · 1 评论 -
java打印文件树--排序版
java打印文件树–排序版DirectoryTreeByJava概述:List contents of directories in tree-like format.名称:java打印文件树与系统自带的tree命令的区别:多了一些排序使用方法:在windows或者Linux命令行输入如下命令,其中,java表示程序运行需要JRE支持,-jar是参数之一,不用变,hello.jar是软件名称,directories是目录名称,levelNumber是打印的深度。java原创 2021-08-17 12:02:09 · 355 阅读 · 0 评论 -
java2021面试题学习
蚂蚁金服三轮面试,四个小时灵魂拷问,结局我哭了本文来自作者投稿,作者是是双非院校科班研究生,Java开发3年工作经验,以下是他最近的面试总结:先说下我的面试准备经历,为了保证自己简历有较大一定的概率通过筛选,我在2018毕业后面试了多家公司,去了一家上海一家小公司一直工作到今年5月。和往年相比,今年的金三银四看上去不是那么顺利,可能和我的准备不足有关,但是令我惊讶的是第一家给我面试机会的公司竟然是阿里巴巴。一开始接到面试通知时,心情特别复杂,紧张又兴奋,阿里巴巴是出了名的深挖项目实战,实际上我项目部分原创 2021-06-28 11:26:51 · 250 阅读 · 0 评论 -
Visual Studio 2022高效实用技巧——跳出括号(包括Eclipse,IntelliJ Idea,vscode)
文章目录Visual Studio 2019高效实用技巧——跳出括号1.修改上下箭头2.修改左右箭头附:vscode 如何快速跳出括号附:Eclipse如何快速跳出括号附:IntelliJ Idea如何跳出括号参考资料Visual Studio 2019高效实用技巧——跳出括号我们都知道,Visual Studio可以自动补全括号,但是写到代码语句末尾,要跳出括号,还得向右下角方向移动一下,按右键→,再移手回来按分号;,再移到右下角,按↓向下键。这样手就脱离了键盘,降低了效率。我们可以把上下左右改成A原创 2021-02-21 10:43:26 · 13163 阅读 · 1 评论 -
oracle报错ORA-01843: not a valid month
客户端:select * from sys.nls_session_parameters;服务端:select * from sys.nls_database_parameters;执行脚本报错:ORA-01843: not a valid month确认问题:客户端nls_date_language为AMERICAN解决方案:修改nls_date_language参数为中文,成功导入11-5月 -18 10.56.50.139000 上午之类的数据。– 该命令只是当前会话有用ALTER SES原创 2021-02-18 21:28:31 · 1177 阅读 · 0 评论 -
leetcode.217. 存在重复元素(contains-duplicate)
存在重复元素(contains-duplicate)package contains_duplicate;import java.util.HashSet;import java.util.Set;public class Solution { public boolean containsDuplicate(int[] nums) { Set<Integer> s = new HashSet<Integer>(); for (int i原创 2020-12-13 01:24:14 · 230 阅读 · 1 评论 -
2020年12月份JAVA基础面试题(9题)
文章目录2020年JAVA基础面试题第1题,静态变量和实例变量的区别第2题,equals与==的区别第3题,抽象类与接口的区别第4题,实现多线程的方式有几种第5题,java容器有哪些第6题,list ,Map,Set的区别第7题,list ,Map,Set的子类有哪些第8题,线程池有几种类型第9题,自定义线程池的参数有哪些总结参考资料2020年JAVA基础面试题今年(2020年)因为疫情的原因倒毕的公司很多,培训机构越来越多,java初级工程师也越来越多,java的面试越来越难了,让我们再总结一下jav原创 2020-12-13 00:37:10 · 313 阅读 · 1 评论 -
javaIO与Linux IO的关系
javaIO与Linux IO的关系javaIO与Linux IO的关系,如图原创 2020-11-20 11:24:53 · 305 阅读 · 0 评论 -
java Stream打印二维数组
java Stream打印二维数组打印二维数组写两for循环或者找工具类多有不便,用Stream可以快速打印。 System.out.println("---打印对象---"); Stream.of(arr).forEach(System.out::println); System.out.println("---打印数组---"); Stream.of(arr).forEach(t->System.out.println(Arrays.toString(t)));原创 2020-11-09 10:18:28 · 1776 阅读 · 0 评论 -
java并发编程--- stop() 和 interrupt() 方法的主要区别
stop() 和 interrupt() 方法的主要区别---title: java并发编程--- stop() 和 interrupt() 方法的主要区别date: 2020-11-03 16:33:38---stop() 方法会真的杀死线程,不给线程喘息的机会,如果线程持有 ReentrantLock 锁,被 stop() 的线程并不会自动调用 ReentrantLock 的 unlock() 去释放锁,那其他线程就再也没机会获得 ReentrantLock 锁,这实在是太危险了。所以该方法原创 2020-11-03 16:40:44 · 1238 阅读 · 0 评论 -
leetcode.349. 两个数组的交集(intersection-of-two-arrays)
349. 两个数组的交集给定两个数组,编写一个函数来计算它们的交集。示例 1:输入:nums1 = [1,2,2,1], nums2 = [2,2]输出:[2]示例 2:输入:nums1 = [4,9,5], nums2 = [9,4,9,8,4]输出:[9,4]说明:输出结果中的每个元素一定是唯一的。我们可以不考虑输出结果的顺序。代码与思路把数组1放到map中,遍历数组还,判断map集合是否含有数组2的元素,如果有就放到set集合,最后把set集合转为整型数组。class原创 2020-11-02 12:59:28 · 181 阅读 · 0 评论 -
spring核心编程思想—如何注册一个Spring Bean
如何注册一个Spring Bean?答通过BeanDefinition和外部单体对象来注册代码public class SingletonBeanRegistrationDemo { public static void main(String[] args) throws InterruptedException { // 创建 BeanFactory 容器 AnnotationConfigApplicationContext applicationCon原创 2020-10-31 09:19:16 · 237 阅读 · 0 评论 -
spring核心编程思想—BeanFactory 与FactoryBean区别?
BeanFactory 与FactoryBean区别答:BeanFactory 是IoC 底层容器FactoryBean 是创建Bean 的一种方式,帮助实现复杂的初始化逻辑原创 2020-10-27 17:34:28 · 107 阅读 · 0 评论 -
spring核心编程思想—什么是Spring IoC 容器?
什么是Spring IoC 容器?答:Spring Framework implementation of the Inversion ofControl (IoC) principle. IoC is also known as dependencyinjection (DI). It is a process whereby objects define theirdependencies (that is, the other objects they work with) onlythro原创 2020-10-27 15:55:34 · 179 阅读 · 0 评论 -
115网盘视频播放速度调节
115网盘视频播放速度调节,找到video标签的html对应的id。设置一下就可以了。<video id="js-video" class="main-video" src="blob:https://v.anxia.com/jldkfjsldwer"></video>document.getElementById('js-video').playbackRate=0.8参考资料设置HTML5的video播放速度...原创 2020-10-27 09:48:34 · 2021 阅读 · 0 评论 -
win10操作系统Gogs配置解决ssh方式git免密下载上传问题
文章目录Gogs配置ssh1.gogs的custom配置文件confapp.ini配置2.配置hosts3.数据库4.点ssh文件夹的配置4.1生成私钥和公钥4.2配置config5.上传公钥6.测试其它win10 git ssh配置原文解决方法Gogs配置ssh说明,操作版本为gogs_0.12.1_windows_amd64。操作最好在Git Bash进行,先安装好Gogs,跑一次./gogs web命令生成配置文件,再来参考修改为本文的配置。1.gogs的custom配置文件confapp.原创 2020-10-27 03:20:30 · 4484 阅读 · 0 评论 -
leetcode.144.二叉树的前序遍历
leetcode.144.二叉树的前序遍历递归用递归的话,记住步骤。cppclass Solution {public: void preorder(TreeNode *root, vector<int> &res) { if (root == nullptr) { return; } res.push_back(root->val); preorder(root->le原创 2020-10-27 02:38:05 · 124 阅读 · 0 评论 -
idea工具(JetBrains)提交github过滤模板(包含RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio )
idea工具(JetBrains)提交github过滤模板idea工具(JetBrains)提交github过滤模板如下以下IDE都可以用 JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Android Studio and WebStorm。# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm, CLion, Andr原创 2020-10-26 22:26:56 · 387 阅读 · 1 评论 -
gogs使用nasm工具注册为windows服务
前提操作版本为:gogs_0.12.1_windows_amd64。前提想要使 Gogs 通过 Windows 服务的方式运行,必须满足以下两个条件:使用 minwinsvc 构建标签获得内置 Windows 服务支持。不使用 minwinsvc 构建标签并通过 NSSM 注册为服务。在注册成为服务之前,需要确保给予 Gogs 二进制相应目录的读写权限,包括存放仓库的根目录([repository] ROOT)。修改 C:\Gogs\custom\conf\app.ini 文件的相应信息:原创 2020-10-26 10:33:57 · 3720 阅读 · 1 评论 -
git 清除缓存-解决git添加ssh-key后免登陆未生效
git 清除缓存清除git缓存git config --local --unset credential.helpergit config --global --unset credential.helpergit config --system --unset credential.helper保存git缓存git config --global credential.helper store原创 2020-10-25 23:34:34 · 914 阅读 · 0 评论 -
常用 Git 命令清单
常用 Git 命令清单仓库# 在当前目录新建一个Git代码库$ git init# 新建一个目录,将其初始化为Git代码库$ git init [project-name]# 下载一个项目和它的整个代码历史$ git clone [url]配置# 显示当前的Git配置$ git config --list# 编辑Git配置文件$ git config -e [--global]# 设置提交代码时的用户信息$ git config [--global] user.n原创 2020-10-25 10:10:41 · 169 阅读 · 0 评论 -
leetcode.1024. 视频拼接
1024. 视频拼接你将会获得一系列视频片段,这些片段来自于一项持续时长为 T 秒的体育赛事。这些片段可能有所重叠,也可能长度不一。视频片段 clips[i] 都用区间进行表示:开始于 clips[i][0] 并于 clips[i][1] 结束。我们甚至可以对这些片段自由地再剪辑,例如片段 [0, 7] 可以剪切成 [0, 1] + [1, 3] + [3, 7] 三部分。我们需要将这些片段进行再剪辑,并将剪辑后的内容拼接成覆盖整个运动过程的片段([0, T])。返回所需片段的最小数目,如果无法完成该原创 2020-10-24 17:47:41 · 11288 阅读 · 0 评论 -
java并发编程——模拟英雄联盟加载进度
java模拟英雄联盟加载进度如下图代码如下 private static void test2() throws InterruptedException { AtomicInteger num = new AtomicInteger(0); ExecutorService service = Executors.newFixedThreadPool(10, (r) -> { return new Thread(r, "t" + n原创 2020-10-23 21:57:10 · 331 阅读 · 0 评论 -
Leetcode.234. 回文链表
234. 回文链表请判断一个链表是否为回文链表。示例 1:输入: 1->2输出: false示例 2:输入: 1->2->2->1输出: true进阶:你能否用 O(n) 时间复杂度和 O(1) 空间复杂度解决此题?思路找到前半部分链表的尾节点。反转后半部分链表。判断是否回文。恢复链表。返回结果。class Solution {public: bool isPalindrome(ListNode* head) { if原创 2020-10-23 01:35:21 · 119 阅读 · 0 评论 -
Leetcode.763. 划分字母区间
763. 划分字母区间字符串 S 由小写字母组成。我们要把这个字符串划分为尽可能多的片段,同一个字母只会出现在其中的一个片段。返回一个表示每个字符串片段的长度的列表。示例 1:输入:S = "ababcbacadefegdehijhklij"输出:[9,7,8]解释:划分结果为 "ababcbaca", "defegde", "hijhklij"。每个字母最多出现在一个片段中。像 "ababcbacadefegde", "hijhklij" 的划分是错误的,因为划分的片段数较少。示例 2原创 2020-10-22 11:25:35 · 104 阅读 · 0 评论 -
java并发编程---ReentrantLock公平锁实现原理
文章目录java并发编程---ReentrantLock公平锁实现原理先看非公平锁公平锁的实现java并发编程—ReentrantLock公平锁实现原理先看非公平锁static final class NonfairSync extends Sync { final void lock() { if (compareAndSetState(0, 1))...原创 2020-10-21 16:34:53 · 365 阅读 · 1 评论 -
java并发编程——Fork/Join
Fork/JoinFork/Join 是 JDK 1.7 加入的新的线程池实现,它体现的是一种分治思想,适用于能够进行任务拆分的 cpu 密集型运算。所谓的任务拆分,是将一个大任务拆分为算法上相同的小任务,直至不能拆分可以直接求解。跟递归相关的一些计算,如归并排序、斐波那契数列、都可以用分治思想进行求解。Fork/Join 在分治的基础上加入了多线程,可以把每个任务的分解和合并交给不同的线程来完成,进一步提升了运算效率。Fork/Join 默认会创建与 cpu 核心数大小相同的线程池。例子原创 2020-10-21 12:52:15 · 275 阅读 · 0 评论 -
spring5源码阅读环境搭建
D:\javaCode\javaCodeWin2020Spring\Spring-Framework-v5.2.3.RELEASE\Spring-Framework>gradlew :spring-oxm:compileTestJavaStarting a Gradle Daemon (subsequent builds will be faster)> Task :spring...原创 2020-10-19 23:12:29 · 1005 阅读 · 2 评论 -
java并发编程——同步模式之顺序控制
同步模式之顺序控制(面试经常考)比如,必须先 2 后 1 打印1.1 wait notify 版package cn.itcast.test;import lombok.extern.slf4j.Slf4j;@Slf4j(topic = "c.Test25")public class Test25 { static final Object lock = new Object(); // 表示 t2 是否运行过 static boolean t2runned = fa原创 2020-10-19 12:45:37 · 242 阅读 · 0 评论 -
java并发编程——同步模式之Balking
同步模式之BalkingBalking (犹豫)模式用在一个线程发现另一个线程或本线程已经做了某一件相同的事,那么本线程就无需再做了,直接结束返回public class MonitorService { // 用来表示是否已经有线程已经在执行启动了 private volatile boolean starting; public void start() { log.info("尝试启动监控线程..."); synchronized (this) { if (startin原创 2020-10-19 12:17:12 · 155 阅读 · 0 评论 -
java并发编程——异步模式之生产者/消费者
异步模式之生产者/消费者与前面的保护性暂停中的 GuardObject 不同,不需要产生结果和消费结果的线程一一对应消费队列可以用来平衡生产和消费的线程资源生产者仅负责产生结果数据,不关心数据该如何处理,而消费者专心处理结果数据消息队列是有容量限制的,满时不会再加入数据,空时不会再消耗数据JDK 中各种阻塞队列,采用的就是这种模式说明,t1,t2,t3是生产者,t4是消费者,这里的t4不一定是一个,有可能是多个。实现import lombok.extern.slf4j.Slf4j;i原创 2020-10-19 11:27:58 · 460 阅读 · 1 评论 -
云IDE多语言编辑器(Eclipse Theia)
Eclipse Theia云IDE多语言编辑器官网:https://theia-ide.org在线体验:https://gitpod.io/#https://github.com/eclipse-theia/theia概述Cloud & Desktop IDE PlatformEclipse Theia is an extensible platform to develop multi-language Cloud & Desktop IDEs with state-of-the原创 2020-10-19 10:57:26 · 1567 阅读 · 1 评论 -
java并发编程——同步模式之保护性暂停
同步模式之保护性暂停例如,主线程等待子线程下载的结果。import lombok.extern.slf4j.Slf4j;import java.io.IOException;import java.util.List;import static cn.itcast.pattern.Downloader.*;@Slf4j(topic = "c.TestGuardedObject")public class TestGuardedObject { public static void原创 2020-10-18 23:40:51 · 375 阅读 · 0 评论