Java

VS Code 开发工具的基本使用

VS Code 开发工具的基本使用 VS Code(Visual Studio Code)是微软开发的一款免费、开源的代码编辑器,它支持多种操作系统,包括Windows、macOS和Linux。VS Code因其轻量级、快速、功能强大以及丰富的插件生态系统而广受开发者喜爱,特别是在前端开发领域,VS Code提供了许多便捷的工具和插件来支持HTML的开发。以下是关于VS Code在HTML开发中的

流式查询2、mybatis的ResultHandler 每次查询返回定义的500条

流式查询2、mybatis通过用ResultHandler 流式查询,每次查询返回定义的500条,再去批量处理(可异步并发): package com.aswatson.cdc.redis.schedule; import com.aswatson.cdc.redis.common.lock.DistLock; import com.aswatson.cdc.redis.common.lock.

spingboot整合netty服务器端

spingboot整合netty服务器端 1、引入pom 2、创建服务netty服务器 3、创建ChannelHandler 4、创建管道拦截器(用于处理业务逻辑,通常一个拦截器就够了) 4.1、管道拦截器1 4.2、管道拦截器2 5、定义事件 可以跑一下这个demo试一下自定义事件,感觉这个一般没啥用。

android studio 生成报Execution failed for task ':app:extractDeepLinksDebug'.

* What went wrong:Execution failed for task ':app:extractDeepLinksDebug'.> Unable to make field private final java.lang.String java.io.File.path accessible: module java.base does not "opens java.io

arraylist深拷贝(深复制)

在Java中,ArrayList 的深拷贝可以通过构造一个新的 ArrayList 实例并将原始列表中的元素添加到新列表中来实现。这样做可以确保新列表拥有原始列表中所有元素的独立副本,而不是引用。 参考:百度AI

xss学习及xss-lab解题记录

什么是XSS(跨站脚本攻击) SQL注入是服务端将用户输入的数据当成SQL代码去执行 XSS可以理解为服务端把用户输入的数据当成前端代码去执行 前端代码->主要是js代码 两个关键条件: 第一个是用户能够控制输入 第二个是原本程序要执行的代码,拼接了用户输入的数据 XSS主要拼接什么 SQL注入拼接的是操作数据库的SQL语句。 XSS拼接的是网页的HTML代码 一般而言我们是可以拼接出合适的

开发中代码优化小方法

--------------------------------------------------------------------------------------------------------------------------------------------------------- 1.校验字段: 第一:检验,报错直接抛出异常: Objects.requireNonNul

初步学习JDNI注入

最近学习java安全,JDNI注入必需了解,进行初步的学习 首先JNDI注入对JAVA版本是有限限制的,本地是1.8.0_2.0.1超过了191,所以最开始拿符合版本方法复现没有成功 java版本查看 JNDI(Java Naming and Directory Interface)是一个应用程序设计的 API,一种标准的 Java 命名系统接口。 JNDI 注入,即当开发者在定义 

@Repository 和@Mapper 有什么区别,应该分别怎么使用?

@Repository 和 @Mapper 都是用于标识DAO(Data Access Object)类的注解,但它们的用途和功能有所不同。以下是它们的详细区别和使用方法: @Repository @Repository 是Spring框架提供的注解,主要用于标识数据访问层(DAO)类。 特点 Spring组件: @Repository 是一个Spring组件注解,表示该类是一个Spring

[LeetCode] 3096. Minimum Levels to Gain More Points

You are given a binary array possible of length n. Alice and Bob are playing a game that consists of n levels. Some of the levels in the game are impossible to clear while others can always be cleared

Leetcode——349-两数组交集

题目描述 给定两个数组 nums1 和 nums2 ,返回 它们的 交集 。输出结果中的每个元素一定是 唯一 的。我们可以 不考虑输出结果的顺序 输入:nums1 = [1,2,2,1], nums2 = [2,2] 输出:[2] 提示: 1 <= nums1.length, nums2.length <= 1000 0 <= nums1[i], nums2[i] <

配置类方式管理Bean

