Java
有关于JAVA的一些基础知识
CrAcKeR-1
伸手摘星,即使徒劳无功,亦不至满手污泥。
展开
-
项目部署在Windows,Nginx在Linux无法反向代理的问题
折腾许久,找到原因:192.168.0.106 也就是 Windows 这台机器的防火墙拦截了局域网内的请求。需要开启防火墙,减弱安全防护并配置入站和出站规则。现配置 nginx.conf 反向代理:proxy_pass http://192.168.0.106:8201。Nginx服务器部署在Linux虚拟机中,ip地址为:http://192.168.0.103:9001。项目部署在windows,ip地址为:http://192.168.0.106:8201。原创 2023-01-04 15:37:08 · 629 阅读 · 1 评论 -
使用 JackSon 报 500 错误...
使用 Jackson 无法直接使用,因为会说 ObjectMapper 不存在,为啥捏?因为你的 Artifacts 中并没有引入 Jackson 依赖,当你在 pom.xml 中引入了新的依赖之后呢,你需要 ctrl + shift + alt + s ---> 然后找到 Artifact 然后将依赖右键选择 put into /WEB-INF/lib然后重启应用,否则你这个 ObjectMapper 是找不到的。原创 2022-11-12 03:44:21 · 360 阅读 · 0 评论 -
Redis 哨兵模式网络问题:Unable Connect
Redis 哨兵模式网络问题:Unable Connect原创 2022-08-27 21:27:43 · 1417 阅读 · 1 评论 -
Caused by: java.lang.IllegalStateException: Incompatible fallbackFactory instance. Fallback/fallback
Caused by: java.lang.IllegalStateException: Incompatible fallbackFactory instance. Fallback/fallbackFactory of type class com.kk.clients.fallbackfactory.UserClientFallbackFactory is not assignable to interface org.springframework.cloud.openfeign.FallbackFa原创 2022-08-23 12:29:21 · 965 阅读 · 0 评论 -
Springboot拦截器不生效的问题
1. @Component 和 @Confuguration 都已经写好2. 实现 WebMvcConfigurer 接口的实现类也已经写好,并且在添加拦截器的地方没使用 new 对象的方式3. addPathPatterns 配置为:"/admin/**",excludePathPatterns 配置为:"/admin/login", "/admin.newError"4. 在 application.yaml 主配置文件中配置的路径是:"/admin"5. HandlerIntercep原创 2022-01-07 16:23:10 · 1212 阅读 · 0 评论 -
启动SpringBoot后target没有yaml配置文件导致的Bug
Bug复现:nested exception is org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Failed to determine a suitable driver class起初一直以为是配置文件本身的问题,直到看到target没有该yaml文件,以前一直都是只引入src/main/java中的内容,并无引入resources文件夹中原创 2022-01-07 14:52:12 · 4286 阅读 · 3 评论 -
Error creating bean with name ‘org.springframework.cache.interceptor.CacheInterceptor#0‘
造成该错误的原因可能有:1. JDK 版本不对2. springmvc的配置文件<mvc:annotation-driven>或者<context:component-scan>引入属性不对能改即可原创 2021-11-08 17:11:41 · 418 阅读 · 0 评论 -
Exception in thread “main“ org.springframework.beans.factory.BeanCreationException: Error creating
起初一直以为是配置文件或者代码写错了,但是一直没有找到方法,后面尝试点击:Edit-Configuration发现我的JDK版本怎么是16!!!遂改成1.8版本【可能是我在创建项目的时候选择了默认版本。。。】然后就这样解决掉了这个bug,日后一定注意使用的工具和JDK版本是否对应......原创 2021-11-08 12:07:51 · 1068 阅读 · 0 评论 -
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of ty
报错信息如下:Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No qualifying bean of type 'com.xxx.service.AdminService' available: expected at least 1 bean which qualifies as autowire candidate. Dependency annotations: {@org.springfr原创 2021-10-22 17:20:11 · 2475 阅读 · 3 评论 -
有关线程的其它方法
isAlive():表示线程是否还活着currentThread():当前线程setName()、getName():代理名称package Thread;/** * 测试线程其它方法 * @author Administrator * */public class MyInfoTest { public static void main(String[] args...原创 2019-04-18 19:20:55 · 156 阅读 · 0 评论 -
Java实现--归并排序(递归)
《Java数据结构和算法》如此描述分治算法:把一个大问题分成两个相对来说更小的问题,并且分别解决每一个小问题,对每一个小问题的解决方案是一样的:把每个小问题分成两个更小的问题,并且解决它们。这个过程一直持续小去知道达到易于求解的基值情况,就不用再继续分了。时间复杂度:O(N*log2N)首先我们是先归并两个有序数组,归并流程如下:代码如下:/** * 归并算法...原创 2018-10-11 11:43:44 · 1381 阅读 · 0 评论 -
笑谈模拟递归
摘自《Java数据结构和算法》: 递归和栈之间有一种紧密的联系。事实上,大部分的编译器都是使用栈来实现递归的。正如我们曾提到过的,当调用一个方法的时候,编译器会把这个方法的所有参数及其返回地址(这个方法返回时到达的地方)都压入栈中,然后把控制转移给这个方法。当这个方法返回的时候,这些值退栈。参数消失了,并且控制权重新回到返回地址处。大家应该都知道高斯的故事,说是有一天他的...原创 2018-10-12 12:48:52 · 548 阅读 · 0 评论 -
递归实现乘方,最简单类型背包问题,组合
目录 乘方问题 背包问题 组合 乘方问题 import java.util.Scanner;/** * 递归实现乘方问题 * @author Administrator * */public class Pow{ @SuppressWarnings("resource") public static void main(String[] args)...原创 2018-10-15 16:45:33 · 623 阅读 · 0 评论 -
Scanner、BufferedReader、InputStreamReader等的区别
Scanner是一个可以使用正则表达式来分析基本类型和字符串的简单文本扫描器!也就是控制台应用程序最为常用的文本输入方式!Scanner取得输入数据的依据是空格符:如按下空格键,Tab键或者Enter键,Scanner就会返回下一个输入。所以说Scanner不能输入空格,如果你希望取得含有空格的字符串BufferedReader可以做到。 InputStream、OutputStream...转载 2018-10-05 19:01:28 · 778 阅读 · 0 评论 -
递归实现Josephus问题
Josephus问题是古代一个著名的数学难题。围绕这个问题有很多故事。 其种一个说Josephus是一群被罗马人抓获的犹太人中的一个,为了不被奴役,他们选择了自杀。 他们排成一个圆圈,从某个人开始,沿着圆圈计数。每报第n个数的人就要离开圆圈去自杀。但是Josephus不想死,他想活下来,所以他制定了规则,以使他称为最后一个离开圆圈的人(最后一个离开表示其他人都出圈去自杀了,他就活下来了)。 如果...原创 2018-10-06 17:55:58 · 876 阅读 · 1 评论 -
递归实现排列
先给大家讲一个故事:这是一个风云变幻的时代,几个字母争先恐后的抢着做老大,但是姜还是老的辣,经过一番折腾,最后的最后,几个字母还是回到最初的样子,坐回他们原来的位置,一起干回他们原来的事情——(构成一个完整的"单词"),老大还是那个老大...(啊...真是一个有趣的故事...手动滑稽) 为了让大家更好的理解,我将4个字母构成的单词(不一定是真正的单词,只要由四个字母构成,我们在...原创 2018-10-08 17:55:55 · 757 阅读 · 0 评论 -
(附素材)飞机大战
public class Constant { public static final int GAME_WIDTH = 400; public static final int GAME_HEIGHT = 400;}import java.awt.*;/** * 爆炸类 * @author Administrator * */public class Explode...原创 2018-09-20 17:17:21 · 28920 阅读 · 12 评论 -
Java实现--链表栈
用链表实现栈:其实就只是换了个名字,包装起来而已,没什么新的东西。注:这里插入结点的方法应为在头部插入结点(与输入的值逆置),这样构成的才是栈关于定义链表可以查看我的另一篇博文https://blog.csdn.net/szlg510027010/article/details/82862965/** * 用链表实现栈 * @author Administrator *...原创 2018-09-27 18:18:34 · 382 阅读 · 0 评论 -
Java实现--链表队列
用链表实现队列的操作,其实质就是把双端队列包装一下,包装成队列而已,其实质用到的是双端队列的两个方法,第一个方法是insertLast(int data),这是队列的插入操作,另外一个remove()操作,用到的是deleteFirst()方法,将这两个方法包装一下就成了队列。以下为完整地代码:/** * 定义一个结点类 * @author Administrator * */...原创 2018-09-27 22:31:16 · 203 阅读 · 0 评论 -
Java实现--有序链表
《Java数据结构和算法》有感而出,最好自己先尝试实现一遍。 代码中有详细的注释:/** * 定义一个结点类 * @author Administrator * */public class Link { public int data; //数据域 public Link next; //指向下一个结点 public Link(int data) { super...原创 2018-09-28 23:36:25 · 3044 阅读 · 1 评论 -
Java实现--双向链表
为什么要构造双向链表呢?有什么用呢?《Java数据结构和算法》一书给出了一个例子回答了这两个问题:“假设一个文本编辑器用链表来存储文本。屏幕上的每一行文字作为一个String对象存储在链结点中。当编辑器用户乡下移动光标时,程序移到下一个链结点操纵或显示新的一行。但是如果用户向上移动光标会发生什么呢?在普通的链表中,需要current变量(或起同等作用的其它变量)调回到表头,再一步一步地向后走到...原创 2018-09-29 12:14:17 · 6712 阅读 · 6 评论 -
Java实现--链表迭代器
其实刚刚接触链表迭代器的时候并不知道这个有什么用,直到今天把链表迭代器的代码敲了两三遍,将里面的内容理解透彻了以后,才发现原来链表迭代器真的有很大用处,效率高是迭代器的一大优势。当我们需要在特定结点前面插入或者删除甚至修改该结点的值即data域的时候就会显得相当有用,若没有迭代器,只是一个普通的链表,当我们需要获取特定结点的,比如说第一个第二个或者第三个,我们又要从头开始遍历链表,并且还要引入一...原创 2018-10-05 18:53:57 · 1382 阅读 · 0 评论 -
Java实现--单链表
在链表的环境中,很容易堆“引用”产生混淆。在Link的类定义中定义以个Link类型的域,这看起来很奇怪。编译器怎样才能不混淆呢?编译器在不知道一个Link对象占多大空间的情况下,如何能知道一个包含了相同对象的Link对象占用多大空间呢?其实,Link对象并没有真正包含另外一个Link对象,学过C语言或者C++的同学知道,其实这就类似于指针,该引用只是一个堆某个对象的参照数值,...原创 2018-09-27 10:07:49 · 191 阅读 · 0 评论 -
Java实现--双端链表
其实跟C语言创建单链表,尾部插入结点操作的是一样的,本质上是一样的双端链表与传统的链表非常相似,但是他有一个新增的特性:即对最后一个链结点的引用,就像对第一个链结点的引用一样。对最后一个链结点的引用允许像在表头一样,在表尾直接插入一个链结点。 当然,仍然可以在普通的单链表表尾插入一个链结点,方法是遍历整个链表知道到达表尾,但是这种方法效率很低。像访问表头一样访问表尾的特性,使双端链表更适合于...原创 2018-09-27 17:16:42 · 453 阅读 · 0 评论 -
(详细注释)Java实现--表达式之中缀转后缀并计算
自打遇到栈,一直都想些写一篇通俗易懂的将中缀表达式转化为后缀表达式的博文,今天总算完成了这个心愿。 所有的解释在代码行里面均有解释。有什么不懂的可以在评论区或者私信我。 为了不用一直拉动代码行看注释(这回很麻烦也很浪费时间),本人将较长的注释分成了两行。写在前面: 后缀表达式:波兰逆序数,将中缀表达式转换成后缀表达式不用做算数运算,它不求中缀表达式的值...原创 2018-09-20 16:24:50 · 1107 阅读 · 1 评论 -
Java实现--优先级队列
《Java数据结构和算法》-->像栈和队列一样,优先级队列也经常用作程序员的编程工具。 很多情况下需要访问具有最小关键字的项或者是最大关键字的项,,具有最高或最小的关键字具有最高的优先级。我们就可以采用优先级队列。这里使用的是简单的数组来实现优先级队列,这种实现方法插入比较慢,但是它比较简单,适用于数据量比较小的并且不是特别在意插入速度的情况。有一种比数组要快的,就是使用堆来建立优先级...原创 2018-09-18 20:07:11 · 976 阅读 · 0 评论 -
Java实现--栈
今天初步学习了栈,在《Java数据结构和算法》中如此描述到:我们将栈和队列作为程序员的工具来运用,主要作为构思算法的辅助工具,而不是完全的存储工具,栈和队列的访问时受限制的,即在特定的时刻只有一个数据项可以被读取或删除[这是理论上的不允许多个访问,除非作弊]栈:存储数据的时候采用的方法是“后进先出法”(普及一下:这在财务报表中存货计量中也有)当我存储一个数据的时候,我们都是在最顶层插入的。...原创 2018-09-13 22:57:31 · 258 阅读 · 0 评论 -
Java实现--队列
昨天风王“山竹”肆虐大片土地...今天还在不断下雨进入正题吧。今天学习的是队列,跟栈(LIFO)不同,队列采用的是先进先出(FIFO)的模式,个人认为,其实队列跟栈都是比较简单的,我们定义了两个指针变量,一个是队首(front),另外一个就是队尾(rear),为了更统一的理解,我们把队列里面的一个个元素(在这里是数字),当做现实世界中一个个的人。讲最重要的两个操作,insert操作和remov...原创 2018-09-17 17:40:41 · 1553 阅读 · 0 评论 -
Java实现--奇偶排序
《Java数据结构和算法》中写道:奇偶排序实际上在多处理器环境中很有用,处理器可以分别同时处理每一个奇数对,然后又同时处理偶数对。因为奇数对是彼此独立的,每一刻都可以用不同的处理器比较和交换。这样可以非常快速地排序。 撅个栗子:.............................................这样一直按偶数排序一次,奇数排序一次,直到.........原创 2018-09-12 22:59:18 · 1235 阅读 · 0 评论 -
Java实现--插入排序
尽量写得通俗易懂些~ 今早学习的内容有插入排序,之前看到插入排序没认真去分析,今日一看,还挺有意思的,联想到了实际生活上面就会感到很意思。插入排序是有个前提的,就是我们每次要插入一个数的时候,都必须在一个有序数列进行。写到这里,从来没有看过插入排序的童鞋可能会产生这样的一个疑问:都有序序列了,还排它个大头鬼哦。且慢,让我们看看下面这个例子。 小伙伴们长这么大应该都...原创 2018-09-11 23:55:39 · 120 阅读 · 0 评论 -
Java实现--对象排序
将我们之前所学的插入排序应用到实际生活中去,完成一个对象的排序,这里定义一个Person类,按姓名的字母来排列。首先我们自定义一个Person类:/** * 定义一个Person类 * @author Administrator * */public class Person { private int age; private String name; public...原创 2018-09-12 22:15:10 · 579 阅读 · 0 评论 -
编码格式介绍
转发:http://blog.jobbole.com/30526/来源:潜行者m 的博客编码一直是让新手头疼的问题,特别是 GBK、GB2312、UTF-8 这三个比较常见的网页编码的区别,更是让许多新手晕头转向,怎么解释也解释不清楚。但是编码又是那么重要,特别在网页这一块。如果你打出来的不是乱码,而网页中出现了乱码,绝大部分原因就出在了编码上了。此外除了乱码之外,还会出现一些其他问题(例...转载 2018-09-08 09:28:03 · 173 阅读 · 0 评论 -
Java实现--冒泡排序(优化)
public class BubbleSort { public static void main(String[] args) { int[] a = {0,55,44,33,22,11}; int n=5; int k;//用于交换 int b; int all = n;//(由于下面要对n进行操作,这里需要方便输出) for(i...原创 2018-09-10 17:20:13 · 494 阅读 · 0 评论 -
Java实现--选择排序
public class SelectSort { public static void main(String[] args) { int[] a = {9,8,7,6,5,4,3,2,1,0}; int n=10; int change; for(int num:a) System.out.print(num+" "); System.out.prin...原创 2018-09-10 18:33:12 · 98 阅读 · 0 评论 -
Java学习总结
虽然今天是周末,但是趁现在有时间,坚持写博客,很喜欢一句英文---Today I'll do what others won't,so tomorrow i can accomplish what other can't.如果谁能看到这句话的话,共勉。学习Java已经有一段时间了,该掌握的基础知识、语法也已经掌握的差不多了,于是乎开始往更深层次的方向走->数据结构和算法,虽然可能...原创 2018-09-09 16:23:16 · 460 阅读 · 0 评论 -
编码解码乱码字符集
编码EnCode:将字符转化为字节解码DeCode:将字节转化为字符乱码:打个比方---比较多人知道的联通 用字符集GBK的时候出现这样的情况:��ͨ,这就是乱码常见的中文字符集有:GBK 和 UTF-8国际上常用的字符集:Unicode(大字典)、ANSI UTF-8,中文占三个字节,英文占一个字节(变长),还有定长占两个字节(耗费空间多)GBK,中文占两个zijie...原创 2018-09-08 10:04:50 · 4003 阅读 · 0 评论 -
显示目录(递归法)
用递归法显示子目录,下面给出代码即结果:import java.io.File;/** * 利用递归来显示文件夹 包括子目录等 * @author Administrator * */public class TestFD { public static void main(String[] args) { File src = new File("D:/Eclipse...原创 2018-09-07 18:03:57 · 673 阅读 · 0 评论 -
显示文件字节数(递归法)
import java.io.File;/** * 递归法显示文件夹的字节数 * @author Administrator * */public class Test00 { private static long len; public static void main(String[] args) { File src = new File("D:/Eclipse/M...原创 2018-09-07 18:30:13 · 245 阅读 · 0 评论 -
显示文件夹和文件个数(递归法)
import java.io.File;/** * 利用递归法得到文件夹和文件个数 * @author Administrator * */public class TestSize { private int fileSize; private int dirSize = -1; private long len; private File src; private S...原创 2018-09-07 19:14:49 · 441 阅读 · 0 评论 -
File类详细使用说明
在Java里面我们可以使用编辑器内置的方式,当我Copy进去的时候,Eclipse会自动帮我们加入转义符\,下面为两种表达形式:"D:\\Eclipse\\MyPro22\\timg.jpg""D:/Eclipse/MyPro22/timg.jpg" 这两种表达形式都是被允许的。我们在创立File对象的时候可以有三种方式:(与构造器有关)File(String nam...原创 2018-09-06 16:47:09 · 309 阅读 · 0 评论