
Java基础
文章平均质量分 84
汇总Java基础知识 夯实基础
阳光宅猿AI
无论走多远 都不要忘了当初为什么出发 知足知不足 有为有不为 为与不为皆为可为
展开
-
不要称之为卷土重来:Java 仍然会是冠军!
Java 经过近 30 年的发展,您可能会认为该语言会出现一些磨损的迹象,但事实并非如此。2022 年的 Java 并不是一种正在衰落的语言,而是一种为软件开发的蓬勃发展的未来做好准备的语言,这种永远流行的语言远未消亡,它正在与时俱进,为未来做好准备。翻译 2023-10-31 12:52:06 · 112 阅读 · 0 评论 -
JAVA采用手机号获取短信验证进行登录与注册
本片详细说明了JAVA采用手机号获取短信验证进行登录与注册使用规则和注意要点,并给出具体操作实例,如有出入还望指正。原创 2021-04-21 17:48:59 · 2402 阅读 · 1 评论 -
简明Nginx配置中的LocationURL详解与实战
nginx的url配置是使用nginx最基本功能。nginx作为服务器,它可以接收请求,处理请求,都是基于客户端url访问。掌握url的配置要了解配置的几个指令(=,^~)。熟悉每个匹配模式的特点。了解模式之后,对于优先级的判定,只需记住一个大的规则和两个细节,就能从容的应对了。掌握url的配置之后,更重要的是在location域中做请求的处理。比如常见的静态文件配置,请求转发(rewrite),负载均衡等。...原创 2022-07-25 20:13:46 · 1845 阅读 · 0 评论 -
多线程创建方式对比与线程池相关原理概述汇总(超详细)
线程的创建方式对比与线程池相关原理概述概述1、线程的创建穿插问题一、为什么要采用线程池?1.1 直接继承Thread类1.2 实现Runnable接口1.2 实现Callable接口穿插问题二、为什么不建议使用Executors来创建线程池?穿插问题三、有了Thread还要用Runnable来创建线程穿插问题四、start()方法和run()方法有什么区别?7.线程池概述很久没有写文章了,这次想把多线程与高并发的相关知识进行一下梳理,从多线程的几种创建方式开始,逐步到线程池原理分析,再到java中常用锁原创 2021-07-18 20:00:58 · 364 阅读 · 9 评论 -
最新Java面试常问知识点汇总
1、list与set有什么不同?首先list与set都是继承于Collection接口1、list是有序的,set是无序的,list是一个有序的容器,保持了每个元素的插入顺序。即输出顺序就是输入顺序,而set方法是无序容器,无法保证每个元素的存储顺序,TreeSet通过Comparator 或者 Comparable 维护了一个排序顺序 2、list里面允许有重复的数据,set里不允许有重复的数据。3、list里面允许插入多个null形式的数据,set只允许插入一个null元素4、常用的实现类原创 2020-12-31 23:37:44 · 246 阅读 · 0 评论 -
2023年Java基础面试题汇总
面试遇到了一个很厉害的面试官,问了很多底层和架构的知识点问题,在这里我们就针对这些问题进行一个罗列,也算是对自己的一个自我深度总结,希望能够记住,不要再想不起来了。一、事务的特性以及类型事务是为了确保对数据操作的正确性。事务的4大特性是原子性:一个事务要么全部提交成功,要么全部失败回滚,不能只执行其中的一部分操作,这就是事务的原子性。一致性:事务的执行不能破坏数据库数据的完整性和一致性,一个事务在执行之前和执行之后,数据库都必须处于一致性状态。隔离性:事务的隔离性是指在并发环境中,并发的事务时相原创 2020-12-29 09:50:46 · 191 阅读 · 1 评论 -
java获取时间戳的几种方法与中国标准日期格式转换Thu Sep 07 2017 00:00:00 GMT+0800
目前获取毫秒值大概有下面四种方法//方法 一 System.currentTimeMillis(); //方法 二 Calendar.getInstance().getTimeInMillis(); //方法 三 new Date().getTime(); //方法四(适用于java8)Instant now = Instant.now();System.out.println(now.getEpochSecond()); // 秒System.out.println(no原创 2020-12-18 11:12:00 · 3539 阅读 · 0 评论 -
HttpClient封装类并接收POST请求传json参数
今天总结一下对于HttpClient的封装以及使用,便于以后的使用,这里我只封装了接收参数为Json形式的POST与GET两种方法,对于其他的方法大家可以随时留言,一起讨论。HttpClientUtils 类:import java.io.IOException;import org.apache.http.HttpEntity;import org.apache.http.HttpResponse;import org.apache.http.client.ClientProtocolExce原创 2020-12-16 18:32:17 · 1892 阅读 · 1 评论 -
java.Text.ParseException:Unparseable date:“undefined 00:00:00“
request.getParameter() 获取的日期要toString一下再parse,否则就会报这个异常。if (page.getParams().get("startTime") != null) { Date start = DateParser.parse(page.getParams().get("startTime").toString(), true); page.getParams().put("startTime", s原创 2020-07-13 09:59:00 · 2777 阅读 · 0 评论 -
JS传递数组到后台
方法一:1.使用JSON.stringify 将数组对象转化成json字符串;var array = ["1", "2"];$.ajax({ type : 'POST', url: path + '/check/testPost', contentType : "application/json" , data : JSON.stringify(array), success : function(data) { } });转载 2020-09-01 09:42:58 · 4127 阅读 · 2 评论 -
pgsql时间格式化
Postgresql中时间日期与字符串之间的转换to_char(列名,‘yyyy-mm-dd hh24:mi:ss’)to_timestamp(列名,格式)转载 2020-08-06 19:13:34 · 1942 阅读 · 0 评论 -
Java replaceAll() 方法
Java replaceAll() 方法Java String类Java String类replaceAll() 方法使用给定的参数 replacement 替换字符串所有匹配给定的正则表达式的子字符串,就是用后面的值替换掉前面的值。语法public String replaceAll(String regex, String replacement)参数regex – 匹配此字符串的正则表达式。newChar – 用来替换每个匹配项的字符串。返回值成功则返回替换的字符串,失败则返回原转载 2020-08-06 19:06:05 · 568 阅读 · 0 评论 -
Java 中日期String类型与Date类型相互转化
Java String类型转换成Date日期类型插入数据库时,存入当前日期,需要格式转换import java.text.SimpleDateFormat;formatter = new SimpleDateFormat( "yyyy-MM-dd ");String date = formatter.format(new Date());//格式化数据,取当前时间结果为 2014-10-30String格式的数据转化成Date格式import java.text.SimpleDateFormat原创 2020-08-06 19:02:54 · 192 阅读 · 0 评论 -
Java求固定数组中的最小值
首先创建一个长度是5的数组然后给数组的每一位赋予随机整数通过for循环,遍历数组,找出最小的一个值出来0-100的 随机整数的获取办法有多种,下面是参考办法之一:(int) (Math.random() * 100)Math.random() 会得到一个0-1之间的随机浮点数,然后乘以100,并强转为整型即可。public static void main(String[] args) { int[] arrInt=new int[5]; for(int i原创 2020-07-07 19:32:22 · 273 阅读 · 1 评论 -
深入理解REST与RESTfulAPI
深入理解REST与RESTfulAPI引言传统API接口浅谈RESTRestAPI=RESTful操作规则Rest概念REST 系统的特征REST 系统的特征Rest优点和缺点引言大学我们接触最多的就是JSP技术,它可以让我们在页面中嵌入Java代码,但是这样的技术实际上限制了我们的开发效率,因为需要我们Java工程师将html转换为jsp页面,并写一些脚本代码,或者前端代码。这样会严重限制我们的开发效率,也不能让我们的java工程师专注于业务功能的开发,所以目前越来越多的互联网公司开始实行前后端分离。原创 2020-06-19 17:42:48 · 1884 阅读 · 0 评论 -
深入理解static的作用以及被static修饰的变量、方法、块
static的作用static关键字有以下三种使用方法:1.被static修饰的变量属于静态变量,类变量,可以通过类名,变量名直接引用,不需要进行new一个新类。2.被static修饰的方法属于静态方法,类方法,可以通过类名,方法名直接引用,而不需要new出来一个对象3.静态块,用于初始化一个类的时候进行一些操作,静态变量、静态方法和静态代码块都只执行一次,而且只在初始化的时候执行。首先静态变量:静态变量被所有变量所共享,在内存中只存在一种副本,只在(当且仅当)类初次加载时被初始化,生命周期边长原创 2020-06-17 20:44:56 · 3958 阅读 · 1 评论 -
org.apache.jasper.JasperException: /WEB-INF/pages/accessory/accessoryHome.jsp(1,61) quote symbol exp
错误代码如下:<c:when test=${page.page==1 }> <li class="active"><a href="javascript:void();" title="首页">首页</a></li></c:when>quote symbol expected:quote symbol就是引号,expected就是期待连起来就是我代码少写引号了;正确代码如下:<c:when test原创 2020-06-17 20:39:10 · 262 阅读 · 0 评论 -
解读JAVA处理排名问题-关于学生成绩排名及Collections中的sort方法与Comparable的使用
关于学生总成绩排名问题及Collections使用写一个项目真是存在很多的bug,修复的时间往往比开发所需要的时间更长,今天又出了一个bug,在这里记录一下,主要是针对系统中学生的成绩排名。出现的问题是当管理员对成绩进行删除操作的时候排名不会变化因为成绩是以Excel表格的形式进行导入的,在导入的同时对里面的成绩进行汇总和排序,在排序上分别对学生成绩的班级进行排名和全校名次进行排名,排名的关键点就是考试的批次,这么说可能有点笼统,下面举个栗子:成绩由管理员和教师进行上传,上传的同时教师选择考试批次原创 2020-06-15 09:03:48 · 862 阅读 · 1 评论 -
深度总结JAVA中各种数据类型的互相转换
java 各种数据类型的互相转换StringBuilder转化为StringStringBuilder stb = new StringBuilder();String str=stb.toString(); //方法1String str=""+stb; //方法2String转化为StringBuilderString str = "abcdefghijklmnopqrs";StringBuilder stb = new StringBuilder(str);整型数组转化为字符串原创 2020-06-14 20:20:53 · 640 阅读 · 1 评论 -
深入理解JSON数组、JSON对象、JSON字符串、普通数组的区别与操作整理
深度理解JSON数组、JSON对象、JSON字符串、普通数组目录深度理解JSON数组、JSON对象、JSON字符串、普通数组JSON对象JSON数组前台处理JSON数据字符串和json对象和json对象数组相互转换后台处理JSON数据在这里首先提一下JSON的数据格式:1) 并列的数据之间用逗号(”, “)分隔。2) 映射用冒号(”: “)表示。3) 并列数据的集合(数组)用方括号(“[]“)表示。4) 映射的集合(对象)用大括号(”{}”)表示。5)JSON 数据的书写格式是:名称/值对。原创 2020-06-14 16:14:59 · 8282 阅读 · 1 评论 -
深度理解JAVA中的栈、堆、对象、方法区、类和他们之间的关系
深度理解JAVA中的栈、堆、对象、方法区、类和他们之间的关系最近突然灵光乍现,想总结一下Java中的栈、堆、对象、方法、类的定义和他们之间的关系,在网上看了很多,同时加上自己的一些简单理解,如有理解不对的地方请大家及时提醒,我及时更正。方法1.方法:当一个方法执行时,该方法都会建立自己的内存栈,在该方法内定义的变量将会逐个放入内存栈中,随着方法执行结束,该方法的内存栈也将自然销毁.因此,所有在方法中定义的局部变量都是放在栈内存中的。对象2.对象:创建一个对象时,该对象保存到堆内存(运行时数据区)中原创 2020-06-13 11:00:53 · 3657 阅读 · 1 评论 -
深度解读JAVA中的DO、BO、VO、DTO、AO、PO、DO、AO各自的含义
深度解读JAVA中的DO\BO\VO\DTO\AO\PO\DO\AO各自的含义PO(Persistant Object) 持久对象BO(Business Object) 业务对象VO(Value Object) 表现对象DTO(Data Transfer Object) 数据传输对象DAO(Data access object) 数据访问对象POJO(Plain ordinary java object) 简单java对象AO( Application Object):应用对象。DO( Data Objec原创 2020-06-11 17:01:44 · 5180 阅读 · 2 评论