Java

java推送打卡记录到企微,中文乱码

在开发机中,推送中文能正常显示,部署到windows服务器上,中文显示乱码   设置windows环境变量: JAVA_TOOL_OPTIONS: -Dfile.encoding=UTF-8  

PM2 ecosystem 服务器自动化部署

一:准备工作 1.1 :将项目上传至代码管理库(github,gitlab,bitbucket,等) 1.2 :Windows 和 服务器 都安装SSH,Git 工具。 二:开始 2.1 本地生成ssh key连接服务器 //根据邮箱生成ssh key ssh-keygen -t rsa -C "..........@163.com" //仔细看注释 //1.如果生成过一次ssh key,就

7-DispatcherServlet的初始化时机和机制

DispatcherServlet初始化机制 1. DispatcherServlet初始化时机 首先编写一段代码,手动使用内嵌tomcat服务器: WebConfig.java 编写一段测试类: 运行后的控制台如图所示: 我们从上面的日志发现,tomact和IOC容器已经初始化成功了。但是DispatcherServlet一开始并没有初始化。 DispatcherServlet对象是由IO

android RecyclerView 长按之后滑动手指多选

关键函数与类 LinearLayoutManager.canScrollHorizontally() LinearLayoutManager.canScrollVertically() RecyclerView.OnItemTouchListener 核心代码 参考链接 How to multi-select using drag gesture in RecyclerView ?

[Java基础]HashMap

HashMap HashMap的数据结构 HashMap是:数组+链表/红黑树(JDK1.8增加了红黑树部分) 数据底层具体存储的是什么? Node<k,v> 这样的存储方式有什么优点呢? 数据结构 Node结构 从源码可知,HashMap类中有一个非常重要的字段,就是 Node[] table,即哈希桶数组,明显它是一个Node的数组。 Node是HashMap

java day1

简单了解了java,他最大的特点就是,稳定,安全,可以解决高并发的访问,最大的优势.java分es,ee,me.java的强势之处在于javaee,我是从javase开始学的. 2.安装JDk,我装的是JDK17,据说当前市场大多数用的都是JDK8,17在未来可能会占据更大市场.17也是长期支持版. 安装步骤 (1) 访问甲骨文官网https://www.oracle.com/cn/java/ (

[Java并发]Synchronized

synchronized锁住的到底是什么 如果synchronized加在普通方法上,锁住的其实是this,也就是当前实例对象 如果synchronized加在静态方法上,锁住的其实是该类的class字节码文件 synchronized关键字加在代码块上,锁住的对象要自己指定,可以是实例对象,可以是class对象,也可以是自定义对象

jmeter自定义函数开发—Web3钱包生成工具

之前使用Jmeter进行接口测试时,有生成钱包地址的需求,于是有时间就简单写了个自定义函数 环境说明 JDK1.8.0,Jmeter 5.4.3,maven构建工具 实现代码 新建一个简单的maven项目即可,以下是pom.xml配置 View Code 实现代码,可以自行调整相关参数,type实现了3种返回方式,其中1 随机返回私钥,2 随机返回地址,3 返回指定私钥的地址 Vi

[Java并发]Lock

锁 锁的分类 公平锁/非公平锁 可重入锁 独享锁/共享锁 互斥锁/读写锁 乐观锁/悲观锁 分段锁 偏向锁/轻量级锁/重量级锁 自旋锁 公平锁/非公平锁 公平锁是指多个线程按照申请锁的顺序来获取锁。 非公平锁是指多个线程获取锁的顺序并不是按照申请锁的顺序,有可能后申请的线程比先申请的线程优先获取锁。有可能,会造成优先级反转或者饥饿现象。 对于Java ReentrantLock而言,通过构造

[Java面试]经典手撕

多线程循环打印ABC 方法一:

[Java面向对象]

