JavaEE初阶
文章平均质量分 89
Lotto_o
运气是努力的赠品。
展开
-
【Java】Servlet实现前后端分离的博客系统
通过Servlet实现前后端分离的博客系统,包括登录、获取文章列表、查看文章详情、发布文章、删除文章、注销登录等功能。原创 2023-07-17 21:36:51 · 1005 阅读 · 0 评论 -
【Java】JVM执行流程、类加载过程和垃圾回收机制
JVM的执行流程、类加载的过程、双亲委派机制、死亡对象的判断算法、垃圾回收的过程、垃圾收集器原创 2023-07-14 15:13:14 · 1817 阅读 · 0 评论 -
【Java】Servlet之数据库版本的留言墙实现
1.用户通过前端向后端提交数据。通过Ajax实现。2.服务器接收数据并校验。通过Servlet实现。3.通过Java进行数据库操作。通过JDBC实现。4.获取数据库操作的结果,并为用户构造响应。通过Json实现。建库后端实现定义与数据库对应的类Message获取数据库连接Message类访问数据库实现结果继续加油~原创 2023-07-12 17:45:36 · 283 阅读 · 0 评论 -
【Java】Servlet之登录和上传文件的简单实现
当第一次打开一个浏览器访问某个网页时,服务器会分配了一个随机字符串(Token),并存储当前的会话信息(页面)。当第二次再次访问时,在header中携带上这个随机字符串(Token),服务器就可以通过自己维护的HashMap根据传进来的随机字符串作为key,找到相应的会话,从而使别是哪一个浏览器访问了这个服务器。打开控制台可以看到,登陆成功之后,服务器在给浏览器发了一个set-Cookie字段, 当浏览器的响应头接收到set-Cookie这个字段时,浏览器就会把对应的JSESSIONID存在本地。原创 2023-07-12 22:39:18 · 1026 阅读 · 0 评论 -
【Java】Servlet的执行原理、API以及实现简单的前后端分离的计算器
在 Tomcat 启动阶段, Tomcat 已经根据注解的描述,创建了 HelloServlet 的实例,然后把这个实例放到了 Servlet 数组中,后面我们根据请求的 URL从数组中获取到了该 HelloServlet 实例,但是我们是通过 Servlet ins这样的父类引用来获取到 HelloServlet 实例的。浏览器也通过 Socket 读到这个响应(一个字符串), 按照 HTTP 响应的格式来解析这个响应. 并且把body 中的数据按照一定的格式显示在浏览器的界面上。原创 2023-07-11 19:23:29 · 570 阅读 · 0 评论 -
【Java】Tomcat、Maven以及Servlet的基本使用
Tomcat 是一个 HTTP 服务器。前面我们已经学习了 HTTP 协议, 知道了 HTTP 协议就是 HTTP 客户端和 HTTP 服务器之间的交互数据的格式。HTTP 服务器可以通过 Java Socket 来实现,而 Tomcat 就是基于 Java 实现的一个开源免费, 也是被广泛使用的 HTTP 服务器。原创 2023-07-10 14:35:32 · 1530 阅读 · 0 评论 -
【Java】网络编程与Socket套接字、UDP编程和TCP编程实现客户端和服务端通信
网络编程,指网络上的主机,通过不同的进程以程序的方式实现网络通信(网络数据传输)。注意也可以是同一个主机的不同进程,比如,MySQL的服务端也客户端,在开发环境一般都是在同一台主机上运行的两个不同的程序。原创 2023-06-30 11:13:27 · 2978 阅读 · 0 评论 -
【Java】文件的操作与输入输出流
硬盘上保存的数据,都是“文件”来组织的,本质上都是二进制或是字符组织的数组,被打包成一个文件存在硬盘上。常见的文件有图片,文本,可执行文件,音频,视频…文件夹也是一种特殊的文件,也叫目录通常所说的文件都是存储在硬盘上面的,硬盘的特点:1硬盘容量大,内存容量小。4.硬盘上的数据断电不丢失,内存中的数据断电丢失。对于Linux来讲,所有的计算设备(网卡、键盘、打印机…)都会被描述(抽象)成文件。当一个进程启动后去申请计算机资源时,系统会把他所有用到的资源以文件的形式分配给进程,并加入到对应的文件描述符表中。原创 2023-06-21 09:56:13 · 4766 阅读 · 3 评论 -
【Java】死锁问题及ThreadLocal
多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放。由于线程被无限期地阻塞,因此程序不可能正常终止。这是一个最严重的BUG之一。原创 2023-06-20 21:52:43 · 563 阅读 · 0 评论 -
【Java】JUC下的常用接口和类
java.util.concurrent包简称JUC,是JDK1.5之后对多线程的一种实现,这个包下的类都和多线程有关。主要介绍Callable接口、ReentrantLock、原子类、工具类、CopyOnWriteArrayList、ConcurrentHashMap。原创 2023-06-19 17:21:45 · 331 阅读 · 0 评论 -
【Java】再谈synchronized关键字(原理)
synchronized在不同时期可能会用到不同的锁策略,锁升级,锁粗化,锁消除原创 2023-06-14 20:38:46 · 182 阅读 · 0 评论 -
【Java】常见的锁策略及CAS
1.先获取预期值;2.通过CAS指定完成比较并交换;3.如果在CAS的过程中预期值与真实值不相等,就进入自旋;4.ABA问题,主要给预期值加一个版本号,在比较的时候同时比较真实值和版本号。原创 2023-06-07 22:48:12 · 344 阅读 · 1 评论 -
【Java】线程池的概念及使用、ThreadPoolExecutor的构造方法
在之前JDBC编程中,通过DataSource获取Connection的时候就已经用到了池的概念。这里的池指的是数据库连接池。当Java程序需要数据库连接的时候就从池子中拿一个空闲的连接对象给Java程序,Java程序用完连接之后就会返回给连接池。线程池就是在池子里放的是线程本身,当程序启动的时候就创建出若干个线程,如果有任务就处理,没任务就阻塞等待。原创 2023-06-06 11:38:00 · 1305 阅读 · 1 评论 -
【Java】一文搞懂生产者和消费者模型
阻塞队列、消息队列、消息队列的作用、阻塞队列和生产者消费费者模型的实现原创 2023-05-31 11:34:10 · 868 阅读 · 0 评论 -
【Java】单例设计模式-饿汉模式和懒汉模式
单例是一种设计模式。单例指的是在全局范围内只有一个实例对象。比如在学习JDBC编码时使用的DataSource,定义了数据库的用户名,密码和连接串,定义好这些属性之后就可以通过DataSource的实例对象获取数据库连接。设计模式是大牛们根据以往的程序设计经验,总结出的一套方法,类似于棋谱。原创 2023-05-30 11:11:25 · 834 阅读 · 0 评论 -
【Java】wait和notify方法
wait方法及wait与join的区别、wait与sleep的区别,notify与notifyAll。原创 2023-05-29 10:45:35 · 542 阅读 · 0 评论 -
【Java】volatile和内存屏障
内存不可见的现象,缓存一致性协议,内存屏障原创 2023-05-25 11:30:27 · 750 阅读 · 0 评论 -
【Java】解析synchronized中的锁对象
synchronized中的锁对象解析原创 2023-05-24 15:33:33 · 636 阅读 · 0 评论 -
【Java】初识synchronized关键字
synchronized的使用方法,可以修饰普通对象方法、修饰静态方法和代码块。synchronized的特性和注意事项。原创 2023-05-23 11:36:41 · 229 阅读 · 0 评论 -
【Java】线程不安全的现象和成因
线程不安全的现象,造成线程不安全的原因,包括多个线程修改了同一个变量、线程是抢占式执行的、原子性问题、内存可见性问题以及指令的有序性问题。JMM模型是什么。原创 2023-05-22 11:29:32 · 318 阅读 · 0 评论 -
【Java】线程的状态及维护方式
线程的状态,系统维护线程状态的方式,使用工具查看线程及状态原创 2023-05-19 11:37:17 · 209 阅读 · 0 评论 -
【Java】Thread类常见的方法和属性
构造方法,是否后台线程,是否存活,线程中断,start()和run()方法,join()方法,获取当前线程,休眠当前线程原创 2023-05-18 22:23:02 · 291 阅读 · 0 评论 -
【Java】创建线程的几种方式
继承Thread类,实现Runnable接口,匿名内部类,Lambda表达式原创 2023-05-13 14:55:37 · 283 阅读 · 0 评论 -
【Java】进程和线程
什么是进程,进程的管理,并发和并行,虚拟内存空间,什么是线程,进程和线程的区别,使用多线程编程的原因,多线程存在的问题原创 2023-05-09 21:53:21 · 125 阅读 · 0 评论