![](https://img-blog.csdnimg.cn/2021090220503683.jpg?x-oss-process=image/resize,m_fixed,h_224,w_224)
JAVA
在初学java做的个人笔记
JJpZh
算法,java,php,tp5,tp6,html,css,vue,js,jq,mysql
展开
-
关于springboot跨域和鉴权的一些问题
事情是这样的:我后端需要解决跨域和鉴权的问题,跨域在WebMvcConfig中重写addCorsMappings就行了,鉴权就写了个过滤器判断登录token,结果是不需要鉴权的请求能通过(登录,首页面的展示),需要鉴权的请求在postman上是正常的,能有响应。)WebMvcConfig配置才开始配置。:在发现token过期了之后,手动设置一些跨域信息,结果成功了。估计把过滤器换成拦截器也行。但是更奇怪的是我如果给出正确token,postman和浏览器都没问题。原创 2023-03-02 12:47:57 · 177 阅读 · 0 评论 -
java数组转集合
【代码】java数组转集合。原创 2023-01-18 21:57:38 · 278 阅读 · 0 评论 -
java无序可重复的数据结构
使用PriorityQueue Comparator comparator():返回用于对此队列中的元素进行排序的比较器,如果此队列根据其元素的自然顺序排序,则返回null。boolean contains(Object o):如果此队列包含指定的元素,则返回true。Object element():检索但不删除此队列的头部,如果此队列为空,则返回null。Object peek():检索但不删除此队列的头部,如果此队列为空,则返回null。原创 2022-12-11 19:02:59 · 557 阅读 · 0 评论 -
二维数组的排序
如果要按行排序,因为二维数组的特性是一行一行的,可以直接找到arr[2][ ],但不可能直接找到arr[ ][2],所以要真的有按行排序的需求,可以先把数组颠倒一下,再按列排序。原创 2022-12-11 18:20:33 · 364 阅读 · 0 评论 -
java工具类
不是我封装的,是我从别人那找的,然后作分析。使用:二.计算两个字符串的相似度用法参考代码中的主方法原创 2022-11-29 01:49:00 · 177 阅读 · 0 评论 -
springMVC和springBoot文件上传的区别
springMVC需要导入并且配置在SpringMvcConfig中,或者以xml形式配置bean只有这样才能获取到MultipartFile file对象。原创 2022-11-24 01:39:25 · 157 阅读 · 0 评论 -
关于使用servlet的乱码问题(待解决)
没问题,这就是书上教的那些。但如果我把这句话放在他们之间会怎么样?我的测试在很多个tomcat版本上都试过(7,8,9),同样的结果。当然,这种解决乱码的方式放在username上也是可以生效的。post提交,servlet这样写:输出会乱码,很正常对吧。疑问来了:我以为只有第一个不会被正确输出,第二个应该是中文。但实际上是这样的,两个都是乱码。所以为什么会出现这种情况?我在获取参数之前加个。原创 2022-10-11 22:12:29 · 333 阅读 · 0 评论 -
别再用str==null || (““).equals(str)了,试试Stringutils.isblank(str)
StringUtils.isBlank(”\t \n \f \r") = true //对于制表符、换行符、换页符和回车符StringUtils.isBlank()均识为空白符。StringUtils.isEmpty(" “) = false //注意在StringUtils中空格作非空处理。StringUtils.isBlank(“\b”) = false //“\b"为单词边界符。判断某字符串是否为空,为空的标准是str==null或str.length()==0。判断某字符串是否非空,等于!原创 2022-10-05 19:35:38 · 177 阅读 · 0 评论 -
springboot项目部署后上传功能失效
日志上显示Permission denied拒绝访问,我才反应过来,启动的时候要用root用户启动,果然可以了。记得找日志的时候看好时间,从这个时间之后的第一条开始看,千万别从后往前看,后面的报错可能是前面的导致的。原创 2022-10-03 18:07:51 · 313 阅读 · 0 评论 -
Nginx详细教程
Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器。其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx的网站有:百度、京东、新浪、网易、腾讯、淘宝等。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。官网:https://nginx.org/Nginx可以作为静态web服务器来部署静态资源。原创 2022-10-01 11:42:07 · 627 阅读 · 0 评论 -
在宝塔一键部署java项目时遇到的一些问题
3.本地运行tomcat会一闪而过(打开bin\startup.bat),而我确实有jdk(只不过是直接配在path里的,jdk8的bin目录),我按照JAVA_HOME那样配置后才可以正常运行,为什么?2.关于我为什么分两次介绍普通项目部署,因为如果用第一种的话,我本机就这一个域名,部署一次就没了,我还想部署其他网站的时候还得把它删了,所以那个域名我得写成自定义的样子。所以,我的疑问是,为什么第二种方法不能一键部署,还得我找到它生成的tomcat的webapps文件夹手动部署?来访问不同的项目了。原创 2022-09-30 00:54:25 · 4130 阅读 · 0 评论 -
能去重且有序的集合LinkedHashSet
使用ArrayList的时候往往会遇到需要去重的情况,但是又不能使用会重新排序的set集合,我们就可以使用这个LinkedHashSet。原创 2022-09-28 18:06:54 · 443 阅读 · 0 评论 -
AOP面向切面编程
切入点表达式标准格式动作关键字(访问修饰符返回值包名.类/接口名.方法名(参数)异常名)4.对接口进行描述,使用*表示模块名,例如UserService的匹配描述为*Service。5.方法名书写保留动词,例如get,使用*表示名词,例如getById匹配描述为getBy*2.查询操作的返回值建议使用*匹配。6.参数根据实际情况灵活调整。切入点表达式书写技巧。...原创 2022-07-30 11:48:03 · 95 阅读 · 0 评论 -
java中的反射机制
反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意属性和方法;这种动态获取信息以及动态调用对象方法的功能称为Java语言的反射机制。......原创 2022-07-24 08:24:11 · 87 阅读 · 0 评论 -
Cookie和Session的区别
Cookie和Session的区别原创 2022-07-11 12:32:02 · 81 阅读 · 0 评论 -
服务器响应状态码
状态码大全原创 2022-07-01 23:26:56 · 73 阅读 · 0 评论 -
文件的相对路径写法
输出当前路径,然后看自己需要的文件相对这个文件的路径即可。原创 2022-06-28 00:22:43 · 139 阅读 · 0 评论 -
java文件操作:字符流,转换流,对象操作流,Properties集合
字符流的介绍由于字节流操作中文不是特别的方便,所以Java就提供字符流字符流 = 字节流 + 编码表中文的字节存储方式用字节流复制文本文件时,文本文件也会有中文,但是没有问题,原因是最终底层操作会自动进行字节拼接成中文,如何识别是中文的呢?汉字在存储的时候,无论选择哪种编码存储,第一个字节都是负数什么是字符集是一个系统支持的所有字符的集合,包括各国家文字、标点符号、图形符号、数字等l计算机要准确的存储和识别各种字符集符号,就需要进行字符编码,一套字符集必然至少有一套字符编码。常见字符集有ASCII字符集、G原创 2022-06-21 23:49:59 · 103 阅读 · 0 评论 -
java的Stream流
案例需求按照下面的要求完成集合的创建和遍历原始方式示例代码使用Stream流示例代码Stream流的好处Stream流的思想Stream流的三类方法生成Stream流的方式Collection体系集合使用默认方法stream()生成流, default Stream stream()Map体系集合把Map转成Set集合,间接的生成流数组通过Arrays中的静态方法stream生成流同种数据类型的多个数据通过Stream接口的静态方法of(T… values)生成流代码演示1.3Stream原创 2022-06-20 23:15:47 · 151 阅读 · 0 评论 -
数据结构之红黑树
红黑树的特点红黑树的红黑规则有哪些每一个节点或是红色的,或者是黑色的根节点必须是黑色如果一个节点没有子节点或者父节点,则该节点相应的指针属性值为Nil,这些Nil视为叶节点,每个叶节点(Nil)是黑色的如果某一个节点是红色,那么它的子节点必须是黑色(不能出现两个红色节点相连 的情况)对每一个节点,从该节点到其所有后代叶节点的简单路径上,均包含相同数目的黑色节点红黑树添加节点的默认颜色红黑树添加节点后如何保持红黑规则...原创 2022-06-19 21:14:14 · 54 阅读 · 0 评论 -
JDK8时间日期类
1.3 LocalDateTime获取方法 (应用)方法说明示例代码1.4 LocalDateTime转换方法 (应用)方法说明示例代码1.5 LocalDateTime格式化和解析 (应用)方法说明示例代码1.6 LocalDateTime增加或者减少时间的方法 (应用)方法说明示例代码1.7 LocalDateTime减少或者增加时间的方法 (应用)方法说明示例代码1.8 LocalDateTime修改方法 (应用)...原创 2022-06-14 22:17:15 · 258 阅读 · 0 评论 -
int和String的相互转换
基本类型包装类的最常见操作就是:用于基本类型和字符串之间的相互转换原创 2022-06-13 01:00:51 · 227 阅读 · 0 评论 -
Lambda表达式和匿名内部类的区别
1.所需类型不同● 匿名内部类:可以是接口,也可以是抽象类,还可以是具体类● Lambda表达式:只能是接口2.使用限制不同● 如果接口中有且仅有一 个抽象方法,可以使用Lambda表达式,也可以使用匿名内部类● 如果接口中多于一个抽象方法,只能使用匿名内部类,而不能使用L ambda表达式3.实现原理不同● 匿名内部类:编译之后,产胜-个单独的.class字节码文件● Lambda表达式:编译之后,没有一个单独的.class字节码文件。对应的字节码会在运行的时候动态生成...原创 2022-06-12 17:35:00 · 166 阅读 · 0 评论 -
java接口的设计思路
●如果发现一个类中所有的方法都是抽象方法,那么就可以将该类,改进为一个接口●涉及到了接口大面积更新方法,而不想去修改每一个实现类,就可以将更新的方法,定义为带有方法体的默认方法●希望默认方法调用的更加简洁,可以考虑设计为static静态方法。( 需要去掉default关键字)●默认方法中出现了重复的代码,可以考虑抽取出一个私有方法。 (需要去掉default关键字)接口interface,以上基于JDK9以上定义方式:public interface 接口名 {}成员变量:只能是常量 默认修饰原创 2022-05-31 18:02:50 · 427 阅读 · 0 评论 -
java类和接口的关系
类和类的关系继承关系,只能单继承,但是可以多层继承类和接口的关系实现关系,可以单实现,也可以多实现,还可以继承一个类的同时实现多个接口接口和接口的关系继承关系,只能单继承,也可以多继承继承extends实现implements...原创 2022-05-31 17:26:00 · 94 阅读 · 0 评论 -
java权限修饰符
说一下我的理解:private 只能在同一个类中使用,没什么问题default 在同一个包下就能使用protected 在不同包中的子类才能使用,extend继承才行public 在任何位置都可以使用,不继承也能访问原创 2022-05-28 00:36:55 · 58 阅读 · 0 评论 -
删除ArrayList中为“test“的所有字符串
public static void main(String[] args) { // 1. 创建集合对象 ArrayList<String> list = new ArrayList<>(); // 2. 调用add方法,添加字符串 list.add("test"); list.add("张三"); list.add("李四"); list.add("test")...原创 2022-05-22 23:05:16 · 139 阅读 · 0 评论 -
字符串的地址比较
1.==比较的是地址。 2.字符串常量池:可以理解为给定一个区域存不同字符串常量,对每一个进来的会先做查重判断,如果已经存在 就直接引用早已存在的这个地址,如果不存在就新建个地址 3.字符串直接创建的,比如a,b,它们会在字符串常量池中生成。 4.而每一个new都会在堆区生成新的地址,所以c和其他所有的地址都不同,与它比较自然全是false。 4.用+号拼接字符串实际上是系统自动创建了StringBuilder类进行的append操作...原创 2022-05-20 23:55:25 · 805 阅读 · 0 评论 -
关于idea快捷键的学习
文章目录前言:`1.设置背景图片2.选中光标所处的单词或句子 ctrl+w3.收起一段代码 ctrl+ -4.重命名某个变量 shift+f65.提取方法ctrl+alt+M6.格式化代码 ctrl+alt+L7.转移到下一个高亮显示的错误 F2前言:`准备好好学习java了,已经基本学习了基础的语法。想到了解idea的一些快捷方式会让我的学习效率得到很大的提升,于是我打开了idea的学习功能,并记录下自己感兴趣的部分内容,像非常常用的我肯定不会写了(比如ctrl+/是注释)提示:以下是本篇文章原创 2022-05-19 18:56:00 · 817 阅读 · 0 评论 -
你回答不上来的33个Java问答
初学者对java的常见问题 ,同时也是一个学习java的小伙伴必须懂的问题原创 2021-12-09 22:02:02 · 424 阅读 · 0 评论 -
ccf--202006-1--线性分类器--java
自定义类原创 2021-12-04 22:47:34 · 310 阅读 · 0 评论 -
java数组字符串常用方法总结
1.数组1.1数组的定义//三种定义方式int[] arrs=new int[100];String[] names=new String[]{"张三","李四"};char[] chars={'a','b'};1.2Arrays工具类Arrays.sort(arr);//排序int index=Arrays.binarySearch(arr,3);//二分法查找数字3的下标int[] copied=Arrays.copyOfRange(arr,1,7);//拷贝下标从1到6的数组元素原创 2021-11-13 14:51:19 · 7579 阅读 · 2 评论 -
Java日期问题
问题描述2020 年 7 月 1 日是中国共产党成立 99 周年纪念日。中国共产党成立于 1921 年 7 月 23 日。请问从 1921 年 7 月 23 日中午 12 时到 2020 年 7 月 1 日中午 12 时一共包含多少分钟?import java.text.DateFormat;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;public clas原创 2021-11-11 11:43:12 · 503 阅读 · 0 评论 -
(大数字计算)一个9位数的8次方的结果再对一个9位数取模(取余数)运算
(大数字计算)一个9位数的8次方的结果再对一个9位数取模(取余数)运算前几天写过一篇文章关于这个主题的:java超越int的存在----BigInteger可是,无助的我发现,那种BIG类型的数据其实很不好用,有时候需要循环相加的时候就糟糕了。标题这个问题是我从一个题目中提取出来的,那个题最大要求的是计算100000000次题目那个东西,并相加起来。单从题目来说,我一下就想到了我刚学到的Biginner,BigInteger pow(int exponent) 返回当前大整数的exponent次方原创 2021-11-03 21:35:03 · 263 阅读 · 0 评论 -
java超越int的存在----BigInteger
做题的时候遇到了个21位的数字,要对它进行%运算。人麻了,long 都不行。解决方案: BigInteger a=new BigInteger("651764141421415346185"); BigInteger b=new BigInteger("9"); BigInteger c=a.mod(b); System.out.println(c);BigInteger abs() 返回大整数的绝对值BigInteger add(B原创 2021-11-02 16:37:48 · 135 阅读 · 0 评论 -
java之位运算符在算法中的简单应用(附算法题:只出现一次的数字)
位运算符有&按位与如果两个相应的二进制位都为1,则该位的结果值为1,否则为0|按位或两个相应的二进制位中只要有一个为1,该位的结果值为1^按位异或若参加运算的两个二进制位值相同则为0,否则为1~取反~是一元运算符,用来对一个二进制数按位取反,即将0变1,将1<<左移用来将一个数的各二进制位全部左移N位,右补0>>右移将一个数的各二进制位右移N位,移到右端的低位被舍弃,对于无符号数, 高位补0(正数)或1(负数)>>>原创 2021-10-30 23:33:22 · 135 阅读 · 0 评论 -
大学生注册下载idea以及插件的使用安装
https://www.jetbrains.com/idea/download/#section=windowsidea的安装过程一直点下一步就行了,没什么难的,什么都不用选原创 2021-10-29 20:05:39 · 352 阅读 · 0 评论 -
为什么java中float定义变量需要加上f
package test;public class Hello { public static void main(String[] args) { float a=1.2; }}问题所在:程序会报错,提示把float换成double,或者在1.2后面加上f就可以了。原因分析:浮点类型默认是double,但是由于float类型和double类型在内存中的二进制表现形式不同,不能像整形那样有时会默认转换,必须要确定类型,带上f...原创 2021-09-06 19:41:20 · 1669 阅读 · 0 评论 -
2021-09-02
软件,既一系列按照特定顺序组织的计算数据和指令的集合。人机交互方式分为图形化界面GUI和命令行方式CLI。原创 2021-09-02 20:37:02 · 77 阅读 · 0 评论