面向对象 修饰符 接口 接口中方法的访问修饰符默认是public abstract 在 Java 接口中,接口中的方法默认是公共的(public),且不允许使用其他的访问修饰符。接口中定义的方法会被隐式地指定为 public abstract,这两个修饰符可以省略,因为它们是默认的。 所以,Java 接口中方法的定义形式通常是: 在 Java 8 及之后的版本中,接口还引入了默认方法(def

[Java基础]

数据类型 Java的数据类型包括基本数据类型和引用数据类型: 基本数据类型: 整形:byte, short, int, long 浮点型:float, double 字符型:char 布尔型:boolean 引用数据类型:class, interface, array。 引用拷贝,浅拷贝,深拷贝 引用拷贝 在Java中,对象的引用拷贝是指将一个对象的引用赋值给另一个变量。通过

[Java基础]反射

反射 获取任意对象的数据 对对象一无所知的情况下 通过配置文件,创建对象并且调用方法 首先编写配置文件 其次编写bean类 最后编写main函数中的方法 以上代码可以实现根据配置文件中的两个字符串,我们就可以生成这个对象,并且执行对象中的某个方法,以后我们就可以通过简单的更改配置文件来生成另一个对象,执行另一个方法。

Nuxt框架中内置组件详解及使用指南(四)

title: Nuxt框架中内置组件详解及使用指南(四) date: 2024/7/9 updated: 2024/7/9 author: cmdragon excerpt: 摘要:本文详细介绍了Nuxt 3框架中的两个内置组件:和的使用方法与示例。用于捕获并处理客户端错误,提供了错误处理和自定义错误展示的功能;而是一个实验性组件,用于渲染无客户端JavaScript的静态内容,以优化页面加

010 基于 SBI 服务完成输出和关机

RustSBI的两个职责 它会在计算机启动时进行它所负责的环境初始化工作,并将计算机控制权移交给内核 在内核运行时响应内核的请求为内核提供服务 这里用不太确切的话表述一下,RustSBI作为介于内核和硬件之间的软件,要完成输出和关机,思路是内核需要调用RustSBI进行对硬件的控制的. 对于怎么对硬件进行抽象使之可以完成RustSBI规定的服务,则有专门的文档规定,详可看官方文档. 内核调用R

HomeActivity启动流程(launcher)

  简介: 0. 写在前面的话上一篇讲了各种Service是在何时启动的,最后提到了关于HomeActivity的启动。HomeActivity作为Android系统启动后第一个加载的Activity,今天就来分析下其启动流程。 0. 写在前面的话 上一篇讲了各种Service是在何时启动的,最后提到了关于HomeActivity的启动。HomeActivity作为Android系

简述 JS 中对象的创建和拷贝

在 JavaScript 中,对象是一种非常重要且灵活的数据结构,用于存储多个值(属性)和方法(函数) 对象的创建和拷贝是日常开发中经常涉及的操作,对于业务逻辑的准确实现有着重要的作用 本文将简要概括 JavaScript 中对象的创建和拷贝方式,都是一些非常基础的知识,大家看个乐就好~ 目录 对象的作用 创建对象 对象字面量 使用 new Object() 方法 构造函数 Object.cr

JVM-性能优化工具 MAT

一、MAT下载和安装1、概述MAT(Memory Analyzer Tool)工具是一款功能强大的]ava堆内存分析器。可以用于查找内存泄漏以及查看内存消耗情况。MAT是基于Eclipse开发的,不仅可以单独使用,还可以作为插件的形式嵌入在Eclipse中使用。是一款免费的性能分析工具,使用起来非常方便。2、下载地址:https://www.eclipse.org/mat/downloads.ph

PHP框架的安全功能详解

本文由 ChatMoney团队出品 在当今数字化时代,网络安全显得尤为重要。PHP框架作为开发安全网络应用程序的基石,集成了众多先进的安全功能,为应用程序筑起了一道坚实的防线,有效抵御各种潜在的网络攻击和安全隐患。 PHP框架通过内置的安全机制,确保了应用程序的稳健性和可靠性。这些安全功能包括但不限于输入验证和过滤、SQL注入防护、跨站脚本攻击(XSS)防御、密码加密和身份验证、访问控制和权限管理

Linux 设置环境变量

1. Linux 设置环境变量 1.1. export 命令 1.2. 直接使用 export 命令设置环境变量 1.3. 修改配置文件设置环境变量 1. Linux 设置环境变量 1.1. export 命令 export 命令用于设置或显示环境变量。 用法: 或 选项: -f: refer to shell functions. -n: remove the export pr