配置类方式管理Bean 1.完全注解开发 配置类是用来替代 xml 配置文件 在注解+xml方式开发中,第三方的类还是需要在xml中去配置。而使用配置类可以在方法上用注解来替代xml标签 这种开发方式叫做完全注解开发。   2.配置类 2.1无第三方组件 在没有引入第三方类的情况下,xml文件中,有扫描注解的包和引入外部文件的标签。<context:component-scan 和

Vue3动态生成组件

在 Vue 3 中,要遍历 funConfig 并动态生成组件,可以使用 Vue 的 defineAsyncComponent 来加载异步组件,并结合 v-for 指令在模板中进行渲染。 以下是一个示例代码来实现这个需求: 1. 配置文件 确保配置文件导出的是一个 reactive 对象: 2. Vue 组件 在 Vue 组件中,使用 defineAsyncComponent 来动态加载组件,并

Java基础-Java代码变成机器可执行代码过程

1 Javac编译 因为JVM把Javac把Java代码编译成字节码,即把.java文件变成.class文件,JVM(Java虚拟机)可以理解字节码文件, 将其转换为机器可以执行的代码,所以只要安装了JVM的平台,都可以运行Java程序。 2 JVM Javac编译后,Java文件就变成了字节码文件,JVM类加载器会去加载字节码文件,然后由解释器来解释执行,这一步是比较慢的,而程序中有一部分代码是

Java基础-基本类型和包装类型

基本类型 Java有八种基本类型 int float double long boolean char short byte 基本类型如果是局部变量,那它们的位置会在虚拟机栈种。如果是成员变量它们会存放在堆中。 包装类型 相对应的Java也有八种包装类型 Int Float Double Long Boolean Char Short Byte 区别 1.默认值:基本类型都各自有自己的默认

苍穹外卖学习笔记——第七天

缓存商品、购物车 缓存菜品 问题说明 用户端小程序展示的菜品数据都是通过查询数据库获得,如果用户端访问量比较大,数据库访问压力随之增大,从而导致系统响应慢、用户体验差。 实现思路 通过Redis来缓存菜品数据,减少数据库查询操作,具体流程如下: 缓存逻辑分析: 每个分类下的菜品保存一份缓存数据,其中缓存数据的key为“dish_分类id”,value为对应菜品数组序列化后的strin

苍穹外卖学习笔记——第八天

用户下单、订单支付 导入地址簿功能代码 需求分析和设计 产品原型 业务功能 查询地址列表 新增地址 修改地址 删除地址 设置默认地址 查询默认地址 接口设计 新增地址 查询当前登录用户的所有地址信息 查询默认地址 根据id修改地址 根据id删除地址 根据id查询地址 设置默认地址 数据库设计 address_book地址簿表 字段名 数据类型

JMM

Java 内存模型 Java 内存模型(Java Memory Model,JMM)定义了 Java 程序中的变量、线程如何和主存以及工作内存进行交互的规则。它主要涉及到多线程环境下的共享变量可见性、指令重排等问题,是理解并发编程中的关键概念。 两种并发模型: 如何通信 如何同步 消息传递并发模型 线程之间没有公共状态,线程间的通信必须通过发送消息来显示的进行通信 发送消息天然同

苍穹外卖学习笔记——第九天

用户端历史订单模块 查询历史订单 需求分析和设计 产品原型 业务功能 分页查询历史订单。 可以根据订单状态查询(全部订单、待付款、已取消)。 订单按照下单时间倒序排列。 展示订单数据时,需要展示的数据包括:下单时间、订单状态、订单金额、订单明细(商品名称、图片)。 接口设计 代码实现 在OrderController中创建page方法: 在OrderService接口中声明page

Camera 冷启动阶段分解

目录一、Camx trace 调试开关设置1.设置 camxoverridesettings trace开关2. 重启后设置开启camx trace 开关二、Camera 冷启动阶段分解分析1. 从 TouchUp 到 ActivityStart 耗时2. 从 ActivityStart 到 App 层 OpenCamera 耗时1. App 开始执行 MainActivity 一系列 onCre

Java基础 韩顺平老师的 集合 的部分笔记

498,集合介绍   499,集合体系图(两个图背下)        500,Collection方法     501,java迭代器遍历     502,集合增强for     503,测试题   504,List接口

