• Discuz!5的PHP代码高亮显示插件(黑暗中的舞者更新)

    discuz!5.0论坛显示风格的php代码高亮显示插件, 把php代码进行语法着色,喜欢PHP的同志可以轻松的看代码啦. 同时添加了html代码运行功能. 此插件是在以前某位同志发布的Discuz!4的php代码高亮显示基础之上修改完成. 另外,本人的php学习进入了停滞状态, 希望有人能帮助我走出php的学习困境 My QQ:5642382  我的QQ群:2577162 功能:发贴时使用[php]php代码[/php]标记来高亮显示php代码,       使用[runcode]Html代码

    2023-09-27
  • .NET使用Moq进行单元测试

    本篇体验Moq的一些基本用法.首先通过NuGet安装Moq. 模拟方法的返回值 public class HelperClass { public virtual Boolean IsEnabled() { throw new Exception(); } } [TestClass] public class UnitTest1 { [TestMethod] public void TestMethod1() { var mock = new Mock<HelperClass>(); mock

    2023-09-27
  • JDBC连接SQL Server数据库实现增删改查的全过程

    目录 前言 JDBC访问数据库的方式 一.连接前准备 1. 环境配置 2. 导入JDBC Driver包 二.连接SQL Server 三.实现增删改查 1. 查询数据 2. 添加数据 3. 修改数据 4. 删除数据 5. 拓展 总结 前言 JDBC的全称是Java数据库连接(Java DataBase Connectivity) ,应用程序通过JDBC连接到数据库,使用SQL语句对数据库中的表进行查询.增加.修改.删除等操作.此文章提供JDBC连接SQL Server的所有步骤,帮助大家实现J

    2023-09-27
  • vue 实现可拖曳的树状结构图

    最近用vue做了一个小项目--可拖曳的树状结构图. Vue递归组件 结构通过Vue的递归组件实现 布局使用flex,结构线由CSS伪类实现 需要注意的是居中布局,当X轴元素过多导致子元素宽度超出视图,元素居中后虽然有滚动条,但只能到达右边的内容,左边的内容会无法访问,可以把父元素设置为inline-flex,宽度设置为auto.当然,如果是上述的结构则不会有这个问题,但遇到大数据渲染,还是困扰我了一下午. drag事件 首先在需要在拖动的元素上绑定draggable属性,除了<a>和<i

    2023-09-27
  • Sharding Jdbc批量操作引发fullGC解决

    目录 正文 内存分析 为什么有这个 LocalCache 呢? 解决方案 正文 周五晚上告警群突然收到了一条告警消息,点开一看,应用 fullGC 了. 于是赶紧联系运维下载堆内存快照,进行分析. 内存分析 使用 MemoryAnalyzer 打开堆文件 mat 下载地址:https://www.jb51.net/zt/matlab.html 下载下来后需要调大一下 MemoryAnalyzer.ini 配置文件里的-Xmx2048m 打开堆文件后如图: 发现有 809MB 的一个占用,应该问题

    2023-09-27
  • react实现动态选择框

    本文实例为大家分享了react实现动态选择框的具体代码,供大家参考,具体内容如下 小需求 在工作中,我们也会碰到这种需求: 为了提高用户的体验,在搜索的时候,采用灵活查询.用户可以自己选择查询项并且填写对应的值. 这篇博文涉及知识点在这篇博文“react+antd 动态编辑表格数据”中提及过.大家可以先去这篇学习一下然后这里. 示例代码 import React, { Component, useState } from 'react'; import { Button, Col, messag

    2023-09-27
  • SpringBoot整合RedisTemplate实现缓存信息监控的步骤

    SpringBoot 整合 Redis 数据库实现数据缓存的本质是整合 Redis 数据库,通过对需要“缓存”的数据存入 Redis 数据库中,下次使用时先从 Redis 中获取,Redis 中没有再从数据库中获取,这样就实现了 Redis 做数据缓存.    按照惯例,下面一步一步的实现 Springboot 整合 Redis 来存储数据,读取数据. 1.项目添加依赖首页第一步还是在项目添加 Redis 的环境, Jedis. <dependency> <groupId>org.

    2023-09-27
  • Vue3 页面,菜单,路由的使用

    目录 一.实现点击菜单跳转 1.统一页面命名方式 2.新增管理页面 3.添加路由 4.在菜单中绑定路由 二.实际效果 一.实现点击菜单跳转 1.统一页面命名方式 我们先将页面命名统一,都用小写形式,将Home.About页面都改为小写,接着再将router中index.ts修改. 示例代码如下: import { createRouter, createWebHistory, RouteRecordRaw } from 'vue-router' import Home from '../view

    2023-09-27
  • C++ 微信多开的实现

    应用是如何判断多开 一.通过查找窗口标题或者类名来判断程序是否正在运行. 二.通过互斥对象确定程序是否运行,大多数软件都是使用CreateMutexW 判断多开的. 三.内存映射物理文件,控制多开. 微信是使用 CreateMutexW 函数判断多开的. CreateMutexW 是如何判断多开的. 微软 MSDN 文档 CreateMutexW 这个函数就是根据变量创建一个锁,下回再用相同的变量调用CreateMutexW 的时候就可以控制是否允许多开. 如何找到微信中的 CreateMute

    2023-09-27
  • 如何使用工具规范前端项目的commits与changelog技巧

    目录 前言 Conventional Commits 规范 对于简短描述的扩充填写,可选 哪些工具可以组合起来规范我们的 commit? Commitizen cz-customizable commitlint standard-version 安装配置 1. 安装 commitizen 和 cz-customizable 2. 安装 commitlint 3. 安装 standard-version 总结 前言 项目的 Changelog 文件作为记录版本之间的差异和变更的主要“公示板”,主

    2023-09-27
  • python3 如何解压缩.gz文件

    目录 python3 解压缩.gz文件 Python3 压缩与解压缩(zlib/gzip/bz2/lzma/zipfile/tarfile) python3 解压缩.gz文件 python3 解压一个.gz后缀的压缩文件,如下: #!/usr/bin/env python # -*- coding: utf-8 -*- import gzip def un_gz(file_name): # 获取文件的名称,去掉后缀名 f_name = file_name.replace(".gz",

    2023-09-27
  • 打卡每日10道面试题——JVM篇

    目录 1.请你简述一下 Java 内存结构(运行时数据区) ① 程序计数器 ② 虚拟机栈 ③ 本地方法栈 ④ 堆 ⑤ 方法区 ⑥ 运行时常量池 2.请问jvm垃圾回收是否涉及栈内存? 3.虚拟机栈内存的分配越大越好吗? 4.从JVM的角度分析,方法内的局部变量是否是线程安全的? 5.虚拟机栈内存溢出的情况有哪些? 6.请你说一下JVM运行时数据区方法区的演进? 7.请问Java虚拟机中有哪些类加载器? 8.请你说一下类的加载的过程? 9.请你说一下什么是双亲委派模型? 10.说一下虚拟机栈和堆的

    2023-09-27
  • 聊聊SpringMVC项目依赖和静态资源导出问题

    Spring MVC属于SpringFrameWork的后续产品,已经融合在Spring Web Flow里面.Spring 框架提供了构建 Web 应用程序的全功能 MVC 模块.使用 Spring 可插入的 MVC 架构,从而在使用Spring进行WEB开发时,可以选择使用Spring的Spring MVC框架或集成其他MVC开发框架,如Struts1(现在一般不用),Struts 2(一般老项目使用)等等. 下面给大家介绍下SpringMVC项目依赖和静态资源导出问题,具体内容如下所示:

    2023-09-27
  • 分享3个非常实用的 Python 模块

    目录 一.Psutil 二.Pendulum 三.Pyfiglet 一.Psutil Python当中的Psutil模块是个跨平台库,它能够轻松获取系统运行的进程和系统利用率,包括CPU.内存.磁盘.网络等信息,它的安装也非常的简单, 命令行: pip install psutil 这里因为整体的篇幅有限,小编就暂时只罗列几个常用的方法,例如我们想要查看一下CPU的利用率 psutil.cpu_percent() 返回的结果表示的是当前系统范围的CPU利用率百分比,如果我们要查看系统中CPU的个

    2023-09-27
  • js深拷贝和浅拷贝的深入讲解

    目录 浅拷贝 实现方法 方法一:Object.assign 方法二:扩展运算符方式 方法三:concat和slice 浅拷贝数组 深拷贝 实现方法 方法一:乞丐版(JSON.stringify和JSON.parse) 手写递归实现 其他实现方法 FAQ:赋值和深浅拷贝的区别 赋值 浅拷贝 深拷贝 总结 浅拷贝 创建一个新的对象,来接受你要重新复制或引用的对象值.如果对象属性是基本的数据类型,复制的就是基本类型的值给新对象:但如果属性是引用数据类型,复制的就是内存中的地址,如果其中一个对象改变了这

    2023-09-27
  • Ubuntu 18.04通过命令禁用/开启触控板

    Ubuntu下经常遇到无法用快捷键关闭触控板的情况,博主的电脑安装Ubuntu18.04后便出现了该问题. 解决办法: 首先查看 Ubuntu下经常遇到无法用快捷键关闭触控板的情况,博主的电脑安装Ubuntu18.04后便出现了该问题. 解决办法: 首先查看输入设备的id,命令行输入:xinput ,如图,博主的TouchPad的id=17,电脑不同id各异, 知道了id=17之后,就可以通过命令关闭/开启触控板, 关闭命令:xinput --disable 17 开启命令:xinput --e

    2023-09-27
  • Java如何实现通过键盘输入一个数组

    目录 如何通过键盘输入一个数组 第一种方法:(不限制输入数组的长度) 第二种方法:(限制输入的个数) 不限制从键盘输入一个数组 下面用二分查找举例 如何通过键盘输入一个数组 有时候在编写Jave的时候需要键盘输入一个数组,本小白也是看了几篇博客后才知道了如何在自己的程序中进行键盘输入,直接上代码: 第一种方法:(不限制输入数组的长度) System.out.println("请输入几个数并用逗号隔开:"); Scanner sc = new Scanner(System.in); St

    2023-09-27
  • vue在标签中如何使用(data-XXX)自定义属性并获取

    目录 在标签中使用(data-XXX)自定义属性并获取 标签的写法 方法一 方法二 vue基础-自定义指令 语法 传参 配置对象中常用的三个回调 全局自定义指令 在标签中使用(data-XXX)自定义属性并获取 我们在vue中有时候为给标签加一些特有的属性, 当我们在标签上触发了事件之后, 就可以在 event 对象上面获取 标签的写法 <div class="menu-item" @click="clickMenu('参数一',$event)" :data-

    2023-09-27
  • Java 解析线程的几种状态详解

    目录 1.线程的5种状态 2.Java线程的6种状态 3.Java线程状态的转换 总结 1. 线程的5种状态 从操作系统层面上,任何线程一般都具有五种状态,即创建.就绪.运行.阻塞.终止. (1) 新建状态(NEW) 在程序中用构造方法创建一个新线程时,如new Thread(),该线程就是创建状态,此时它已经有了相应的内存空间和其它资源,但是还没有开始执行. (2) 就绪状态(READ) 新建线程对象后,调用该线程的start()方法就可以启动线程.当线程启动时,线程就进入就绪状态(runna

    2023-09-27
  • 详解Spring获取配置的三种方式

    目录 前言 Spring中获取配置的三种方式 通过@Value动态获取单个配置 通过@ConfigurationProperties+前缀方式批量获取 通过Environment动态获取单个配置 总结 前言 最近在写框架时遇到需要根据特定配置(可能不存在)加载 bean 的需求,所以就学习了下 Spring 中如何获取配置的几种方式. Spring 中获取配置的三种方式 通过 @Value 方式动态获取单个配置 通过 @ConfigurationProperties + 前缀方式批量获取配置 通

    2023-09-27