自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(70)
  • 问答 (1)
  • 收藏
  • 关注

原创 软件测试基础

软件测试基础知识,如测试模型和开发模型

2023-08-14 08:57:21 62

原创 【Java】Spring中事务的隔离级别和事务的传播机制

@Transactional注解的使用,Spring中事务的隔离级别,Spring中事务的传播机制

2023-08-10 22:43:22 522

原创 【Java】SpringBoot的统⼀用户登录权限验证、统⼀异常处理与统⼀数据返回格式

Spring AOP实战:统一用户登陆权限验证、统一异常处理、统一数据返回格式

2023-08-07 22:18:22 248

原创 【Java】Spring AOP的组成、实现以及Spring AOP的实现原理(动态代理)

AOP(Aspect Oriented Programming)是面向切面编程,它是一种思想,它是对某一类事情的集中处理。AOP的组成、Spring AOP的实现及实现原理、代理模式、JDK动态代理和CGLIB动态代理。

2023-08-05 15:50:55 158

原创 【Java】配置 MyBatis 开发环境,使用MyBatis操作数据库进行增改查删

MyBatis 是⼀款优秀的持久层框架,它支持⾃定义 SQL、存储过程以及高级映射。MyBatis 去除了几乎所有的 JDBC 代码以及设置参数和获取结果集的工作。简单来说 MyBatis 是更简单完成程序和数据库交互的工具,也就是更简单的操作和读取数据库工具。

2023-08-02 22:42:41 338

原创 【Java】创建Spring MVC项目,以及建立连接的方式(@RequestMapping)、获取参数的方式(@RequestBody...)和返回结果的方式(@ResponseBody)

Spring Web MVC 是基于 Servlet API 构建的原始 Web 框架,从⼀开始就包含在 Spring 框架中。MVC 是 Model View Controller 的缩写,它是⼀种软件架构模式,它把软件系统分为模型、视图和控制器三个基本部分。Model(模型)是应用程序中用于处理应⽤程序数据逻辑的部分。通常模型对象负责在数据库中存取数据。View(视图)是应用程序中处理数据显示的部分。通常视图是依据模型数据创建的。Controller(控制器)是应⽤程序中处理⽤户交互的部分。

2023-07-30 20:10:26 638

原创 【Java】Spring Boot的创建和使用,以及配置文件(.properties和.yml)和日志文件(LoggerFactory和lombok)

Spring Boot的创建和使用,配置文件.properties和.yml的使用,日志的打印,包括LoggerFactory和lombok

2023-07-27 16:15:08 935

原创 【Java】Spring关于Bean的存和取、Spring的执行流程以及Bean的作用域和生命周期

Bean的存和取,存储Bean的五大注解,获取Bean的三种注入方式,Bean的作用域,设置作用域,Spring的执行流程,Bean的生命周期

2023-07-25 14:53:05 596

原创 【Java】Spring core和设计思想

我们通常所说的 Spring 指的是 Spring Framework(Spring 框架),它是⼀个开源框架,有着活跃⽽庞⼤的社区,这就是它之所以能⻓久不衰的原因。Spring ⽀持⼴泛的应⽤场景,它可以让 Java 企业级的应⽤程序开发起来更简单。1.学习框架相当于从“⼩作坊”到“⼯⼚”的升级,⼩作坊什么都要⾃⼰做,⼯⼚是组件式装配,特点就是⾼效。2.框架更加易⽤、简单且⾼效。

2023-07-21 22:18:37 77

原创 【Java】Servlet实现前后端分离的博客系统

通过Servlet实现前后端分离的博客系统,包括登录、获取文章列表、查看文章详情、发布文章、删除文章、注销登录等功能。

2023-07-17 21:36:51 263

原创 【Java】JVM执行流程、类加载过程和垃圾回收机制

JVM的执行流程、类加载的过程、双亲委派机制、死亡对象的判断算法、垃圾回收的过程、垃圾收集器

2023-07-14 15:13:14 1216

原创 【Java】Servlet之登录和上传文件的简单实现

当第一次打开一个浏览器访问某个网页时,服务器会分配了一个随机字符串(Token),并存储当前的会话信息(页面)。当第二次再次访问时,在header中携带上这个随机字符串(Token),服务器就可以通过自己维护的HashMap根据传进来的随机字符串作为key,找到相应的会话,从而使别是哪一个浏览器访问了这个服务器。打开控制台可以看到,登陆成功之后,服务器在给浏览器发了一个set-Cookie字段, 当浏览器的响应头接收到set-Cookie这个字段时,浏览器就会把对应的JSESSIONID存在本地。