很呆的一个问题:我的新项目又找不到mapper这个bean了

1.选springboot版本 2.加依赖 3.配yml 4.写mapper   好了,接下来该报错了:找不到mapper里的bean   —————————— 原因出在第一第二步:我选的是springboot2,导入pom依赖却来了个springboot3的mp 修改pom依赖即可,想不到我在一年之后又遇到了这种弱智问题 :-(&nb

[深入理解Java虚拟机]Hotspot垃圾回收算法

HotSpot的算法细节实现 3.2、3.3节从理论原理上介绍了常见的对象存活判定算法和垃圾收集算法,Java虚拟机实现这些算法时,必须对算法的执行效率有严格的考量,才能保证虚拟机高效运行。本章设置这部分内容主要是为了稍后介绍各款垃圾收集器时做前置知识铺垫,如果读者对这部分内容感到枯燥或者疑惑,不妨先跳过去,等后续遇到要使用它们的实际场景、实际问题时再结合问题,重新翻阅和理解。 根节点枚举 我们以

jar包部署,jenkins集成java

java项目的部署方式 war和jar部署区别 jar包的玩法一,没有jar包,只有源码目录,用maven对源码进行打包----------------------------------- jar包的玩法二,直接发给你了一个 *.jar包,运维需安装java,运行jar包就完事 1.安装jdk 二运行jar包,访问url jenkins部署Java项目,jar包------------

回调函数(CallBack)

回调函数(CallBack) 1. 定义 发现结果异常: 我们使用回调函数来解决 2. C++ 中的应用 回调函数是编程中的一种设计模式,它允许你将一个函数作为参数传递给另一个函数,以便在某个特定的事件或条件下调用它。这种模式在处理异步操作或事件驱动编程时非常有用。 3. Java 中通常使用接口实现回调机制

计网6

计网6传输层传输服务传输层的功能传输层位应用层提供可靠和经济有效的服务,充分利用网络层提供的服务,完成这项工作的硬件和软件称为传输实体,传输实体在操作系统内核中,以一个链接库的形式绑定到网络应用中,或者以一个独立的用户进程运行,甚至可以实现在网络接口卡上。传输层的意义网络通信的本质是进程通信网络层IP协议提供的服务是不可靠的传输层位应用层提供面向连接的服务TCP 和无连接的服务UDP传输层协议和网

linux安装破解Confluence

linux安装破解Confluence Confluence是atlassian公司的产品,是一个专业的企业知识管理与协同软件,也可以用于构建企业wiki。使用简单,但它强大的编辑和站点管理特征能够帮助团队成员之间共享信息、文档协作、集体讨论,信息推送。 是个非常酷的东西,这里记录一下如何安装并破解Confluence。 准备环境: 1.1 Confluence下载与安装 Confluence的

es6-class详解(基本使用及原理)

类的定义 类实际上就是es5构造函数的语法糖,简化了声明构造函数、原型方法以及实现继承的过程 类的特点 1.通过new操作符来创建一个实例对象,但不能把类当做普通函数去调用 2.在类的头部可以定义实例属性 3.在类的内部可以声明constructor表示构造方法,也可以自定义一些方法作为原型方法 4.使用static关键字,标识静态属性和静态方法 5.使用get和set关键字定义属性,拦截属性的读

PO报错和解决方案

1、返回到应用程序。异常:com.sap.engine.interfaces.messaging.api.exception.MessageExpiredException: Message b9a0967c-f179-1ede-9ebd-9af3c41a4544(OUTBOUND) expired. 处理:导致该问题的渠道比较多 还不清楚 MP: exception caught with ca

Springboot 2.7 集成 Swagger 增强版接口框架 Knife4j 4.3 + springdoc OpenApi 3.0

参考原文链接:https://blog.csdn.net/Mrqiang9001/article/details/132305015 1 摘要Swagger 作为一款服务端接口文档自动生成框架,早已深入人心,并且在市场上得到了广泛的应用。然而,Swagger 3.0 也就是 OpenApi 3.0 规范发布之后便停止了更新维护,出道就是巅峰。Knife4j 作为 Swagger 的增强版,是对 S

<<  <  269  270  271  272  273  274  275  276  277  278  279  >  >>