自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 收藏
  • 关注

原创 软件测试学习(一)

软件是控制计算机硬件工作的工具。软件基本组成:客服端、服务器、数据库软件产生过程:需求产生->需求文档->设计效果图->产品开发->产品测试->部署上线软件测试的定义:使用技术手段来验证软件产品是否满足使用需求。软件测试的目的:减少软件缺陷,保障软件的质量!

2024-04-03 20:45:39 861

原创 Pytest测试框架+allure+jenkins自动化持续集成

Pytest是python的一种单元测试框架,可通过pytest 目录路径来运行测试用例可以通过断言assert来测试是否通过。

2024-03-22 23:10:23 546

原创 Python机器学习多元线性回归算法预测数据

使用openpyxl保存未来预测的数据。训练数据集使用过去30天的营销数据。

2024-03-10 21:36:57 165

原创 Python+Selenium4 Web自动化测试框架学习(一)

2.根据CLASS_NAME定位在根据CLASS_NAME定位时,有些class的名称中间有空格,不能直接根据名称定位,这样是错误用法,但是,将空格改为 . 就能找到。在抖音的搜索框中,其id名称明明为中间一个空格,实际却需要换成 . 才能成功找到。

2024-03-03 16:48:43 701

原创 Linux学习(四)文件及虚拟内存

本块内容学习文件:文件内容操作:创建,打开文件读写文件文件内容指针操作关闭保存文件文件操作:拷贝,复制,移动,获取文件信息文件映射文件夹遍历。

2024-02-19 17:04:15 715

原创 Linux学习(三)shell编程

语法:thenelsefi#shell判断语句n=10m=10thenelseecho "$n!=$m"fiecho "结束"

2024-02-15 23:29:49 950

原创 Linux学习(二)Makefile与GCC

程序运行步骤,预处理->预编译->编译->链接。

2024-02-15 15:25:21 241

原创 SpringBoot中的注解大全(长期更新)

该注解是用来标识某个方法为异常那个处理方法@ExceptionHandler注解中可以添加参数,参数是某个异常类的class,代表这个方法专门处理该类异常。

2024-01-17 22:12:28 364

原创 SpringBoot业务层开发常见问题

需要向前端返回的数据为List使用stream操作,支持多级。

2023-12-13 17:28:41 367

原创 Mybatis-plus学习笔记

实现类中在继承时,需指定对应的mapper文件和对应的实体。在Iservice的实现类ServiceImpl中有自动注入private M baseMapper;实际上底层还是调用的baseMapper的很多方法。

2023-10-04 20:06:35 268

原创 Linux学习(一)基本命令

Linux由两层组成shell(衣服)和kernel(内核,C语言写的程序),命令为一个可执行程序文件。所有的文件都在根目录下(只有一个盘符).开头的为隐藏文件。

2023-08-24 14:23:36 112

原创 Nginx快速入门

C写的轻量级服务器。

2023-08-24 12:52:32 206

原创 vue整合SSM项目实战

通过视图层和模型层进行绑定。在模型层中定义好后,通过{{username}} 方式来进行实现,实时绑定。

2023-08-22 19:20:19 256

原创 SpringBoot学习笔记

SpringMVC提供,在类上加上该注解,表示该类所有接口返回的结果都是为JSON格式。相当于在该类中的接口上都加上了@ResponseBody注解,如果不加该注解,接口默认返回页面跳转。

2023-08-21 16:52:37 44

原创 SpringMVC学习笔记

SpringMVC底层基于Servlet1. 环境问题tomcat和JDK版本不匹配时,会出现很多奇奇怪怪的bug,,所以,得使用匹配的JDK版本。Tomcat10以前用的javax,不是Jakartajavax.servlet是jdk8以及以前的版本原生的api

2023-08-16 18:18:24 36

原创 spring5学习笔记其一

通过xml形式来配置bean对象时,当一个类中,有其他类的对象做成员属性时,可以使用ref外部bean对象或者property注入内部对象的方式来描述。对list提取出公共配置,在spring的配置文件中,若该对象有多个list属性,并且list的值有公共部分,注入属性值比较麻烦,可提取出来。底层是在类中自己实现需要返回哪个类。注入bean对象时,需要写出类的set方法,底层也是基于这个set函数来给类的成员属性赋值的。这样注入属性值时,需要在类中写出对应属性的set方法,不然会出错。