2023-07-12 22:39:18 807

原创 【Java】Servlet之数据库版本的留言墙实现

1.用户通过前端向后端提交数据。通过Ajax实现。2.服务器接收数据并校验。通过Servlet实现。3.通过Java进行数据库操作。通过JDBC实现。4.获取数据库操作的结果,并为用户构造响应。通过Json实现。建库后端实现定义与数据库对应的类Message获取数据库连接Message类访问数据库实现结果继续加油~

2023-07-12 17:45:36 108

原创 【Java】Servlet的执行原理、API以及实现简单的前后端分离的计算器

在 Tomcat 启动阶段, Tomcat 已经根据注解的描述,创建了 HelloServlet 的实例,然后把这个实例放到了 Servlet 数组中,后面我们根据请求的 URL从数组中获取到了该 HelloServlet 实例,但是我们是通过 Servlet ins这样的父类引用来获取到 HelloServlet 实例的。浏览器也通过 Socket 读到这个响应(一个字符串), 按照 HTTP 响应的格式来解析这个响应. 并且把body 中的数据按照一定的格式显示在浏览器的界面上。

2023-07-11 19:23:29 276

原创 【Java】Tomcat、Maven以及Servlet的基本使用

Tomcat 是一个 HTTP 服务器。前面我们已经学习了 HTTP 协议, 知道了 HTTP 协议就是 HTTP 客户端和 HTTP 服务器之间的交互数据的格式。HTTP 服务器可以通过 Java Socket 来实现,而 Tomcat 就是基于 Java 实现的一个开源免费, 也是被广泛使用的 HTTP 服务器。

2023-07-10 14:35:32 1078

原创 【网络原理之三】应用层协议HTTP和HTTPS

HTTP:超文本传输协议。是一种应用非常广泛的应该层协议。所谓 “超文本” 的含义, 就是传输的内容不仅仅是文本(比如 html, css 这个就是文本), 还可以是一些其他的资源, 比如图片,视频, 音频等二进制的数据。完整应用是由前端+后端构成的,而前、后端之间的通讯是要依靠 HTTP来完成的。这就像消费者在网上买东西一样,商家和买件之间,需要一个快递公司,而 HTTP 就是这个快递公司,其中的请求方法GET/POST 相当于不同类型的快递类型(标准快递、加急快递)。

2023-07-06 18:03:13 879 1

原创 【网络原理之二】网络层的IP协议、数据链路层的以太协议和MTU

网络层的IP协议、IP地址管理、路由选择、数据链路层的以太网协议以及MTU(最大传输单元)对IP协议、UDP协议和的TCP协议的影响。

2023-07-04 16:34:14 1050

原创 【网络原理之一】应用层协议、传输层协议UDP和TCP,TCP的三次握手和四次挥手以及TCP的可靠和效率机制

应用层协议、传输层协议TCP和UDP、三次握手和四次挥手、TCP的可靠和效率机制(确认应答、超时重传、连接管理、滑动窗口、流量控制、拥塞控制、延迟应答、捎带应答、面向字节流以及异常情况处理)

2023-07-04 15:59:32 1375

原创 【Java】网络编程与Socket套接字、UDP编程和TCP编程实现客户端和服务端通信

网络编程,指网络上的主机,通过不同的进程以程序的方式实现网络通信(网络数据传输)。注意也可以是同一个主机的不同进程,比如,MySQL的服务端也客户端,在开发环境一般都是在同一台主机上运行的两个不同的程序。

2023-06-30 11:13:27 2512

原创 【Java】网络通信基础、协议分层及封装分用

网络互连的目的是进行网络通信,也就是网络数据传输,更具体一点,是网络主机中的不同进程间基于网络来传输数据。

2023-06-28 11:12:50 368

原创 【Java】文件的操作与输入输出流

硬盘上保存的数据,都是“文件”来组织的,本质上都是二进制或是字符组织的数组,被打包成一个文件存在硬盘上。常见的文件有图片,文本,可执行文件,音频,视频…文件夹也是一种特殊的文件,也叫目录通常所说的文件都是存储在硬盘上面的,硬盘的特点:1硬盘容量大,内存容量小。4.硬盘上的数据断电不丢失,内存中的数据断电丢失。对于Linux来讲,所有的计算设备(网卡、键盘、打印机…)都会被描述(抽象)成文件。当一个进程启动后去申请计算机资源时,系统会把他所有用到的资源以文件的形式分配给进程,并加入到对应的文件描述符表中。

2023-06-21 09:56:13 4122 3

原创 【Java】死锁问题及ThreadLocal