微信小程序switchTab带参解决方法

 解决: 思路就是通过storage来缓存数据, 跳转到指定页后获取storage, 并清除数据, 这样就可以了 需要注意的是, 跳转可能发生在指定页面已经onLoad的情况下, 所以可以把获取参数的逻辑写在生命周期函数onShow里 跳转代码: 代码语言:javascript 复制 toQuestion: function (e) { wx.setStorag

flutter 一直卡在Running Gradle task 'assembleDebug'...运行不起来

大概率只有一个原因:gradle下载不完整! 要想办法让他下载完整! 解决方法: 方法一:修改远程maven仓库地址(2024.7.9下列地址可用) repositories{     maven{ url'https://maven.aliyun.com/repository/public' }     maven{ url'https://maven

K8s 中 Pod OOMKilled 原因

在我们日常的工作当中,通常应用都会采用 Kubernetes 进行容器化部署,但是总是会出现一些问题,例如,JVM 堆小于 Docker 容器中设置的内存大小和 Kubernetes 的内存大小,但是还是会被 OOMKilled。在此我们介绍一下 K8s 的 OOMKilled 的 Exit Code 编码。   Exit Code 137 表明容器收到了 SIGKILL 信号,进程被

lua课程学习笔记

Learning-Lua lua课程学习笔记 整体结构 节点 内容 难点 AB包 AB包浏览器下载,AB打包,AB加载,ABMgr Lua语法 lua逻辑,表,方法,面向对象模拟,协程 面向对象模拟需要熟悉表、元表、全局表 xLua lua与C#互相调用,lua使用C#数据结构,lua无法直接调用的类需要标记特性 Hotfix 标记补丁脚本,使用lua对C#替换

mysql注入总结

1.SQL注入漏洞概述 什么是SQL注入 SQL注入(SQLi)是一种网络安全漏洞,允许攻击者干扰应用程序对其数据库的查询。通过浏览器或者其他客户端将恶意SQL语句插入到网站参数中,而网站应用程序未对其进行过滤,SQL语句带入数据库使恶意SQL语句得以执行可以查看通常无法检索的数据。这可能包括属于其他用户的数据,或应用程序本身能够访问的任何其他数据。在许多情况下,攻击者可以修改或删除这些数据,从而

【Postopia Dev Log】Day 3

遇到一个好像很有用的网站 Programming & DevOps news, tutorials & tools 实现了一个BadRequestExceptionHandler Spring Security 有点复杂,没找到好的参考资料 在claude 3.5的帮助下初步实现了基于简单jwt的Authentication 测试filter的时候不小心调用了两次chain.doF

1.2 Jenkins简介

简单介绍 Jenkinsopen in new window前身是Hudson,Jenkins是一款开源 CI&CD 软件,基于Java开发,用于自动化各种任务,包括构建、测试和部署软件。 Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。 Jenkins 项目产生两个发行线, 长期支持版本 (LTS) 和每周更新版本, 两个版本都以 .wa

2.2 war 包安装 jenkins

war 包安装 jenkins 参考:https://www.jenkins.io/doc/pipeline/tour/getting-started/ 要求:java8或java11 下载jenkins wget http://mirrors.jenkins.io/war-stable/latest/jenkins.war wget https://mirrors.huaweicloud.co

2.1 yum 安装 jenkins

yum安装jenkins 官方文档: https://pkg.jenkins.io/redhat-stable/ http://mirrors.jenkins-ci.org/open in new window 可选择Jenkins长期支持版本或Jenkins每周版本进行安装。 长期支持版本 每12周从定期发布流中选择一个LTS(长期支持)open in new window发布作为该时间段的稳定

@Autowired和@Resource有哪些区别

一、注解的作用 @Autowired和@Resource都是用来实现Bean的自动注入功能。 二、@Autowired和@Resource的区别 1、所属的包不同 @Autowired是Spring的注解。 @Resource是JSR-250的注解。 IDEA 有时候会在 @Autowired 注解上面提示Field injection is not recommended (字段注入是不被

<<  <  308  309  310  311  312  313  314  315  316  317  318  >  >>