2023-08-09 17:59:19 39 1

原创 Mybatis学习(不说废话)

MyBatis是一个开源的Java持久层框架,它通过XML或注解的方式,将SQL语句与Java对象进行映射,实现了数据库操作的简化。使用MyBatis,可以更方便地进行数据库的增删改查操作,避免了手动编写大量的JDBC代码。MyBatis提供了灵活、易用的API,同时也支持动态SQL,使得开发人员能够更灵活地构建复杂的数据库查询语句。它与Spring等主流的Java框架集成良好,广泛应用于Java项目中的数据库访问层。ORM:对象关系映射。

2023-08-07 14:39:50 44 1

原创 Maven管理项目

在maven的目录conf中settings.xml可配置仓库的私服。1. 先到本地仓库(当前计算机上)有查找jar包,再去私服查找。install方法:将当前项目打包成一个jar包存入本地仓库。compile方法:编译该项目,得到.class文件。2. 再在maven中央仓库中查找,有的话缓存到本地。3. maven本地仓库为电脑上所有项目共享。clean方法:清楚生成的target目录。4. 有maven私服部署在国内或企业内部。在pom.xml文件中可以引入依赖。

2023-08-04 18:32:33 51 1

原创 JavaWeb开发(全)

Servlet是一种Java编程语言的服务器端组件,用于处理来自客户端的请求并生成响应。它是Java EE(Java Enterprise Edition)规范的一部分,用于构建基于Web的应用程序。Servlet运行在Web服务器中,并根据客户端的请求执行相应的动作。它可以处理各种类型的请求,如HTTP请求(GET、POST等),并生成动态的HTML页面或其他类型的响应数据。Servlet通过Java编程语言编写,并部署到支持Servlet规范的Web服务器中。

2023-08-04 13:42:29 1659 4

原创 Java中的JDBC技术

JDBC(Java Database Connectivity)是Java编程语言中用于连接和操作数据库的标准API。它提供了一组接口和类,使Java应用程序能够与关系型数据库建立连接,并进行数据的读取、写入、更新和删除等操作。JDBC的工作原理是通过使用不同的数据库驱动程序(Driver)来实现与各种数据库的通信。每个数据库提供商通常都会提供自己的JDBC驱动程序,开发人员只需按照JDBC API的标准接口编写代码,通过加载相应的驱动程序,就能连接到特定的数据库。

2023-07-25 16:26:05 218 4

原创 Mysql中的基础知识(速成版)

DDL是指数据定义语言(Data Definition Language),是一种用于定义和管理数据库结构的语言。DDL通常用于创建、修改和删除数据库对象,如表、视图、索引等。常见的DDL操作包括:1. CREATE:用于创建数据库对象,如表、视图、索引等。例如,CREATE TABLE用于创建表。2. ALTER:用于修改数据库对象的结构。例如,ALTER TABLE用于修改表的结构,如添加、修改或删除列。3. DROP:用于删除数据库对象。例如,DROP TABLE用于删除表。

2023-07-21 16:32:31 193 3

原创 JavaSE中AQS详解

在Java中,AQS是指AbstractQueuedSynchronizer,是Java并发编程中的一个关键类。AQS是用来构建同步器(Synchronizer)的框架,它提供了一种实现线程安全性和管理等待线程的机制。AQS基于一个FIFO(先进先出)的等待队列,可以被子类扩展来实现各种同步器,如ReentrantLock、CountDownLatch、Semaphore等。AQS通过定义了若干个方法来管理线程的获取和释放资源,其中最为重要的方法是acquire()和release()。

2023-07-17 15:36:16 164 2

原创 Java中ThreadLocal详解

通常情况下,当多个线程共享同一个变量时,需要考虑线程安全性和同步问题。而使用ThreadLocal可以避免这种复杂性,因为每个线程都有自己的变量副本,互相之间不会相互干扰。通过使用ThreadLocal,可以方便地实现线程封闭(Thread Confinement)的效果,将状态与线程相关联,提供线程安全的对象访问。在Web应用程序中,常用的应用场景包括保存用户会话信息、数据库连接等。需要注意的是,使用ThreadLocal需要谨慎,因为变量的值只在当前线程中可见,可能会导致内存泄漏或者数据不一致的问题。

