JAVA
文章平均质量分 57
小源同学r
这个作者很懒,什么都没留下…
展开
-
catalina.bat 和 startup.bat启动的区别
catalina.bat 是一个功能全面的脚本,用于执行各种 Tomcat 服务器的管理命令。例如,使用 catalina.bat start 命令可以启动 Tomcat,使用 catalina.bat stop 命令可以停止 Tomcat。catalina.bat 和 startup.bat 都是用于启动 Apache Tomcat 服务器的脚本文件,但它们的使用方式和功能有所不同。当你运行 startup.bat 时,它会启动 Tomcat 服务器并在后台运行。原创 2024-06-20 16:48:49 · 434 阅读 · 0 评论 -
GOF23设计模式【更新ing】
用来解决软件设计中常见的问题。它们像是经验丰富的老手总结出来的“诀窍”,可以让你更轻松地写出好的、易维护的代码。每个模式都像一个蓝图,您可以自定义以解决代码中的特定设计问题。而且,设计模式并不是一种死板的规定,而是一种思维模式,你可以根据自己的情况和需求来运用它们。设计模式通常包括了问题的描述、解决方案的结构、使用场景以及相应的优缺点。常见的设计模式按照目的可以分为创建型模式、结构型模式和行为型模式。创建型模式:单例模式、工厂模式、抽象工厂模式、建造者模式、原型模式。结构型模式。原创 2024-05-23 18:09:20 · 704 阅读 · 0 评论 -
String、StringBuffer、StringBuilder
String: 不可变的字符串类,在字符串不经常变化的场景中可以使用String类,例如常量的声明、少量的变量运算。: 可变的字符串类,线程安全,在频繁进行字符串运算(如拼接、替换、删除等),并且运行在多线程环境中,则可以考虑使用StringBuffer,例如XML解析、HTTP参数解析和封装。: 可变的字符串类,非线程安全,在频繁进行字符串运算(如拼接、替换、和删除等),并且运行在单线程的环境中,则可以考虑使用StringBuilder,如SQL语句的拼装、JSON封装等。原创 2024-03-21 11:14:29 · 341 阅读 · 0 评论 -
夜深人静写算法【递归】
1. 递归的概念1.1 文字描述简单的说: 递归就是方法自己调用自己,每次调用时传入不同的变量。递归有助于编程者解决复杂的问题,同时可以让代码变得简洁。1.2 图示就以阶乘举例的图示2. 递归的应用场景2.1 递归能解决什么样的问题2.1.1 各种数学问题8皇后问题 , 汉诺塔, 阶乘问题, 迷宫问题, 球和篮子的问题(google编程大赛)2.1.2 各种算法快排,归并排序,二分查找,分治算法等。2.1.3 解决栈的问递归归代码比较简洁。【树,图,最小生成树】原创 2022-02-17 02:25:31 · 791 阅读 · 5 评论 -
夜深人静写算法【栈】
1. 栈的介绍1.1 文字描述栈的英文为(Stack)栈是一个先入后出(FILO-First In Last Out)的有序列表。栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top);另一端为固定的一端,称为栈底(Bottom)。根据栈的定义可知,最先放入栈中元素在栈底,最后放入的元素在栈顶,而删除元素刚好相反,最后放入的元素最先删除,最先放入的元素最后删除1.2 图示2. 栈的应用场景2.1 子原创 2022-02-15 23:44:08 · 827 阅读 · 6 评论 -
【安全框架】Spring Security、Oauth2、JWT 这一篇就够了
文章目录Spring Security1. 安全框架概述2. Spring Security 简述3.Spring Security3.1 创建项目3.2 项目依赖3.3 页面3.3.1 login.html3.3.2 main.html3.4 测试3.4.1 启动项目3.4.2 打开浏览器3.5 自定义登录逻辑3.5.1 Security 的配置类3.5.2 UserDetailsService 的实现类3.5.3 重启测试3.6 自定义登陆页面3.6.1 login.html3.6.2 Security原创 2022-01-17 23:08:14 · 7501 阅读 · 8 评论 -
RibbtMQ和Erlang的下载安装和版本对应
RibbtMQ和Erlang的下载安装和版本对应原创 2021-12-25 21:20:34 · 314 阅读 · 0 评论 -
拿下HashMap看这一篇就够了
文章目录HashMap集合简介HashMap集合底层的数据结构数据结构HashMap底层的数据结构存储数据的过程代码图解添加过程面试题总结HashMap继承关系HashMap继承关系图HashMap集合类的成员成员变量源代码构造方法成员方法Put方法Hash方法putVal数组扩容 resize什么时候才需要扩容HashMap的扩容是什么HashMap删除Get方法HashMap遍历方式HashMap使用细节红黑树二叉查找树红黑树红黑树查找treeifyBin方法左旋、右旋、变色HashMap扩容HashM原创 2021-12-21 23:58:01 · 1157 阅读 · 5 评论 -
JAVA课程设计--图灵聊天机器人
关于环境JDK安装Java JDK安装与配置Maven安装与配置Maven的安装与配置IDEA安装IDEA历史版本寻找IDEA2021.2.1一个破解教程关于开发软件IDEA2021.2、WebStorm2020.1【HBuilderX】图灵机器人public static final String API_ID_1 = "149f1bd6548a4f6cb414804fa7b77303";public static final String API_ID_2 = "e30337原创 2021-12-17 22:34:12 · 1082 阅读 · 0 评论 -
【JAVA】在IDEA上新建一个JavaWeb项目
1.新建一个项目:file->new->project,得到下图在project SDK处选择自己的jdk,点击next,得到下图什么都不选,点击next,得到下图project name处填写项目名称,点击finish,得到下图2.新建一个Module:项目webDemo3右键->new->Module,得到下图Module SDK处选择自己的jdk,勾选Web Application,点击Next,得到下图Module name处填写Module的名称,点转载 2021-12-02 21:12:11 · 3763 阅读 · 0 评论 -
【练习题】JAVA课后练习题总结
文章目录第1章 Java开发入门一、填空题二、选择题三、问答题四、编程题第2章 Java编程基础一、填空题二、判断题三、选择题四、程序分析题代码一:代码二:代码三:代码四:五、简答题六、编程题第3章 面向对象(上)一、填空题二、判断题三、选择题四、程序分析题代码一:代码二:代码三:五、简答题六、编程题第4章 面向对象(下)一、填空题二、判断题三、选择题四、分析题代码一:代码二:代码三:代码四:五、简答题六、编程题第5章 多线程一、填空题二、判断题三、选择题四、程序分析题代码一:代码二:代码三:五、简答题六、原创 2021-11-11 19:53:54 · 7102 阅读 · 1 评论 -
JDBC驱动
MySQL驱动 & 数据库连接池驱动传送门密码: xytxdbcp连接池常用基本配置属性1.initialSize :连接池启动时创建的初始化连接数量(默认值为0)2.maxActive :连接池中可同时连接的最大的连接数(默认值为8,调整为20,高峰单机器在20并发左右,自己根据应用场景定)3.maxIdle:连接池中最大的空闲的连接数,超过的空闲连接将被释放,如果设置为负数表示不限制(默认为8个,maxIdle不能设置太小,因为假如在高负载的情况下,连接的打开时间比关闭的原创 2021-11-11 12:07:04 · 296 阅读 · 0 评论 -
【程序练习题】Java多线程
模拟三个老师同时分发80份学习笔记,每个老师相当于一个线程/** * @Author 小源同学 * @Date 2021 11 10 21 40 * @Describe Please describe the role of this class **/public class Thread_subnotes { public static void main(String[] args) { TeacherToNotes t = new TeacherToNotes()原创 2021-11-10 22:49:20 · 837 阅读 · 0 评论 -
Java8可通过stream流将3种基本类型数组转为List
如果JDK版本在1.8以上,可以使用流stream来将下列3种数组快速转为List,分别是int[]、long[]、double[],其他数据类型比如short[]、byte[]、char[],在JDK1.8中暂不支持。由于这只是一种常用方法的封装,不再纳入一种崭新的数组转List方式,暂时算是java流送给我们的常用工具方法吧。转换代码示例如下:List<Integer> intList= Arrays.stream(new int[] { 1, 2, 3, }).boxed().coll原创 2021-10-29 17:29:52 · 8843 阅读 · 0 评论 -
JAVA基础【day14】:集合(2)
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯原创 2021-10-11 19:21:04 · 354 阅读 · 0 评论 -
JAVA基础【day13】:集合(1)
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯文章目录对象数组集合(Collection)Student练习:用集合存储5个学生对象,并把学生对象进行遍历迭代器练习:用集合存储5个学生对象,并把学生对象进行遍历。用迭代器遍历问题迭代器原码练习:存储字符串并遍历练习:存储自定义对象并遍历Student(name,age)集合(List)Student需求:List集合存储字符串并遍历特点练习:存储自定义对象并遍历特有的遍历功能练习:存储自定义对象并遍历,用普通f.原创 2021-10-11 18:38:44 · 420 阅读 · 0 评论 -
JAVA基础【day12】:异常
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯文章目录异常举例try...catch...finally编译时异常和运行时异常的区别异常中的几个方法throwsthrows和throw的区别(面试题)finallyfinal,finally和finalize的区别自定义异常异常注意事项异常(1)程序出现的不正常的情况。(2)异常的体系Throwable|–Error 严重问题,我们不处理。|–Exception|–RuntimeException.原创 2021-10-09 17:54:40 · 237 阅读 · 0 评论 -
JAVA基础【day11】: 常用类(2)
文章目录MathRandomSystemBigIntegerBigDecimalDate/DateFormat案例Calendar案例正则表达式校验qq号码校验手机号校验邮箱分割功能练习替换功能获取功能这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯Math(1)针对数学运算进行操作的类(2)常见方法(自己补齐)A:绝对值B:向上取整C:向下取整D:两个数据中的大值E:a的b次幂F:随机数G:四舍五入H:正平方根package cn.yu原创 2021-10-09 17:29:04 · 293 阅读 · 0 评论 -
JAVA基础【day10】: 常用类(1)
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯Object(1)Object是类层次结构的根类,所有的类都直接或者间接的继承自Object类。(2)Object类的构造方法有一个,并且是无参构造 这其实就是理解当时我们说过,子类构造方法默认访问父类的构造是无参构造(3)要掌握的方法: A:toString() 返回对象的字符串表示,默认是由类的全路径+'@'+哈希值的十六进制表示。 这个表示其实是没有意义的,一般子类都会重写该方法。 如何.原创 2021-09-30 18:51:17 · 80 阅读 · 0 评论 -
JAVA基础【day09】:面向对象(4)
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯形式参数和返回值的问题(1)形式参数: 类名:需要该类的对象 抽象类名:需要该类的子类对象 接口名:需要该接口的实现类对象(2)返回值类型: 类名:返回的是该类的对象 抽象类名:返回的是该类的子类对象 接口名:返回的是该接口的实现类的对象(3)链式编程 对象.方法1().方法2().......方法n(); 这种用法:其实在方法1()调用完毕后,应该一个对象; .原创 2021-09-30 18:24:11 · 93 阅读 · 0 评论 -
JAVA基础【day08】:面向对象(3)
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯关键字(final)(1)是最终的意思,可以修饰类,方法,变量。(2)特点: A:它修饰的类,不能被继承。 B:它修饰的方法,不能被重写。 C:它修饰的变量,是一个常量。(3)面试相关: A:局部变量 a:基本类型 值不能发生改变 b:引用类型 地址值不能发生改变,但是对象的内容是可以改变的 B:初始化时机 a:只能初始化一次。 b:常见的给值 定义的时候。(推荐) 构造.原创 2021-09-30 18:22:27 · 199 阅读 · 0 评论 -
JAVA基础【day07】:面向对象(2)
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯代码块(1)用{}括起来的代码。(2)分类: A:局部代码块 用于限定变量的生命周期,及早释放,提高内存利用率。 B:构造代码块 把多个构造方法中相同的代码可以放到这里,每个构造方法执行前,首先执行构造代码块。 C:静态代码块 对类的数据进行初始化,仅仅只执行一次。(3)静态代码块,构造代码块,构造方法的顺序问题? 静态代码块 > 构造代码块 > 构造方法/* 代码块:在.原创 2021-09-30 18:21:05 · 83 阅读 · 0 评论 -
JAVA基础【day06】:面向对象(1)
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯成员变量和局部变量的区别成员变量和局部变量的区别? A:在类中的位置不同 成员变量:在类中方法外 局部变量:在方法定义中或者方法声明上 B:在内存中的位置不同 成员变量:在堆内存 局部变量:在栈内存 C:生命周期不同 成员变量:随着对象的创建而存在,随着对象的消失而消失 局部变量:随着方法的调用而存在,随着方法的调用完毕而消失 D:初始化值不同 成员变量:有默认初始化值 局.原创 2021-09-30 18:19:54 · 118 阅读 · 0 评论 -
JAVA基础【day05】:方法/数组
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯方法(1)方法:就是完成特定功能的代码块。 注意:在很多语言里面有函数的定义,而在Java中,函数被称为方法。(2)格式: 修饰符 返回值类型 方法名(参数类型 参数名1,参数类型 参数名2...) { 方法体语句; return 返回值; } 修饰符:目前就用 public static。后面再详细讲解其他修饰符 返回值类型:就是功能结果的数据类型 方法名:就是起了一个名字,方便我们调.原创 2021-09-30 18:18:41 · 212 阅读 · 0 评论 -
JAVA基础【day04】:选择/循环结构
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯选择结构(if语句)(1)三种格式 A:格式1 if(比较表达式) { 语句体; } 执行流程: 判断比较表达式的值,看是true还是false 如果是true,就执行语句体 如果是false,就不执行语句体 B:格式2 if(比较表达式) { 语句体1; }else { 语句体2; } 执行流.原创 2021-09-30 18:17:20 · 96 阅读 · 0 评论 -
JAVA基础【day03】:运算符
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯算术运算符A:+,-,*,/,%,++,--B:+的用法 a:加法 b:正号 c:字符串连接符C:/和%的区别 数据做除法操作的时候,/取得是商,%取得是余数D:++和--的用法 a:他们的作用是自增或者自减 b:使用 **单独使用 放在操作数据的前面和后面效果一样。 a++或者++a效果一样。 .原创 2021-09-30 18:15:37 · 105 阅读 · 0 评论 -
JAVA基础【day02】:基础语法
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯关键字⭐(1)被Java语言赋予特定含义的单词(2)特点: 全部小写(3)注意事项: A:goto和const作为保留字存在 B:类似于Notepad++这样的高级记事本会对关键字有特殊颜色标记用于定义数据类型的关键字 class interface byte short int long float double char boolean void 用于定义数据类型值的关键字.原创 2021-09-30 18:14:13 · 100 阅读 · 0 评论 -
JAVA基础【day01】:HelloWorld
这辈子没办法做太多事情,所以每一件都要做到精彩绝伦。 --------史蒂夫.乔布斯Java语言跨平台原理图解常见的DOS命令盘符切换 盘符: 显示内容 dir 创建目录 md 删除目录 rd 进入目录 单级进入 cd 文件夹 多级进入 cd 文件夹\文件夹\文件夹... 回退目录 单级回退 cd.. 多级回退 cd\ 删除文件 删除单个文件 del a.txt 删除多个文件 del *.txt 清屏 cls 退出 exit了解的dos命令.原创 2021-09-30 18:12:44 · 283 阅读 · 0 评论