![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
JAVA
文章平均质量分 65
昵称也叫用户名
这个作者很懒,什么都没留下…
展开
-
Centos安装JDK
JDK下载下载地址:https://www.oracle.com/java/technologies/javase-downloads.html注:下载JDK8需要登录Oracle需要登录账号,布线麻烦的可以自己注册一个,不想注册的可以使用如下账号账号:2696671285@qq.com密码:Oracle123该账号来源于网络,如有侵权联系删除上传并解压JDKcd /hometar -zxvf jdk-8u301-linux-x64.tar.gz配置环境变量1、使原创 2021-08-29 12:12:12 · 279 阅读 · 0 评论 -
Java实现冒泡排序
想不起来冒泡排序怎写的了,再写个笔记记录一下冒泡排序的原理就是第一位和第二位比较大小,然后交换数字,第二位和第三位比较大小再交换数字,直到n-1的时候,整个排序就执行完毕。import java.util.Arrays;/** * @author Y * 冒泡排序 */public class Main { public static void main(String[] args) { // 数字6,3,8,2,9,1用冒泡排序进行从小到大的排序 .原创 2021-06-13 21:51:48 · 122 阅读 · 0 评论 -
WebSocket实现在线聊天
WebSocket实现在线聊天前两天在公司接到一个需求,使用WebSocket实现微信扫码登陆,当时了解了一下WebSocket,都说WebSocket可以实现在线聊天,所以我自己也写了一个。(发个帖子证明我还活着????)简单介绍下什么是WebSocket。我们的都知道,前端向后端发起请求一般都是使用的Http协议,但是呢Http协议有一个不好的地方那就是,只能由客户端主动发起请求,服务器收到客户端的请求后才会返回结果数据。这种单向请求的特点,就造就了一个问题,如果服务器端数据发生了变化,客户原创 2021-05-13 12:44:18 · 1661 阅读 · 3 评论 -
结合Redis和MySQL实现的Gateway动态路由
Gateway动态路由What?前端时间买了个服务器,没怎么用,就跑了个在线获取IdeaCode的程序。使用率不怎么高,这次准备在跑一个Gateway网关,以后就把我所有的程序都接入到网关里。但是以前网关里的路由都是硬编码的形式写到配置文件里的,这就意味着我每发布一个程序都要重新打包部署一下网关。程序猿的存在就是解决一些需要频繁操作的事件,所以要想办法解决硬编码路由的问题,所以我写了本篇Gateway动态路由。思路Gateway的路由配置有两种方式,一种是通过配置文件配置,一种是通过代码配置。我准原创 2020-11-29 21:04:51 · 626 阅读 · 0 评论 -
Gateway负载均衡及集群搭建
Gateway负载均衡及集群搭建注:本文写的是Gateway的负载均衡及集群的搭建,Gateway的使用不在本文中介绍。Gateway-负载均衡负载均衡,英文名称为Load Balance,其含义就是指将负载(工作任务)进行平衡、分摊到多个操作单元上进行运行,例如FTP服务器、Web服务器、企业核心应用服务器和其它主要任务服务器等,从而协同完成工作任务。准备Nacos:1.3.1JDK版本:1.8系统:Win10一、创建Gateway项目这里不在详细说明Gateway的创建。最简单原创 2020-11-15 18:02:59 · 15524 阅读 · 2 评论 -
Win10-Nacos集群部署
Win10-Nacos集群部署因为工作需要用到Nacos集群部署,所以在此记录下Nacos集群部署的过程以及带来的坑。准备工作:Nacos版本:1.3.1JDK版本:1.8系统:Win10数据库:MySQL8.0Nacos集群部署官方文档:https://nacos.io/zh-cn/docs/cluster-mode-quick-start.html(我按照官方文档部署没有成功,可能官方文档的教程只适用于Linux/Unix/Mac)本次部署是在一台机器上,使用三个不同的端口,模拟原创 2020-11-15 17:58:57 · 747 阅读 · 0 评论 -
一文搞懂MyBatisPlus的使用(2020/10/18更新,补充多数据源)
简介MyBatis-Plus(简称 MP)是一个 MyBatis 的增强工具,在 MyBatis 的基础上只做增强不做改变,为简化开发、提高效率而生。官网:https://baomidou.com/特性无侵入:只做增强不做改变,引入它不会对现有工程产生影响,如丝般顺滑损耗小:启动即会自动注入基本 CURD,性能基本无损耗,直接面向对象操作强大的 CRUD 操作:内置通用 Mapper、通用 Service,仅仅通过少量配置即可实现单表大部分 CRUD 操作,更有强大的条件构造器,满足各类使原创 2020-09-06 22:12:02 · 675 阅读 · 0 评论 -
添加Eureka依赖后返回XML而不是JSON数据
添加Eureka依赖后返回的是XML格式的数据而不是JSON格式的数据,是因为Eureka中默认集成了com.fasterxml.jackson.dataformat的jackson-dataformat-xml。XML的优先级比JSON的高,所以会优先返回XML。解决办法1、去除com.fasterxml.jackson.dataformat的jackson-dataformat-xml修改pom中的依赖<dependency> <groupId>org.sprin原创 2020-06-17 17:32:21 · 727 阅读 · 1 评论 -
Java的注释真的不会被执行吗?
这个问题也是在别的地方看到的,原标题是《老师,你确定注释不会被执行吗?》。当然,标题不是重点,重点是Java注释真的会被执行吗?一开始知道这个问题的时候我也是很疑惑,因为不管学习什么编程语言,最开始的时候都会被告知,注释是不会被执行的,那么现在为什么又出现了Java注释会被执行这一个说法。有句话说的好,你以为的只是你以为的,什么地方不清楚,写个程序跑一下就知道了。话不多少,看代码,看结果public class Test { public static void main(String[] a原创 2020-06-13 23:11:02 · 1123 阅读 · 2 评论 -
Arrays.asList()真的就把数组转换为了List集合吗?
看面试题的时候,里面提到了这个,之前都是常规的使用,把数组转换为List集合,程序每次也都正常的运行,没在意过这个问题。看到这个问题时直接懵了,难道我之前的使用是错误的吗?后来查了资料确实是有点问题,Arrays.asList()还就真就没把数组转换为List集合,源码底层还是一个数组!。话不多说。直接上代码,结果才是唯一真理。再简单不过的一个把数组转换为List集合的例子。public class ArraysTest { public static void main(String[] a原创 2020-06-13 21:56:10 · 392 阅读 · 0 评论 -
Redis
0、RedisREmote DIctionary Server(Redis) 是一个由Salvatore Sanfilippo写的key-value存储系统。Redis是一个开源的使用ANSI C语言编写、遵守BSD协议、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API。它通常被称为数据结构服务器,因为值(value)可以是 字符串(String), 哈希(Hash), 列表(list), 集合(sets) 和 有序集合(sorted sets)等类型。原创 2020-05-14 21:59:06 · 427 阅读 · 0 评论 -
Servlet
1、ServletServlet 是 Server 与 Applet 的缩写,是服务端⼩程序的意思。使⽤ Java 语⾔编写的服务器端程序, 可以像⽣成动态的 WEB ⻚,Servlet 主要运⾏在服务器端,并由服务器调⽤执⾏, 是⼀种按照 Servlet 标准来开发的类。 是 SUN 公司提供的⼀⻔⽤于开发动态 Web 资源的技术。(⾔外之意:要实现 web 开发,需要实现 Servlet 标...原创 2020-03-29 14:30:59 · 398 阅读 · 0 评论 -
Object类
ObjecttoString()equalshashCode()ObjectObject是所有类的根基类,所有类都默认继承Object类一、String toString()Returns a string representation of the object. In general, the toString method retur...原创 2020-02-23 10:46:05 · 142 阅读 · 0 评论 -
Synchronized锁不住Integer
本来想写一个程序,模拟12306抢票,但是最后发现Synchronized锁不住Integer,记录一下。12345678910111213141516171819202122232425public class TicketConsumer implements Runnable{ private Int...原创 2020-03-01 15:49:27 · 397 阅读 · 0 评论 -
java-classpath
ClassPath的意义和坑 大家都知道,安装JDK需要配置环境变量,环境变量里面有一个classpath,那么这玩意有什么用呢,为什么有的说要配置,有的说不用配置。1、为什么要配置classpath,为什么又不需要配置classpath为什么要配置classpath在JDK1.5版本之前,运行class文件必须需要配置classpath,因为运...原创 2020-02-06 13:34:08 · 188 阅读 · 0 评论 -
Java-Day020
title: 尚学堂-Day020date: 2020-03-05 20:21:04tags:- Java- 尚学堂categories:- 尚学堂- Java网络编程端口和URLUDP和TCP一、概念网络即将不同区域的电脑连接到一起, 组成局域网、城域网或广域网。把分布在不同地理区域的计算机与专门的外部设备用通信线路互连成一个规模大、功能强的网络系统,从而使...原创 2020-03-10 11:10:03 · 176 阅读 · 0 评论 -
Java-Day019
XML标记语言概念特点和作用基础语法Dom4j解析正则一、XML标记语言1、概念xml用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。2、特点和作用特点xml与操作系统和编程语言开发平台无关可以实现不同系统之间的数据交互作用配置应用程序(Servlet配置、框架环...原创 2020-03-10 11:08:39 · 179 阅读 · 0 评论 -
Java-Day018
未曾想努力的活着只为了成为一个普通人反射反射的介绍获取Class获取类的修饰符创建对象父类与接口属性和方法数组类加载器注解注解的介绍注解的分类内置注解@Override@Deprecated@SuppressWarnings自定义注解定义元注解定义注解格式注解参数(方法)一、反射1、反射的介绍“程序运行时,允许改变程...原创 2020-03-10 11:07:12 · 250 阅读 · 0 评论 -
Java-Day017
路是自己选的多线程概念优缺点多线程创建线程的五种状态阻塞状态线程基本信息线程同步线程死锁生产者和消费者模式一、概念1、程序Java源程序和字节码文件被称为"程序",是一个静态的概念。2、进程执行中的程序叫做进程(Process),是一个动态的概念。进程是程序的一次动态执行过程, 占用特定的地址空间.每个进程由3部分组成:cpu,data,c...原创 2020-03-10 11:05:12 · 158 阅读 · 0 评论 -
Java-Day016
运气不可能持续一辈子,能帮助你持续一辈子的东西只有你个人的能力。CollectionsComparableComparatorStream一、Collections提供了对容器操作的工具方法,与 Arrays 使用差不多。1、常用方法 List<Integer> list = new ArrayList<Integer>(); list.add(...原创 2020-03-10 11:01:52 · 168 阅读 · 0 评论 -
Java-Day015
容器CollectionListSetMap一、容器概念数组是相同数据类型的有序集合,可以在其中放置对象或基本数据类型。数组是一种简单的线性序列,可以快速的访问数组元素,效率高。但是数组有一个问题,那就是一旦长度确定就不能改变,因此不灵活。所以出现了容器(数组也是一种容器),容器的长度可以随着元素的个数增加或减少。Collection接口是一组允许重复的对象L...原创 2020-03-10 10:59:17 · 156 阅读 · 0 评论 -
Java-Day014
常用类包装类日期类Math类File类一、常用类1、包装类JAVA并不是纯面向对象的语言。Java语言是一个面向对象的语言,但是Java中的基本数据类型却是不面向对象的。但是我们在实际使用中经常需要将基本数据转化成对象,便于操作。比如:集合的操作中。例如使用Map对象要操作put()方法时,需要传入的参数是对象而不是基本数据类型。为了解决这个不足,在设计类时为每个基本...原创 2020-03-10 09:06:00 · 174 阅读 · 0 评论 -
Java-Day013
当你清楚的知道自己想要什么,并且意愿非常强烈的时候,你总会有办法得到的。异常数组常用类String一、异常1、异常概念程序没有按照自己预想的结果运行出来,出现了非正常情况2、异常的分类异常异常运行时异常逻辑不够严谨出现的异常,可以通过增强代码的健壮性解决检查时异常必须要处理的异常错误系统出现的问题,自己无法解决3、...原创 2020-03-10 09:05:08 · 190 阅读 · 0 评论 -
Java-Day012
活着努力干,死了无遗憾!Lambda表达式函数式接口方法引用一、Lambda表达式1、什么是LambdaLambda表达式是一个匿名函数,我们可以把Lambda表达式理解为是一段可以传递的代码(将代码像数据一样进行传递)。可以写出更简洁、更灵活的代码。作为一种更紧凑的代码风格,使得Java语言表达能力得到了提升。Java8中引入了一个新的操作符” -> ”该操作符称为箭...原创 2020-03-10 09:04:31 · 193 阅读 · 0 评论 -
Java-Day011
每天早上都是想干翻这个世界,晚上回来时被这个世界干的服服帖帖。被生活疯狂蹂躏,依然热爱生活。内部类成员内部类私有内部类静态内部类局部内部类匿名内部类枚举零、内部类内部类就是类中的类1、内部类的作用内部类可以很好的实现隐藏一般的非内部类,是不允许有private与protected权限的,但是内部类可以内部类拥有外部类的所有元素的访问权限(包含p...原创 2020-03-10 09:02:55 · 142 阅读 · 0 评论 -
Java-Day010
你所谓的迷茫,不过是清醒的看着自己沉沦多态抽象类接口一、多态1、静态绑定与动态绑定1.1、静态绑定在编译期间完成,可以提交代码的执行效率,静态绑定的方法包括:静态方法final修饰的方法构造器private修饰方法用关键字super调用的方法1.2、动态绑定(动态联编)在执行期间判断所引用对象的实际类型,根据其类型调用其相应的方法。可以让编程更灵活,凡是降...原创 2020-03-10 09:00:29 · 192 阅读 · 0 评论 -
Java-Day009
积极的人创造机会,消极的人等待机会。代码块代码块普通块:方法内部。跟随方法一起执行一般在流程控制语句中使用构造块:方法外,类体中,没创建一次独享就执行一次用来初始化操作。先于构造器执行静态块:方法外,类体中,被static修饰,在类加载的时候调用,而且只会调用一次做静态初始化操作,或者类加载的时候需要完成的一些一次经操作1、普通块public cla...原创 2020-03-10 08:59:55 · 153 阅读 · 0 评论 -
Java-Day008
成功是别人失败时还在坚持封装访问权限JavaBean继承继承重写Object继承链实例化过程superfinal一、Java的三大特性封装继承多态1、封装1.1、理解封装就是把某些东西进行封装,就比如把计算机电脑进行封装,看不到内部,只需要从计算机给定的一些接口进行计算机操作就行了。1.2、概念程序设计要最求“高内聚,低耦合”,高内聚...原创 2020-03-10 08:59:46 · 213 阅读 · 0 评论 -
Java-Day007
Dreams don’t come for free. 梦想不会平白无故实现。面向对象和面向过程类和对象类对象类的定义属性方法一、面向对象和面向过程举个例子:我想要一杯开水,正常来说,我需要找到烧水壶,然后接凉水,烧成开水,在倒进杯子里面,这种方式叫做面向过程。同样的例子,面向对象就是我想要一杯开水,然后我找个人,给他说我想要一杯开水,你怎么弄,要不要用烧水...原创 2020-03-10 08:57:55 · 169 阅读 · 0 评论 -
Java-Day006
你总是这样轻言放弃的话,无论过多久都只会原地踏步方法的概述、方法的定义、方法的调用、方法的重载和方法的递归一、概述方法是指人们在实践过程中为达到一定目的和效果所采取的办法、手段和解决方案。所谓方法,就是解决一类问题的代码的有序组合,是一个功能模块。编程语言中的方法是组合在一起来执行操作语句的集合。Java语言中的方法在其他语言中也可能被称为函数。二、定义一、声明格式访问修饰...原创 2020-03-10 08:57:26 · 144 阅读 · 0 评论 -
Java-Day005
主要内容while循环do-while循环for循环break和continue死循环一、while循环一、定义 只有在满足一定条件的情况下,才会循环执行操作,一旦不满足条件的时候就结束循环二、语法格式while(循环条件){ 循环体}循环条件:一定是一个boolean类型的值或结果为boolean的表达式三、例子:循环打印1-100的所有偶数int ...原创 2020-03-10 08:56:45 · 145 阅读 · 0 评论 -
Java-Day004
主要内容随机数Math.random()Random类switch选择一、随机数一、Math.random()Math.random()默认产生[0.0-1.0)的随机小数,包含0.0,不包含1.0所以Math.random()可以产生任意的随机整数,当然,需要强制类型转换,例如随机的0-9(int)(Math.random()*10)因为默认产生的是[0.0-1...原创 2020-03-10 08:55:29 · 151 阅读 · 0 评论 -
Java-Day003
主要内容运算符条件表达式扩展运算符比较运算符逻辑运算符位运算键盘录入流程控制语句一、运算符+ - * / % ++ –1、+三个表示意思正数加号字符串拼接2、-负号减号3、*乘法运算4、/除法运算5、%取余运算6、++自增运算前缀自增:先给自身+1,后参与操作int a = 1;++a...原创 2020-03-10 08:55:07 · 114 阅读 · 0 评论 -
Java-Day001
一、计算机的介绍计算机的组成有两个部分,硬件系统和软件系统硬件系统:输入设备、输出设备、存储器、运算器和控制器软件系统:操作系统、功能软件二、编程介绍一、编程语言编程语言,是用来定义计算机程序的形式语言,是人类和计算机交流的语言。二、语言的发展第一代、机器语言机器语言是由0和1组成二进制代码,可以直接被机器识别的语言。但它们难于辨别和记忆,给整个产业的发展带来了障碍。...原创 2020-03-10 08:53:00 · 354 阅读 · 0 评论 -
Java-Day002
主要内容标识符和关键字变量与常量类型转换转义字符一、关键字和标识符一、编程规范任何地方的名字都要见名知意代码适当缩进书写过程成对编程对代码进行合理注释二、关键字定义是被系统征用的特殊标识符,而且是被广大程序员所认知的。特点全部小写注意事项goto和const作为保留字存在三、标识符定义就是给类、接口、方法和变量等起名...原创 2020-03-10 08:53:49 · 169 阅读 · 0 评论 -
单层for循环实现99乘法表
for循环实现九九乘法表 今天老师提问了一个问题,使用一个for循环实现99乘法表,当时就蒙了,因为以前都是使用双层for循环实现的99乘法表,还真没试过使用一个for循环实现99乘法表,想了一会儿也没想起来怎么弄,网上查了一下,看了一下别人代码,然后又自己写了一遍,特此记录一下。一、双层for这是双层for循环,就不再详细说明了for (int i = 1;i<=9;i++){...原创 2020-02-14 18:35:07 · 3475 阅读 · 0 评论 -
位运算数值交换
位运算数值交换一般数值交换都是使用一个第三方变量中间者转换,如:int n = 1;int m = 2;int i = n;n = m;m = i;System.out.println("n->"+n);System.out.println("m->"+m);运行结果这是普遍的数值交换方式现在我们使用位运算进行数值交换int n = 1;...原创 2020-02-13 19:41:52 · 521 阅读 · 0 评论 -
ClassPath的意义与坑
ClassPath的意义和坑 大家都知道,安装JDK需要配置环境变量,环境变量里面有一个classpath,那么这玩意有什么用呢,为什么有的说要配置,有的说不用配置。1、为什么要配置classpath,为什么又不需要配置classpath为什么要配置classpath在JDK1.5版本之前,运行class文件必须需要配置classpath,因为运行的时候需要用到%JAVA_HOME%...原创 2020-02-07 18:28:47 · 774 阅读 · 0 评论 -
Java命名规范
今天上课老师提问,一时想不起来了,记录一下三个规则,两个标准和一个注意事项三个规则不能以数字开头不能使用Java中的关键字严格区分大小写两个标准见名知意:看到名字能知道它是用来干什么的驼峰原则:类名:单词首字母大写方法:第一个单词首字母小写,剩下的单词首字母大写变量:如果只有一个单词,全部小写,如果多个单词,第一个单词首字母小写,别的单词首字母大写...原创 2020-02-06 11:06:27 · 172 阅读 · 0 评论 -
Idea项目上传至Github
我也是第一次把自己写的项目代码上传至Github,看了很多博主写的,总感觉太麻烦,后来发现有更简单的办法,特此记录下来第一步、下载安装GIT,注册Github账号GIt地址:https://git-scm.com/ Github地址:https://github.com/第二步、使用IDEA创建一个项目随意写的,就一句 “Hello Github!”第三步、在IDEA配置G...原创 2020-01-31 18:36:37 · 303 阅读 · 0 评论