2023-07-15 08:00:00 348 1

原创 Java中JUC并发编程面试题

首先我们来了解一下Java中都有哪些锁:1.(Pessimistic Locking):悲观锁认为在并发环境下,会发生并发冲突的概率很高,因此假设总是会有其他线程来竞争同一个资源,所以在访问资源之前先对其进行加锁,确保每次只有一个线程能够访问。2.(Optimistic Locking):乐观锁认为在并发环境下,发生并发冲突的概率较低,因此每次访问资源时都不会加锁,而是先读取数据,并在更新数据之前再次校验数据是否发生变化。如果校验通过,则更新数据;如果校验不通过,则重新尝试。

2023-07-14 08:00:00 126 1

原创 Java中的JUC指什么?

在Java中,JUC通常指的是Java并发工具包(Java Concurrency Utilities),它是Java提供的一组用于处理多线程编程和并发操作的工具类和框架。JUC包含了很多有用的类和接口,用于管理并发访问、同步操作、线程池、原子操作、阻塞队列等。2. Conditions(条件):用于线程间的协调和通信,比如通过await()和signal()方法实现等待、通知机制。通过使用JUC提供的类和接口,开发人员可以更方便地进行多线程编程和并发操作,提升程序的性能和可靠性。

2023-07-12 15:39:16 693 1

原创 Juc并发编程之线程池实现原理

此篇文章属于Java语言必学基础内容线程池是一种用于管理和重用线程的技术。在计算机编程中,线程池是一组已经创建并准备好执行的线程。它们被组织在一个池中,以便在需要时,可以从池中获取一个线程来执行任务,而不是每次都创建一个新的线程。线程池的优点在于可以减少频繁创建和销毁线程的开销,提高线程的重用率和执行效率。通过使用线程池,可以控制并发线程的数量,从而避免由于大量线程同时执行而导致的资源过度消耗和性能下降的问题。线程池还可以提供一些额外的功能,例如任务调度、优先级管理和线程状态监控等。

2023-07-12 15:28:22 91 1

原创 Java中Socket编程

HTTP(Hypertext Transfer Protocol)是一种用于在客户端和服务器之间传输数据的协议。它是现代web通信的基础,用于在客户端(如浏览器)和服务器之间传递HTML、图片、视频、文件等数据。HTTP协议的特点包括:1. 简单易读:HTTP协议使用简单的文本格式,易于阅读和理解。2. 基于请求-响应模型:客户端发送一个HTTP请求给服务器,服务器则返回一个HTTP响应。请求和响应之间包括头部和消息主体。

2023-07-11 12:26:57 1745 1

原创 Java中Lock锁详解

在Java中,Lock是一个接口,它提供了比关键字更高级的线程同步机制。使用Lock接口可以创建更复杂和灵活的同步结构。Lock接口的常用实现类有ReentrantLock和ReentrantReadWriteLock,它们提供了可重入的互斥锁和读写锁。使用Lock锁的一般步骤如下:1. 创建一个`Lock`对象实例。2. 在需要进行同步的代码块中,通过调用`lock()`方法来获取锁。3. 在同步的代码块执行完之后,通过调用`unlock()`方法释放锁。

2023-07-08 13:19:00 5893 1

原创 Java中多线程的join方法详解

因为子线程执行需要2秒,所以在指定时间内子线程没有执行完成,主线程解除阻塞后继续执行。因为子线程执行需要一定时间(2秒),所以主线程会暂时被阻塞,直到子线程执行完成。方法的线程会等待被加入线程执行完成,然后再继续执行自己的后续操作。方法是用于将一个线程加入到当前线程,并且让当前线程等待被加入线程执行完成后再继续执行。毫秒的时间,如果在指定时间内被加入线程没有执行完成,那么当前线程会解除阻塞继续执行。在上述示例中,主线程创建并启动了一个子线程,并调用子线程的。方法的线程会等待被加入线程。

2023-07-06 13:33:00 2202 1

原创 Java中的synchronized锁