多个线程同时被阻塞,它们中的一个或者全部都在等待某个资源被释放。由于线程被无限期地阻塞,因此程序不可能正常终止。这是一个最严重的BUG之一。

2023-06-20 21:52:43 438

原创 【Java】JUC下的常用接口和类

java.util.concurrent包简称JUC,是JDK1.5之后对多线程的一种实现,这个包下的类都和多线程有关。主要介绍Callable接口、ReentrantLock、原子类、工具类、CopyOnWriteArrayList、ConcurrentHashMap。

2023-06-19 17:21:45 303

原创 【Java】再谈synchronized关键字(原理)

synchronized在不同时期可能会用到不同的锁策略,锁升级,锁粗化,锁消除

2023-06-14 20:38:46 109

原创 【Java】常见的锁策略及CAS

1.先获取预期值;2.通过CAS指定完成比较并交换;3.如果在CAS的过程中预期值与真实值不相等,就进入自旋;4.ABA问题,主要给预期值加一个版本号,在比较的时候同时比较真实值和版本号。

2023-06-07 22:48:12 278 1

原创 【Java】线程池的概念及使用、ThreadPoolExecutor的构造方法

在之前JDBC编程中,通过DataSource获取Connection的时候就已经用到了池的概念。这里的池指的是数据库连接池。当Java程序需要数据库连接的时候就从池子中拿一个空闲的连接对象给Java程序,Java程序用完连接之后就会返回给连接池。线程池就是在池子里放的是线程本身,当程序启动的时候就创建出若干个线程,如果有任务就处理,没任务就阻塞等待。

2023-06-06 11:38:00 1054 1

原创 【Java】一文搞懂生产者和消费者模型

阻塞队列、消息队列、消息队列的作用、阻塞队列和生产者消费费者模型的实现

2023-05-31 11:34:10 665

原创 【Java】单例设计模式-饿汉模式和懒汉模式

单例是一种设计模式。单例指的是在全局范围内只有一个实例对象。比如在学习JDBC编码时使用的DataSource,定义了数据库的用户名,密码和连接串,定义好这些属性之后就可以通过DataSource的实例对象获取数据库连接。设计模式是大牛们根据以往的程序设计经验,总结出的一套方法,类似于棋谱。

2023-05-30 11:11:25 701

原创 【Java】wait和notify方法

wait方法及wait与join的区别、wait与sleep的区别,notify与notifyAll。

2023-05-29 10:45:35 439

原创 【Java】volatile和内存屏障

内存不可见的现象,缓存一致性协议,内存屏障

2023-05-25 11:30:27 682

原创 【Java】解析synchronized中的锁对象

synchronized中的锁对象解析

2023-05-24 15:33:33 490

原创 【Java】初识synchronized关键字

synchronized的使用方法,可以修饰普通对象方法、修饰静态方法和代码块。synchronized的特性和注意事项。

2023-05-23 11:36:41 143

原创 【Java】线程不安全的现象和成因

线程不安全的现象,造成线程不安全的原因,包括多个线程修改了同一个变量、线程是抢占式执行的、原子性问题、内存可见性问题以及指令的有序性问题。JMM模型是什么。

2023-05-22 11:29:32 204

原创 【Java】线程的状态及维护方式

线程的状态,系统维护线程状态的方式,使用工具查看线程及状态

2023-05-19 11:37:17 178

原创 【Java】Thread类常见的方法和属性

构造方法,是否后台线程,是否存活,线程中断,start()和run()方法,join()方法,获取当前线程,休眠当前线程

2023-05-18 22:23:02 146

原创 【Java】创建线程的几种方式

继承Thread类,实现Runnable接口,匿名内部类,Lambda表达式

2023-05-13 14:55:37 121

原创 【Java】进程和线程

什么是进程,进程的管理,并发和并行,虚拟内存空间,什么是线程,进程和线程的区别,使用多线程编程的原因,多线程存在的问题

2023-05-09 21:53:21 110

原创 MySql-JDBC编码

JDBC的一些常用接口和类,以及查询、删除和添加的示例。

2023-05-06 15:40:19 257

原创 MySql-索引事务

为了提高查询效率, 使用一种数据结构把数据组织起来索引的使用。索引的分类,索引使用的数据结构,索引失效,通过索引查询。事务的使用,事务的特性,事务的隔离级别。

2023-05-05 16:26:29 113

原创 MySql-增查改删【二】

数据库约束,表的设计,插入查询结果,聚合查询,group by,having,联合查询,内连接,外连接,自链接,子查询,合并查询

2023-05-04 09:28:19 115

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除