java基础学习
不忘初心Eternity
非学,无以质疑。非问,无以广识。
展开
-
Java对字符串多字段统计排序
package com.shop.util;import java.util.*;/** * @author Li JieGui * @date 2020/11/12 20:25 */public class Main { static class node implements Comparable<node>{ Character ch; Integer num; public node(Character ch, I原创 2020-11-12 21:07:08 · 307 阅读 · 0 评论 -
Redis 中 Java List<实体>对象存取与转换
需要:fastjson依赖redis依赖jedis依赖commons-pool2依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.8.1</version> </dependency>原创 2020-10-23 16:48:35 · 8185 阅读 · 0 评论 -
Java web 中文乱码解决
在javaweb项目中,我们经常会遇到类似中文乱码的问题,我们只需要自定义一个拦截器就行:import javax.servlet.*;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletRequestWrapper;import javax.servlet.http.HttpServletResponse;import java.io.IOException;import java.原创 2020-10-14 14:20:00 · 248 阅读 · 0 评论 -
Java IO实现文件拷贝,(无缓冲区、带缓冲区、带有缓冲区的channel、无缓冲区的Channel拷贝)对比
主要拷贝细节:此文主要通过四种不同的拷贝方式比较各自的效率:无缓冲字节流拷贝: 每次拷贝一字节,直到拷贝完毕 int res; while ((res = fin.read()) != -1) { fout.write(res); }带缓存字节流拷贝: 每次拷贝1024字节,直到拷贝完毕 byte[] bytes = new byte[1024]; //每次读取小于等于1024字节的数据进行拷贝 while ( fin.read(bytes) != -1) { f原创 2020-09-28 20:46:07 · 601 阅读 · 1 评论 -
Java 基于BIO实现 Client与Server通信(单聊、群聊实现)
基于BIO实现 Client与Server通信1、简述BIO模型中服务端与客户端的响应过程根据上图可清晰看出,Client与Server的响应流程如下:1、Server 服务器端 serverSocket先要和端口进行绑定ServerSocket serverSocket = new ServerSocket(6767); 2、绑定完成后,通过accept方法,阻塞式等待客户端的连接,这个方法是阻塞式调用,直到有客户端连接才往下执行; Socket accept = serverSocke原创 2020-09-25 21:28:48 · 606 阅读 · 0 评论 -
Form表单同时提交input值与上传file文件,Servlet无法获取值(已解决)
Form表单上传文件时需要在form写出提交类型:enctype=”multipart/form-data” <form action="uploadServlet" method="post" enctype="multipart/form-data"> 类型:<input type="text" name="name"/> 文件:<input type="file"name="file"/></form>此时:uploadServlet 无原创 2020-09-24 21:56:58 · 1923 阅读 · 1 评论 -
CopyOnWriteArrayList 设计思路深入了解
通过学习,我们可以发现,ArrayList 作为共享变量的话,是线程不安全的。如果要想保住线程安全,可以通过以下两种方式实现:1、Collections.synchronizedList 方法2、 CopyOnWriteArrayList 方法今天记录一下:CopyOnWriteArrayList 的学习CopyOnWriteArrayList 方法:线程安全的,多线程环境下可以直接使用,底层在读时不会加锁,写时会加锁;通过锁 + 数组拷贝 + volatile 关键字保证了线程安全;写原创 2020-09-24 15:03:14 · 230 阅读 · 2 评论 -
解决Servlet中out.println 跳转 中 alert 框中文乱码问题(已解决)
给响应response对象加上编码设置response.setCharacterEncoding("utf-8");response.setContentType("text/html;setchar=utf-8"); 本人成功实现代码:response.setCharacterEncoding("utf-8");response.setContentType("text/html;setchar=utf-8"); PrintWriter out = response.getWriter原创 2020-09-10 11:04:59 · 880 阅读 · 2 评论 -
Java开发面试题含答案(计算机网络、操作系统、Java、Mysql、Redis、Spring)
Java开发一轮复习一、网络篇1、OSI七层模型与TCP/IP 五层模型 OSI七层:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层 TCP/IP五层:物理层、数据链路层、网络层、传输层、应用层2、常见应用层协议和运输层、网络层协议,以及硬件如路由器之类在哪一层 应用层:HTTP、SMTP、DNS、FTP 传输层:TCP 、UDP 网络层:ICMP 、IP、路由器、防火墙 数据链路层:网卡、网桥、交换机 物理层:中继器、集线器3、TCP与UDP区原创 2020-08-10 09:03:09 · 2509 阅读 · 0 评论 -
基于SpringBoot+RabbitMQ+Redis开发的秒杀系统,实现异步下单、热点数据缓存、解决超卖等问题
秒杀项目:SeckillProject一、项目简介: SeckillProject基于Springboot开发的秒杀系统,实现的功能主要是登录、商品列表、商品详情、秒杀商品,订单详情等功能。在系统业务处理中,使用到分布式session维持会话、Redis预减库存降低数据库访问压力,消息队列异步下单(削峰)、客户端轮询结果、接口限流防刷等。项目地址: https://github.com/pure-xiaojie/SeckillProject(希望原创 2020-06-04 10:32:13 · 3852 阅读 · 6 评论 -
Java发送邮箱工具类出错 :javax.mail.AuthenticationFailedException: 535 Login Fail(已解决)
今天在项目整合邮件发送工具类时出了个小错,如下:D:\java1.8\jdk\bin\java.exe "-javaagent:F:\software\Software\IntelliJ IDEA 2018.3.1\lib\idea_rt.jar=55937:F:\software\Software\IntelliJ IDEA 2018.3.1\bin" -Dfile.encoding=UTF-8 -classpath D:\java1.8\jdk\jre\lib\charsets.jar;D:\java原创 2020-05-19 10:24:37 · 8115 阅读 · 0 评论 -
org.springframework.jdbc.BadSqlGrammarException:SQL拼写错误(已解决)
大部分是由于数据库表名取得不正确,或者是数据库表字段的问题,详解请参考这位博主的解决方案:https://blog.csdn.net/qq_35459724/article/details/85218744...原创 2020-04-27 16:19:03 · 1230 阅读 · 0 评论 -
目前市面应用广泛的几款服务器软件
一、服务器软件:运行在服务器操作系统之上,绑定了服务器特定的IP地址,并且在某一个端口监听用户的请求 ,提供服务的软件,都可以叫做服务器软件二、服务器软件分类静态服务和动态服务静态服务返回的是静态资源,不同用户无论何时只要访问同一个服务,闹到的内容是一模一样的,例如:托管于GitHub的静态博客 https://pure-xiaojie.github.io/动...原创 2020-04-07 20:40:39 · 1565 阅读 · 0 评论 -
java面试宝典
一、java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语法,集合的语法,io 的语法,虚拟机方面的语法。1 、一个".java" 源文件中是否可以包括多个类(不是内部类)?有什么限制? 可以有多个类,但只能有一个 public 的类,并且 public 的类名必须与文件名相一致。2 、Java 有没有 goto? ja...原创 2020-02-08 20:58:12 · 401 阅读 · 0 评论 -
字节跳动面经(2020春招)
根据别人的最新春招面试整理,刚好自己也复习一下-hashmap和hashTable的区别?为何一个线程安全一个线程不安全?区别:Hashtable 是早期Java类库提供的一个哈希表实现,本身是同步(synchronized)的,不支持 null 键和值,由于同步导致的性能开销,所以已经很少被推荐使用。HashMap与 HashTable主要区别在于 HashMap 不是同步的,...原创 2020-01-17 11:50:11 · 4080 阅读 · 0 评论 -
基于servlet+jsp 个人博客系统
系统功能需求一. 项目概述1.1 项目描述 人日志系统是基于我个人需要开发的,采用JSP+Servlet+JavaBean开发模式进行底层设计,前端采用h5前端框架和JavaScript的Ajax库进行前台页面设计,在持久层采用C3P0数据库连接池框架将数据库存入mysql。这个系统功能包括登录注册,导航栏,...原创 2019-12-22 16:04:27 · 5499 阅读 · 6 评论 -
Java网络编程
Java网络编程 所谓的网络编程指的是多台主机之间的数据通讯操作。学习教程:阿里大学java高级课程(复习基础的好课程,无废话)网络编程简介 网络的核心定义在于:有两台以上的电脑就称为网络。实际上在世界上产生的第一台电脑之后就有人开始去思考如何生产更多的电脑并且进行有效连接。 网络连接的目的不仅仅是为了进行电脑的串联,更多的情况下是为了进行彼此之间的数据通讯,包括现...原创 2019-11-17 22:11:55 · 226 阅读 · 0 评论 -
Java强引用、软引用、弱引用和虚引用分别是什么?
在Java语言中,除了基本数据类型外,其他的都是指向各类对象的对象引用;Java中根据其生命周期的长短,将引用分为以下4类:强引用、软引用、弱引用和虚引用。下面分别阐述一下各引用的特点及含义。一、强引用特点:我们平常典型编码Object obj = new Object()中的obj就是强引用。通过关键字new创建的对象所关联的引用就是强引用。 当JVM内存空间不足,JV...原创 2019-10-24 21:28:45 · 462 阅读 · 0 评论 -
java泛型从浅到深学习
以下是本文的目录大纲: 一泛型设计初衷 二.Object参数任意化 三. 泛型:本质是“参数化类型” 若有不正之处,请多多谅解并欢迎批评指正。 一.泛型设计初衷: 为解决容器无法记忆元素类型的问题。jdk5引入的类型机制。一个例子如下:import java.util.ArrayList;import java.util.List;public cl...原创 2019-05-06 18:05:23 · 186 阅读 · 0 评论 -
eclipse中报错The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path。
今天刚引入支付宝沙箱demo后出现了build path 错误解决办法:(1): 确认eclipse中server的运行环境是否有配置,设置方法为:Window → Preferences → Server → Runtime Environments →Add → 选择Apache的版本后点Next,再填入你apache tomcat软件的安装(解压后)目录。(2): 右击web工程 →...原创 2019-05-21 22:23:58 · 1490 阅读 · 1 评论 -
Java仿QQ聊天系统Eclipse+MySql实现
qq聊天项目使用简介:通过之前的java学习,写了一个仿QQ的聊天程序,主要实现的功能有注册、登录、好友列表、发送文字、图片、文件、表情。项目环境配置软件开发工具:eclipse项目结构:客户端/服务器结构功能实现:a. 登录注册b.可与不同好友在线聊天c.群聊d. 能够实时显示聊天记录e.修改资料实现效果:服务器界面登录界面注册界面登录到主界面当...原创 2019-08-11 17:38:21 · 13270 阅读 · 31 评论 -
JAVA面试题(一)
一、选择题1.关于继承的说法正确的是()。正确答案: A 你的答案: B(错误) A.子类将继承父类所有的数据域和方法。 B.子类将继承父类的其可见的数据域和方法。 C.子类只继承父类public方法和数据域 D.子类只继承父类的方法,而不继承数据域解释: 在一个子类被创建的时候,首先会在内...原创 2019-08-25 21:04:58 · 507 阅读 · 0 评论 -
使用Maven的好处
Maven提供了开发人员构建一个完整的生命周期框架。开发团队可以自动完成项目的基础工具建设,Maven使用标准的目录结构和默认构建生命周期。Maven让开发人员的工作更轻松,同时创建报表,检查,构建和测试自动化设置。Maven简化和标准化项目建设过程。处理编译,分配,文档,团队协作和其他任务的无缝连接。 Maven增加可重用性并负责建立相关的任务。每个Java项目的目录结构都没有一个统一的标准...转载 2019-08-26 19:04:25 · 1372 阅读 · 0 评论 -
JVM详解与类加载机制
目录 一、JVM体系结构概述 二、堆体系结构概述 三、对参数调优入门 学习视频:https://www.bilibili.com/video/av64318688 学习资料:https://pan.baidu.com/s/1AoD3-np_im3r1CeA_YzZmQ ...原创 2019-08-27 21:49:12 · 149 阅读 · 0 评论 -
java面试题测试(二)
一、选择题1.性事务的原子是指()。正确答案: B 我的答案: C(错误)A.事务一旦提交,对数据库的改变是永久的。B.事务中包括的所有操作要么都做,要么都不做。C.一个事务内部的操作及使用的数据对并发的其他事务都是隔离的。D.事务必须使数据库从一个一致性状态变到另一个一致性状态。解释: 举...原创 2019-09-09 16:44:38 · 2025 阅读 · 0 评论 -
深入了解轻量级的同步机制volatile
volatile 是 Java 虚拟机提供的轻量级的同步机制保证可见性 禁止指令排序 不保证原子性一、验证volatile的可见性 1.1 假如number = 0,number变量之前根本没有添加volatile关键字,没有可见性 1.2 添加volatile,可解决可见性的问题package com.jmm.volatiles;...原创 2019-09-10 21:19:15 · 229 阅读 · 0 评论 -
Java并发之CAS原理学习篇
大厂常见面试题:你了解CAS吗,请谈谈你对CAS的理解? CAS 底层原理是如何实现的? 谈谈对 UnSafe 的理解? CAS 的缺点? 原子类 AtomicInteger 的 ABA 问题谈一谈?原子更新引用知道吗?1.你了解CAS吗,请谈谈你对CAS的理解?CAS全称:“Compare And Swap”,意思是比较并交换。对于并发控制而言,锁是一种悲观策略,会阻塞线程执行...原创 2019-09-21 17:28:49 · 292 阅读 · 0 评论 -
面试题—举例说明List 、Set、HashMap是线程不安全的
大厂面试题1.我们知道 ArrayList 是线程不安全的,请编写一个不安全的案例并给出解决方案?首先,我们会想到,用了这么久的List,也做了些项目用到了List,并没有遇到过不安全的问题呀!那其实是我们用的场景只是在单线程下,如果是在高并发(多线程)的情况下,便会出现一些线程不安全的问题,下面我们来看个例子:package com.containernotsafe.t...原创 2019-09-24 20:58:37 · 535 阅读 · 0 评论 -
java 中锁(公平锁、非公平锁、可重入锁、自旋锁、独占锁、共享锁)学习篇
大厂常见面试题:java 中锁你知道哪些?请手写一个自旋锁?首先,回答第一个问题:java 中锁你知道哪些?java中有公平锁、非公平锁、可重入锁(递归锁)、自旋锁、独占锁(写锁)、共享锁(读锁)……公平锁 和 非公平锁是什么:公平锁:是指多个线程按照申请的顺序来获取值非公平锁:是值多个线程获取值的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优...原创 2019-09-26 11:00:38 · 635 阅读 · 1 评论 -
synchronized 和 Lock 有什么区别?
synchronized 和 Lock的区别可以分别从两者的原始结构、使用方法、等待是否可中断、加锁是否公平、绑定Condition情况进行对比区分出两者的不同之处。本人学习教程:尚硅谷周阳老师juc教程视频想了解的话,欢迎留言交流,共同学习进步一、原始结构synchronized 是关键字属于 JVM 层面,反应在字节码上是 monitorenter 和 monitore...原创 2019-10-07 22:07:18 · 126 阅读 · 0 评论 -
Java:类与继承
大家好,对于面向对象的程序设计语言来说,类毫无疑问是其最重要的基础。抽象、封装、继承、多态这四大特性都离不开类,只有存在类,才能体现面向对象编程的特点,今天我们就来了解一些类与继承的相关知识。首先,我们讲述一下与类的初始化相关的东西,然后再从几个方面阐述继承这一大特性。以下是本文的目录大纲: 一.你了解类吗? 二.你了解继承吗? 三.常见的面试笔试题 若有不正之处,请多多谅解并欢...原创 2019-05-06 17:32:01 · 107 阅读 · 0 评论