在Java中,synchronized是一种关键字,用于实现线程同步。它可以用于方法或代码块,用于保证同一时间只有一个线程可以执行被synchronized修饰的代码。synchronized的锁机制有两种使用方式:1. 同步方法:可以在方法声明中使用synchronized关键字。当一个线程调用同步方法时,会自动获取该方法所属对象的锁,其他线程将被阻塞,直到该线程释放锁为止。2. 同步代码块:使用synchronized关键字可以修饰一段代码块。

2023-07-06 12:22:56 1246 1

原创 Java中的ConcurrentHashMap集合

ConcurrentHashMap其采用分段锁设计,将一个大的线程安全的HashTable集合拆分成n多个小的HashTable集合,默认初始化16个小的HashTable集合。锁竞争概率非常小(即线程阻塞概率非常小)JDK1.7的index需要计算两次。ConcurrentHashMap是Java提供的线程安全的哈希表,它在多线程环境下提供高效的并发操作。它的底层实现原理是基于分段锁(Segment)和CAS(Compare and Swap)操作。

2023-07-04 15:05:45 287

原创 JavaSe多线程技术

此篇文章属于Java语言必学基础内容多线程技术是指在一个程序中同时运行多个线程(也可以理解为多个独立的任务),并且这些线程可以并行执行,从而提高程序的效率和性能。在多线程技术中,每个线程都有自己的代码执行路径、堆栈和局部变量等,但是它们共享进程的地址空间和全局变量等资源。多线程技术的应用广泛,例如:1. 在操作系统中,多线程技术可以用于实现任务调度、I/O操作、网络通信等。2. 在图形界面程序中,多线程技术可以用于实现用户界面响应和数据更新等。

2023-07-03 14:50:02 76 1

原创 Java中的IO流及其API的使用

此篇文章属于Java语言必学基础内容Java IO流是指在Java程序中操作输入和输出的机制。它是一种基于流的输入/输出模型,将数据视为一系列按顺序排列的字节,从一个流中读取,在一个流中写入。Java提供了多种类型的流,包括字节流和字符流,以适应不同的数据类型和输入/输出方式。它在Java的文件读写、网络传输、数据处理等方面都有广泛应用。IO流是Java中提供的处理输入输出数据的机制,它是以流的方式来处理数据。其中,输入流是从外部读取数据到程序中,输出流是将程序中的数据写入到外部。

2023-07-01 20:31:38 212

原创 JavaSe中的递归算法

Java的递归算法是一种解决问题的方法,它将问题逐步分解为更小的子问题,直到问题的规模足够小可以直接解决。递归算法通常在函数内部调用自身,并通过参数传递问题的规模和状态。递归算法典型的应用包括查找、排序、遍历和解决数学问题等。注意:在Java中,递归算法的实现需要注意处理递归终止条件和避免出现死循环。递归调用属于算法的一种,通过多加理解,可以掌握得更好,加油!

2023-06-28 16:17:38 70 1

原创 JavaSe基础File类相关知识

此篇文章属于Java语言必学内容提示:以下是本篇文章正文内容,下面案例可供参考Java 的 File 类表示文件或目录的抽象路径名。它可以用于访问或操作文件系统中的文件和目录,例如创建、删除、重命名、移动文件或目录等。File 类提供了多种构造方法,可以通过文件或目录的路径名字符串、URI 或 File 实例来创建 File 对象。File 类也提供了多种实例方法,例如获取文件名、路径名、父目录等信息以及判断文件或目录是否存在、是否为文件或目录等。

2023-06-27 21:00:32 61

原创 Java语言中HashMap集合面试常问问题

Java中HashMap集合在JDK1.8版本时基于 数组+链表+红黑树实现的,查询效率为O(1)使用内部类Entry来描述键值对对象

2023-06-26 18:27:06 296 2

vue整合SSM项目实战

