- 博客(32)
- 收藏
- 关注
原创 HTTPS协议加密原理-模拟黑客攻击
HTTPS协议对于HTTP协议多了一个加密层,这个加密层通过多种方式对于网络攻击进行防御。网络黑客的攻击手段多样,本节主要模拟网络黑客攻击,详解HTTPS的加密工作原理。
2024-02-18 19:07:32
1125
原创 HTTPS网络通信协议基础
HTTPS 工作过程中涉及到的密钥有三组.第一组(非对称加密):用于校验证书是否被篡改,服务器持有私钥(私钥在注册证书时获得),客户端持有公钥(操作系统包含了可信任的 CA 认证机构有哪些,同时持有对应的公钥).服务器使用这个私钥对证书的签名进行加密,客户端通过这个公钥解密获取到证书的签名,从而校验证书内容是否是篡改过.
2024-02-18 03:16:50
1222
原创 HTTP请求的构造方式
在详解完HTTP协议的请求和响应格式以后,对HTTP协议就会有更深层次的了解。接下来就要了解HTTP协议的具体的一些用法基础。在HTTP协议中有两个核心的作用:(1)如何让客户端构造一个HTTP请求;(2)如何让服务器处理一个HTTP请求。本节主要讨论第一个如何构造HTTP请求。
2024-02-17 01:59:18
300
原创 HTTP协议-响应报文详解(Respond)
在了解完HTTP协议的基本内容和HTTP请求报文,本节主要针对HTTP协议的第二种报文-响应报文进行详解,对报文的具体格式以及每个关键词含义进行详细介绍。
2024-02-16 18:39:06
4354
原创 HTTP协议-请求报文详解(Request)
在了解完HTTP协议的基础知识之后,可以知道该协议有两种形式的报文,上一节主要了解了HTTP协议两种报文的基本格式。本节主要针对HTTP协议的请求报文(Request)进行详解,对请求报文的具体格式规范以及每个关键字的含义进行详细介绍。
2024-02-12 23:25:53
4597
原创 HTTP网络通信协议基础
了解完网络编程的传输层UDP和TCP通信协议后,下来就需要开始对传输数据进行“加工”与“修饰”,即应用层协议。UDP和TCP协议只负责传输层数据的传输。在网络的应用层中,HTTP协议与HTTPS协议是最重要、最常用的一个通信协议。本节主要介绍HTTP协议的基本知识以及Fiddler抓包工具的简单使用。
2024-02-11 23:10:49
3700
原创 面向字节流编程-TCP协议
在网络编程-002节中已经介绍了有关传输层TCP协议的基本知识,本节不再介绍有关TCP协议的基础内容,主要讲TCP协议的重点API及其使用方法,通过案例的形式完善。
2024-02-10 21:00:30
625
原创 面向数据报编程-UDP协议
在网络编程-002节中已经介绍了有关传输层UDP协议的基本知识,本节不再介绍有关UDP协议的基础内容,主要讲UDP协议的重点API及其使用方法,通过案例的形式完善。序列:网络编程 - 003。
2024-02-10 04:22:22
1355
1
原创 网络编程-Socket套接字
指网络上的的主机,通过不同的进程,以编程的方式实现网络通信(或成为网络数据传输)。当然,根据定义只要满足进程不同就行,即便是同一个主机,只要是不同的进程,基于网络来传输数据,也属于网络编程。对于开发来说条件有限的情况下,一般也都是在一个主机中运行多个进程来完成网络编程。进程A:编程来获取网络资源;进程B:编程来提供网络资源;Socket套接字:是由系统提供用于网络通信的技术,是基于TCP/IP协议的网络通信的基本操作单元。基于Socket套接字的网络程序开发就是网络编程。
2024-02-09 04:24:25
1441
原创 计算机网络原理基础
JavaEE大体主要分为:1.多线程编程;2.文件/IO;3.网络原理。在介绍完JavaEE中多线程编程和文件/IO后,下边就是网络编程原理,这也是JavaEE中最重要、最核心的一部分内容。本节主要介绍计算机网络通信的基础知识和发展史,以及通信理论原理。序列:网络编程 - 001在网络通信中IP地址用来标识主机的网络地址,端口号可以用来标识主机中发送、接收数据的进程。端口号就来定位主机中的进程。一个端口号只能被一个程序绑定,但是一个程序可以绑定多个端口号。
2024-02-04 03:05:03
1116
1
原创 文件系统操作-File类
1.文件系统的操作(File类)、2.文件内容的操作(流对象)。本节主要介绍Java中的文件系统操作-File类。序列:文件/IO - 002在Java语言中可以对操作系统中的文件进行操作,主要为文件系统和文件内容操作。在Java标椎库中提供了可以直接使用的类--File类是主要针对文件系统进行操作的类,主要包含针对文件的创建、删除和重命名等系列操作。File类对一个文件(包括目录)进行抽象的描述。注意,有File对象,并不代表系统中一定真实存在该文件。
2024-02-01 21:37:38
1089
原创 计算机系统文件
JavaEE大体主要分为:1.多线程编程;2.文件/IO;3.网络原理。在学习JavaEE后,我们已经学习了有关Java中多线程编程的原理和方法,下边进行文件/IO的原理和操作。文件也是计算机系统中非常重要的一部分内容。序列:文件/IO - 001。
2024-01-31 19:43:43
961
原创 多线程编程-线程池
在多线程编程时,需要经常的创建和使用线程,但是创建线程需要一定的成本,这时就可以使用到线程池。线程池可以大大减少创建线程的成本和时间,对于多线程编程必不可少。序列:多线程 - 0111.线程池线程池:申请一块内存专门用来保存线程。线程的创建与销毁都需要一定的损耗。线程池的最大的好处就是减少每次启动和销毁线程的损耗。2.标椎库中的线程池使用Executors.newFixedThreadPool(10)能创建出来固定包含10个线程的线程池;返回值的类型为ExecutorService;
2024-01-30 23:08:39
188
1
原创 Java-阻塞队列
阻塞队列:一种特殊的队列,也遵守“先进先出”的原则。当队列为空时,继续出队列,就会发生阻塞,直到其他的线程往队列中插入元素;当队列为满时,继续入队列,就会发生阻塞,直到其他的线程从队列中取出元素;阻塞队列最大的意义就是可以用来实现“生产者 - 消费者模型”,这是一种经典的多线程开发模型。生产者-消费者模型就是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直接通讯,而是通过阻塞队列的方式通讯。生产者生产数据之后,直接扔给阻塞队列;
2024-01-29 02:05:35
433
原创 Java-单例模式
饿汉模式”在类加载的同时,创建实例对象。在类内部创建静态、私有的唯一实例对象;私有化该类的构造方法;创建外界可以访问到这个实例对象的静态方法;
2024-01-26 20:20:59
1083
2
原创 多线程编程-wait()与notify()
由于线程之间是抢占式执行的,因此线程之间的执行先后顺序总是难以预知的。但是实际开发中我们总是希望能够合理的协调多个线程之间的执行先后顺序。wait()/wait(long timeout):让当前的线程进入等待状态;notify()/notifyAll():唤醒当前的对象上等待的那个线程;wait()、wait(long timeout)、notify()、notifyAll()都是Object类的方法。
2024-01-24 19:27:49
1075
原创 volatile关键字使用
volatile关键字:volatile关键字是Java中修饰变量的关键字之一,在定义变量的时候使用。主要在JavaEE多线程编程中,为了防止线程出现不安全的状态时使用。具体介绍如下。序列:多线程 - 006volatile修饰的变量,能够保证“内存可见性”。改变线程工作内存中volatile变量副本的值;将改变后的副本的值从工作内存刷新到主内存;从主内存中读取volatile变量的最新值到线程的工作内存中;从工作内存中volatile变量的副本;
2024-01-23 01:59:17
563
1
原创 监视器锁-synchronized关键字
对线程的基本了解已经结束,除此之外,Java多线程编程中还有保证线程安全的内容。对于多线程编程,线程安全无疑是最重要的。监视器锁是保证线程安全的重要部分。
2024-01-19 19:14:12
1088
1
原创 线程的状态属性
在了解完Thread类的基本内容与方法后,对于线程而言,在日常的开发过程存在很多的状态,线程的不同状态可以帮助我们更好的掌握线程。序列:多线程 - 004NEW:存在状态,给Thread类对象安排了工作,但是还未开始执行,start()还未调用;RUNNABLE:就绪状态和运行状态,start()已经调用线程,正在排队等待执行或线程正在运行中;BLOCKED:阻塞状态,由于锁竞争导致阻塞;WAITING:阻塞状态,由于wait()不固定时间的等待产生阻塞;
2024-01-16 23:48:44
578
1
原创 Thread类及常见方法
在学会创建Thread类线程对象后,下来就要学会使用Thread对象进行具体的线程操作。在Thread类中有很多方法,本节对这些方法进行介绍。
2024-01-15 21:48:34
1050
1
原创 JavaEE-创建线程
在充分的了解完线程的基本内容后,我们就可以去了解怎样创建一个多线程程序。本文将从多个角度切入,用五个方法来介绍如何创建出一个多线程程序。在日常开发中,推荐使用第五个方法。
2023-11-29 00:55:07
491
2
原创 JavaEE-认识线程(Thread)
JavaEE表示Java网络企业级开发,是Java编程开发中的非常重要的一环。在介绍网络端编程开发前,首先需要了解Java多线程开发,多线程编程是开发网络项目的基础
2023-11-25 14:52:06
555
1
原创 JDBC编程-占位符的设置与使用
JDBC在进行数据库操作时,通常使用占位符来提高代码的安全性和可复用性。通过使用占位符,可以避免SQL注入攻击并增加代码的安全性。
2023-11-18 18:13:05
1813
2
原创 JDBC编程-Java连接并操作数据库详解
JDBC是一种用于在 Java 程序和数据库之间建立连接的标准API,通过 JDBC,开发人员可以轻松地与各种数据库进行交互。本文将介绍 JDBC 的基本概念、使用方法以及示例代码。Java中操作数据库,底层基础的方式就是JDBC。是 Java 语言连接数据库的标准API,它提供了一套用于执行 SQL 语句、访问和操作数据库的接口和类,由 java.sql.* 包和 javax.sql.* 包中的一些类和接口组成。通过 JDBC,开发人员可以实现与不同数据库系统的通信,无论是关系型数据库。
2023-11-17 01:30:53
3075
6
原创 JDBC编程-下载MySQL数据库连接驱动
在开发中使用JDBC操作数据库,需要使用数据库厂商提供的驱动程序,通过驱动程序可以与数据库进行交互。那么如何获取JDBC连接驱动呢?我们习惯性得想要在正规的官网进行下载。毕竟是官方,用的安心。那么 MySQL 官网如何下载连接驱动呢?该文章发于2023年11月,当时的 MySQL 官网页面与文中截图一致,如发现不一致,可能网站已改版或更新,请确认。以上就是在MySQL数据库官网如何下载各版本JDBC连接驱动教程!
2023-11-14 20:05:10
6740
4
原创 MySQL数据库-聚合查询:统计与分析数据
MySQL是一款流行而强大的关系型数据库管理系统,它提供了丰富的聚合函数和查询功能,用于对数据进行统计和分析。在本文中,我们将深入介绍MySQL数据库聚合查询的用法和实例。通过本文,我们详细介绍了MySQL数据库聚合查询的概念和基本语法,并提供了几个常见的实例。聚合查询是数据统计和分析的重要工具,能够帮助我们从大量数据中提取有用的信息。
2023-11-08 18:15:02
1130
1
原创 深入理解MySQL数据库约束
数据库约束是一种使用数据库重要的工具,用于保护数据完整性,限制数据的正确性和一致性。下面来深入理解一下数据库约束。以上是一些常见的MySQL数据库约束类型,它们可以帮助我们确保数据的一致性、完整性和可靠性。在设计数据库时,合理使用约束是非常重要的。希望这篇博客对你有所帮助!
2023-11-04 19:37:51
188
1
原创 MySQL数据库命令行出现-> ‘> “>无法跳出时怎么办?
MySQL数据库命令行出现 -> '> "> 无法跳出时怎么办?快速解决方法,简单明了!!!
2023-11-01 01:12:06
2430
1
原创 IT博客之旅--开启
在这个数字化时代,IT行业正日益发展壮大,技术创新不断涌现,对于我这样一个对IT充满热情的人来说,写博客是分享知识、学习交流的最佳途径。
2023-08-08 02:14:12
69
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人