-
MySQL表类型 存储引擎 的选择
目录1、查看当前数据库支出的存储引擎方法1:方法2:2、ENGINE={存储引起类型} 创建表的时候,设置存储引擎3、alter able tablename engine={存储引起类型} 修改表为其他存储引擎3.1 常用存储引擎的对比3.2 常用存储引擎学习(MyISAM、InnoDB、MEMORY 和 MERGE)1、查看当前数据库支出的存储引擎方法1:mysql> show engine
图解Java排序算法之快速排序的三数取中法
目录基本步骤三数取中根据枢纽值进行分割代码实现总结基本步骤三数取中在快排的过程中,每一次我们要取一个元素作为枢纽值,以这个数字来将序列划分为两部分。在此我们采用三数取中法,也就是取左端、中间、右端三个数,然后进行排序,将中间数作为枢纽值。根据枢纽值进行分割 代码实现package sortdemo;import java.util.Arrays;/** * Created by chengxiao
JavaScript 沙箱探索
目录1、场景2、沙箱基础功能3、iframe 实现4、web worker 实现5、quickjs 实现6、结论1、场景最近基于 web 在做一些类似于插件系统一样的东西,所以折腾了一下 js 沙箱,以执行第三方应用的代码。2、沙箱基础功能在实现之前(好吧,其实是在调研了一些方案之后),确定了沙箱基于 event bus 形式的通信实现上层的功能,基础的接口如下export interface I
Java多线程之Semaphore实现信号灯
目录1 Semaphore的主要方法2 实例讲解实现单例模式3 源码解析构造方法获取许可释放许可减小许可数量获取剩余许可数量前言:Semaphore是计数信号量。Semaphore管理一系列许可证。每个acquire方法阻塞,直到有一个许可证可以获得然后拿走一个许可证;每个release方法增加一个许可证,这可能会释放一个阻塞的acquire方法。然而,其实并没有实际的许可证这个对象,Semaph
解析iReport自定义行数分页的操作方法
iReport 是为JasperReports Library和JasperReports Server设计的报表可视化设计器。iReport是一个能够创建复杂报表的开源项目。它100%使用Java语言编写。是目前全球最为流行的开源报表设计器。ireport默认都是自动分页数据超出页面长度就会自动分到下一页,但有时候业务需要一页只显示固定几行这时候就需要自定义条数了。下面看具体操作1:先在Vari
docker-compose安装Jenkins的实践笔记
创建目录cd /usr/local/docker/mkdir jenkins-dockercd jenkins-docker创建Dockerfilevi Dockerfile# 以下是文件内容FROM jenkins/jenkins:ltsUSER rootRUN mkdir -p /usr/local/ && \cd /usr/local/ && \curl -fsSL https://mir
JavaScript 中有了Object 为什么还需要 Map 呢
目录一、别把对象当 Map1、可能通过原型链访问到未定义的属性2、对象的 Key 只能是字符串二、使用 Map1、Map 常用操作2、遍历 Map3、Map 中判断 key 相等4、复制或合并 Map5、Map 序列化三、Map 和 Object 的性能差异一、别把对象当 Map1、可能通过原型链访问到未定义的属性假设现有场景,开发一个网站,需要提供日语、汉语、韩语三种语言,我们可以定义一个字典去
Python可视化Matplotlib折线图plot用法详解
目录1.完善原始折线图 — 给图形添加辅助功能1.1 准备数据并画出初始折线图1.2 添加自定义x,y刻度1.3 中文显示问题解决1.4 添加网格显示1.5 添加描述信息1.6 图像保存2. 在一个坐标系中绘制多个图像2.1 多次plot2.2 显示图例2.3 折线图的应用场景折线图是数据分析中非常常用的图形。其中,折线图主要是以折线的上升或下降来表示统计数量的增减变化的统计图。用于分析自变量和因
SpringBoot+Mybatis实现Mapper接口与Sql绑定几种姿势
目录I. 环境准备1. 数据库准备2. 项目环境II. 实例演示1. 实体类,Mapper接口2. sql文件3. Mapper与Sql绑定3.1 默认方式3.2 SpringBoot配置3.3 Mapper标签3.4 SqlSessionFactory4. 小结III. 不能错过的源码和相关知识点通常我们在使用Mybatis进行开发时,会选择xml文件来写对应的sql,然后将Mapper接口与s
Java使用Unsafe类的示例详解
Unsafe 对象提供了非常底层的,操作内存、线程的方法,相当于开了后门。在atomic类中CAS实现、LockSupport中park unpark的底层都调用了UnSafe中的方法。UnSafe并不是说线程不安全,而是说操作内存有可能会造成不安全问题。当然对于开发人员来说Unsafe 对象不能直接调用,只能通过反射获得通过反射获得Unsafe对象package com.dongguo.unsa
Python使用bar绘制堆积/带误差棒柱形图的实现
本博文源于《python数据可视化》(黑马程序员编著)。先讲解bar参数如何使用,然后分别演示堆积柱形图和带误差柱形图画法。bar参数bar(x,height,width=0.8,bottom=None,align='center',data=None,tick_label=None,xerr=None,yerr=None,error_kw=None,**kwargs)该函数常用参数如下:
ASP.NET Core如何注入多个服务实现类
目录1、定义个接口2、注入服务 3、功能类 4、高级类前言:依赖注入在 ASP.NET Core 中起中很重要的作用,也是一种高大上的编程思想,它的总体原则就是:俺要啥,你就给俺送啥过来。服务类型的实例转由容器自动管理,无需我们在代码中显式处理。因此,有了依赖注入后,你的编程思维就得变一变了。在过去,许多功能性的类型(比如一个加密解密的类),我们都喜欢将其定义为静态(static),而有了依赖注入
python3通过gevent.pool限制协程并发数量的实现方法
协程虽然是轻量级的线程,但到达一定数量后,仍然会造成服务器崩溃出错。最好的方法通过限制协程并发数量来解决此类问题。server代码:#!/usr/bin/env python# -*- coding: utf-8 -*-# @Author : Cain# @Email : 771535427@qq.com# @Filename : gevnt_sockser
Burpsuite入门及使用详细教程
目录1、简介2、标签3、操作1、简介Burp Suite是用于攻击web应用程序的集成平台。它包含了许多工具,并为这些工具设计了许多接口,以促进加快攻击应用程序的过程。所有的工具都共享一个能处理并显示HTTP消息,持久性,认证,代理,日志,警报的一个强大的可扩展的框架。2、标签 Target(目标)——显示目标目录结构的的一个功能 Proxy(代理)——拦截HTTP/S的代理服务器,作
Python线程池的正确使用方法
目录Python线程池的正确使用1、为什么要使用线程池呢?2、线程池怎么用呢?3、如何非阻塞的获取线程执行的结果4、线程池的运行策略Python线程池的正确使用1、为什么要使用线程池呢?因为线程执行完任务之后就会被系统销毁,下次再执行任务的时候再进行创建。这种方式在逻辑上没有啥问题。但是系统启动一个新线程的成本是比较高,因为其中涉及与操作系统的交互,操作系统需要给新线程分配资源。打个比方吧!就像软
java synchronized的用法及原理详解
目录为什么要用synchronized使用方式字节码语义对象锁(monitor)锁升级过程为什么要用synchronized相信大家对于这个问题一定都有自己的答案,这里我还是要啰嗦一下,我们来看下面这段车站售票的代码:/** * 车站开两个窗口同时售票 */public class TicketDemo { public static void main(String[] args) {
PHP 修改SESSION的生存时间案例详解
需求背景:用户希望他登录之后,浏览器就帮他记住登录状态,这样他就不用每次进入的时候,都需要登录一次。session过期时间:如果我们没有设置session的生成时间,在配置文件中默认的生存时间是1440秒也就是说session的生存时间是24分钟,这里可能有些人会有这样的疑问:为什么我登录之后,24分钟之后,并没有退出呀?其实在24分钟之后,session是失效的,为什么用户没有退出是由于php的
Android Handler使用案例详解
什么是Handler?Handler可以发送和处理消息对象或Runnable对象,这些消息对象和Runnable对象与一个线程相关联。每个Handler的实例都关联了一个线程和线程的消息队列。当创建了一个Handler对象时,一个线程或消息队列同时也被创建,该Handler对象将发送和处理这些消息或Runnable对象。handler类有两种主要用途: 执行Runnable对象,还可以设置延
用Python做个个性的动画挂件让桌面不单调
目录前言一、核心功能设计二、实现步骤1. 解析提取,修改图片2.初始化动画挂件3.动画挂件功能实现4.打包配置前言前段时间,写了篇博客自己用python做的一款超炫酷音乐播放器。有粉丝问我,音乐播放器为什么要用PyQt5,效果是不是比Tkinter赞?PyQt5真的可以实现这些炫酷的UI画面吗?之前没接触过PyQt5,能不能多分享一些这方面的开发案例?今天就带大家,一起用Python的PyQt5开
spring 重复注解和aop拦截的实现示例
前言: 1:jdk1.8开始支持重复注解@Repeatable实现 2:aop拦截需要拦截当前注解和@Repeatable指向的包装注解才可以完全拦截到,因为:1.当在在方法上只有一个注解时,aop拦截认为是非包装类型注解。2.当方法上有多个重复注解时,aop拦截认为是包装类型注解。 重复注解实现方式(RequestLimit为原始注解,RequestLimitPack为包装注解):impor
C++ TinyXML解析案例详解
目录TinyXML介绍TinyXML类说明下载和编译简单的例子读取XML写入xmlXML删除操作XML修改操作TinyXML介绍最近做一个负载均衡的小项目,需要解析xml配置文件,用到了TinyXML,感觉使用起来很容易,给出一个使用TinyXML进行XML解析的简单例子,很多复杂的应用都可以基于本例子的方法来完成。TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows
shiro 与 SpringMVC的整合完美示例
想要整合Shiro和springmvc,在网上找了很多例子,感觉都有一点复杂。所以就自己写了一个最简单整合项目,记录在这里以备后面查看。这个例子包含如下三个部分:1.简单的页面2.shiro配置3.springmvc配置shiro可以直接和spring整合,但是这样需要单独配置spring用于整合shiro,在配置springmvc。配置文件看起来乱七八糟的。所以这里就shiro不采用spring
手把手教你用C语言实现三子棋
目录1.设计简单菜单2.创建棋盘3.下棋过程的实现 3.1玩家下棋 3.2电脑下棋3.3判断输赢4.游戏源码总结1.设计简单菜单相信大家在玩游戏时会发现,进入游戏前会有菜单拱你选择,你可以选择你想要的模式,三子棋也是同样的。void menu(){printf("******************************\n");printf("********* 0.play ****
2021年最新Redis面试题汇总(3)
目录1、Redis 怎么保证高可用、有哪些集群模式2、主从复制3、哨兵1)哨兵故障检测2)哨兵故障转移流程4、集群模式5、集群选举6、如何保证集群在线扩容的安全性?(Redis 集群要增加分片,槽的迁移怎么保证无损)7、Redis 事务的实现8、Redis 的 Java 客户端有哪些?官方推荐哪个?9、Redis 里面有1亿个 key,其中有 10 个 key 是包含 java,如何将它们全部找出
springboot项目数据库密码如何加密
前言在我们日常开发中,我们可能很随意把数据库密码直接明文暴露在配置文件中,在开发环境可以这么做,但是在生产环境,是相当不建议这么做,毕竟安全无小事,谁也不知道哪天密码就莫名其妙泄露了。今天就来聊聊在springboot项目中如何对数据库密码进行加密正文方案一、使用druid数据库连接池对数据库密码加密1、pom.xml引入druid包为了方便其他的操作,这边直接引入druid的starter<de



闽公网安备 35020302000061号