Vue是一个用于构建用户界面的JavaScript框架,而SSM则是Spring+SpringMVC+MyBatis的组合,是一种Java后端开发框架。整合Vue和SSM框架可以实现前后端分离的开发模式,通过前端的Vue框架实现页面展示和交互,后端的SSM框架负责处理数据和业务逻辑。 在整合Vue和SSM框架时,需要按照以下步骤进行: 1. 创建一个基于SSM框架的后端项目,包括Spring、SpringMVC和MyBatis的配置文件,以及相应的Java代码和数据库连接等。可以使用Maven或Gradle来管理项目依赖。 2. 在后端项目中创建RESTful接口,用于处理前端请求,并返回相应的数据。可以使用SpringMVC来进行请求路由和参数绑定。 3. 在前端项目中使用Vue框架进行页面开发。可以使用Vue CLI或其他工具来初始化项目,生成基础的目录结构和配置文件。 4. 在Vue项目中,通过HTTP请求(如axios)调用后端的接口,并处理返回的数据。可以将后端接口的URL配置在一个统一的地方,方便管理和修改。 5. 在Vue项目中,根据需要设计和组织页面的组件,

2023-08-22

整合SpringMVC、Spring、Mybatis开发信息管理系统

SpringMVC、Spring和MyBatis是Java开发中常用的框架,它们可以一起使用来开发信息管理系统。 首先,SpringMVC是一个基于MVC(Model-View-Controller)设计模式的轻量级Web框架,它可以处理Web请求和响应。它提供了一种简单而灵活的方式来构建Web应用程序。使用SpringMVC,你可以定义处理器方法(Controller),并使用注解将这些方法映射到特定的URL路径。此外,SpringMVC还提供了与视图解析器一起使用的功能,用于将模型数据渲染为最终的响应。 Spring框架是一个全功能的应用程序开发框架,它提供了许多功能和组件,以简化Java开发。Spring框架主要解决了企业级应用程序开发中的各种问题,如依赖注入(Dependency Injection)、面向切面编程(Aspect-Oriented Programming)和事务管理等。通过使用Spring框架,你可以更加轻松地编写可测试、可扩展和可维护的代码。在信息管理系统中,你可以使用Spring框架来管理各个层之间的依赖关系,并提供一种声明式的事务管理机制。 MyBa

2023-08-16

基于JDBC+servlet+jsp技术开发的航班管理系统学习项目

航班管理系统是一个用于管理航空公司航班信息的系统。基于JDBC(Java Database Connectivity)、Servlet和JSP(JavaServer Pages)技术开发的航班管理系统可以实现用户注册、登录、航班查询、航班预订、航班退订等功能。 在开发这个项目时,你可以使用以下资源来学习和了解相关技术: 1. Java SE(Standard Edition):作为开发语言,你需要熟悉Java的基本语法、面向对象编程和异常处理等。 2. JDBC:Java程序与数据库之间的连接技术。了解并学习如何使用JDBC API连接数据库、执行SQL语句以及处理数据库结果集。 3. Servlet:Java Servlet是用于处理HTTP请求和响应的Java类。学习如何创建Servlet、处理表单数据、进行数据验证和错误处理等。 4. JSP:JavaServer Pages是一个用于创建动态网页的Java技术。学习如何使用JSP编写网页模板、表单处理、数据展示和业务逻辑处理。 5. MySQL(或其他数据库):选择一个适合的关系型数据库管理系统(如MySQL)作为数

2023-08-04

基于JDBC的Java连接数据库的学生管理系统(若不能成功运行可私信我!!!)

使用语言:Java 使用技术:JDBC、Mysql数据库 学生管理系统是一个基于JDBC(Java Database Connectivity)的应用程序,用于管理学校或机构的学生信息。该系统可以通过与数据库进行交互,实现学生信息的添加、查询、更新和删除等功能。以下是该系统涉及的一些资源描述: 1. 数据库:学生管理系统使用关系型数据库来存储学生信息。常见的数据库管理系统如MySQL、Oracle、PostgreSQL等都可以用作后端数据库。数据库中一般会有一个或多个表来存储学生的基本信息,包括学生ID、姓名、性别、年龄、联系方式等字段。 2. JDBC驱动程序:JDBC驱动程序是用于与数据库建立连接和执行SQL语句的软件组件。开发者需要根据所使用的数据库选择相应的JDBC驱动程序,并将其加载到Java应用程序中。驱动程序提供了一组API,供开发者编写Java代码与数据库进行交互。 3. 连接管理器:连接管理器负责管理与数据库的连接。它负责建立与数据库的连接、分配连接给应用程序进行数据库操作,以及在不使用连接时释放连接资源。连接管理器可以通过连接池技术来提高系统的性能和可伸缩性。

2023-07-25

空空如也

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

TA关注的人

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