• 用 godot 做一个射击游戏

    这里是用Godot引擎做一个简单的射击游戏的方法:创建一个新的Godot项目,可以选择2D或3D。制作玩家角色。在场景中添加一个KinematicBody2D或RigidBody2D作为玩家角色,给它添加一个Sprite作为视觉显示。可以给它添加一个Shoot方法用于发射子弹。制作子弹。添加一个Ki
    2023-08-14
  • Vue

    1 Vue 介绍 2 Vue 指令 3 Vue 实例成员 4 前台数据库 5 Vue 项目开发 6 Vue 路由、组件 7 Vue 插件,前后台交互,总结
    2023-08-12
  • 获从2017-2 到现在所有月份;

    public function get_mouthlist($start_time){ //$start_time = '2018-02'; //线上起始位置为2018-03 $end_time = date('Y-m',time()); //所有可选的日期月份列表(从2018-03开始到当前月份) $end_year = date('Y'); $end_mouth = (int)array_pop(explode('-',$
    2023-08-12
  • C语言笔记

    语法 #define char 不管是32位还是64位系统, char都是一个字节, 对于用 *char 表示的字符串, 如果将每个char用int表示, 其值范围是 -128 ~ 127. 可以试试下面代码打印的结果 char *c = "11月7日召开的“企业合并重组宣布会”上,北京市下属的北京与北京总集团时期0123abcABC12+_=/.,{}~"; while (*c != '\0') { int i = *c; char j = *c; printf("%08x
    2023-08-12
  • Linux:http配置

    http配置 1、挂载系统:mount /dev/cdrom /mnt/cdrom 2、安装:rpm -ivh httpd-2.4.6-88.el7.centos.x86_64.rpm 2、启动服务:systemctl start httpd 3、设置开机启动: systemctl enable httpd 4、创建文件:touch /var/www/html/index.html 5、关闭seLinux:setenforce 0 6、关闭防火墙:systemctl stop firewalld
    2023-08-12
  • js中字节B转化成KB,MB,GB

    function change(limit){ var size = ""; if(limit < 0.1 * 1024){ //小于0.1KB,则转化成B size = limit.toFixed(2) + "B" }else if(limit < 0.1 * 1024 * 1024){ //小于0.1MB,则转化成KB size = (limit/1024).t
    2023-08-12
  • mysql 拾遗提高(函数、事务、索引)

    目录 1、tips 2、事务(transaction) 3、索引(index) 4、数据库的导出和备份 5、函数 6、防SQL注入 7、使用Explain分析SQL语句 8、视图(view) 1、tips 1)、数据库不区分大小写; 2)、插入新数据时忽略重复数据,可在INSERT后加关键字IGNORE即可 3)、通过UNION操作符来连接两个以上的SELECT语句结果组合到一个结果到同一个集合中; 格式: select... from... where... union distinct
    2023-08-12
  • iOS WKWebView OC 与 JS 交互学习

    我写WKWebView 想让 服务端相应 一个 方法但是不响应,根据 UIWebView 用 JSContext就能拿到响应的处理经验是不是服务端 也需要 对 WKwebView有兼容的一个写法??? 特此学习 WKWebView 记录 一 .WKWebView 代理协议 (1)WKScriptMessageHandler : OC在JS调用方法时做的处理。如果需要调用对话窗口就会先执行(3)协议再执行 (1)协议 好处:传递给OC的参数直接在字典里面,不用再在url里面拼凑后的结果去截取解析。
    2023-08-12
  • 玩转容器技术

    实践中,了解镜像和容器的操作 什么是docker? Docker是一个开放源代码软件项目,让应用程序部署在软件货柜下的工作可以自动化进行,借此在Linux操作系统上,提供一个额外的软件抽象层,以及操作系统层虚拟化的自动管理机制. 镜像的几个小操作 搜索镜像 docker search nginx 下载镜像到local docker pull image_name 归档镜像 docker image save image_name > xxx.tar 加载一个tar到环境中 docker imag
    2023-08-12
  • 07python之字符串的常用方法

    字符串作为python中常用的数据类型,掌握字符串的常用方法十分必要。 常用知识点:   1.字符串的3种格式化方法   2.字符串的strip()方法   3.字符串的join()方法   4.字符串可以切片 1.字符串的格式化有三种方式。   1)使用+拼接模式   2)使用占为符方式 %s 字符串占为符,%d数字占为符   3)使用字符串类的格式化方法,即 str.format() 优缺点:   1)此等方式开辟内存空间较大,不好,弃用   2)此等方式方便,可用   3)字符串格式化方法
    2023-08-12
  • HTML5中的Web Worker技术

      为了让后台程序更好的执行,在HTML5中设计了Web Worker技术。Web Worker的产生主要是考虑到在HTML4中JavaScript Web程序都是以单线程的方式执行的,一旦前面的脚本花费时间过长,后面的程序就会因长期得不到响应而使用户页面操作出现异常。   Web Worker实现的是线程技术,可以使运行在后台的JavaScript独立于其他脚本,从而不会影响页面的性能。   示例: 1 <!DOCTYPE html> 2 <html lang="en"> 3 <he
    2023-08-12
  • 认识AMD、CMD、UMD、CommonJS

    0、导言 JavaScript的生态系统一直在稳步增长,当各种组件混合使用时,就可能会发现不是所有的组件都能“和平共处”,为了解决这些问题,各种模块规范就出来了。 1、AMD(Asynchromous Module Definition - 异步模块定义) AMD是RequireJS在推广过程中对模块定义的规范化产出,AMD是异步加载模块,推崇依赖前置。 define('module1', ['jquery'], ($) => { //do something... }); 代码中依
    2023-08-12
  • OpenSSL中的一些概念

    一、角色 CA机构:负责证书验证和签发机构,客户端和服务端都绝对信任他,相当于裁判员,他拥有自己的公私钥对和证书; 1.因他所持有的证书是用来签发和验证客户端和服务端的证书的,在这个过程中起到了证书衍生者的作用,所以称为根证书; 2.根证书通常需要保存在需要执行验证的地方的,比如浏览器所在的pc或手机,一般是由操作系统厂商Windows、Android内置打包的。 3.如果我们采用【自签】证书的方式,此时CA机构的角色就由我们自己担当,相当于自己当裁判,但裁判的公私钥对和证书生成过程仍不可少。
    2023-08-12
  • 仓储repository概念

    1.为什么要用仓储?(仓储有什么用) 1.1 解耦 为了解耦领域层与数据映射层的关系。 1.2 管理增删查改 仓储模式最大的优点就是所有的数据访问首先是通过仓库的,对仓库的增删改都不会立即提交到数据库,而只有当调用了仓库包裹器,这些增删改的操作才会一次提交到数据库。 2.仓储怎么实现? 2.1通过接口实现增删查改的类; 2.2实现层继承引入ORM; 博客园有很多例子,这里不一一例举。 3.通过EF实现仓储 因为EF本身即是按照repository来设计的。请看下面这行代码: var db = n
    2023-08-12
  • 平衡二叉树

    ##题目描述 输入一棵二叉树,判断该二叉树是否是平衡二叉树。 思路 深度搜索,剪枝。 时间复杂度O(lgn),空间复杂度O(lgn)。 未剪枝代码 public class Solution { private int depth(TreeNode root) { return root == null ? 0 : Math.max(1+depth(root.left), 1+depth(root.right)); } public boolea
    2023-08-12
  • 刷题239. Sliding Window Maximum

    一、题目说明 题目239. Sliding Window Maximum,给一个数组,和窗口长度,窗口每次向右滑动1位,返回滑动窗口的最大值。时间复杂度要求是线性。 二、我的解答 最直接的办法就是brute force,但是性能不足,复杂度是O(kN): class Solution{ public: //brute force vector<int> maxSlidingWindow(vector<int>& nums, int k){ int start = 0,curMax
    2023-08-12
  • Kube-DNS搭建(1.4版本) Kubernetes学习

    目录贴:Kubernetes学习系列 1、介绍   之前介绍过DNS的搭建(基于Kubernetes集群部署skyDNS服务),但那个版本的DNS是随着Kubernetes1.2发布出来的,有点原始。本文主要讲解Kubernetes1.4版本中的DNS插件的安装。与1.2版本相比,1.4中的DNS增加了解析Pod(HostName)对应的域名的新功能,且在部署上也有了一些变化。1.2中,需要部署etcd(或使用master上的Etcd)、kube2sky、skydns三个组件;1.4中,DNS组
    2023-08-12
  • Codeforces 627 E. Sleeping Sch

    Vova had a pretty weird sleeping schedule. There are hh hours in a day. Vova will sleep exactly nn times. The ii -th time he will sleep exactly after aiai hours from the time he woke up. You can assume that Vova woke up exactly at the beginning of th
    2023-08-12
  • HBase参数配置及说明

    转载:http://www.cnblogs.com/nexiyi/p/hbase_config_94.html 版本:0.94-cdh4.2.1 hbase-site.xml配置 hbase.tmp.dir 本地文件系统tmp目录,一般配置成local模式的设置一下,但是最好还是需要设置一下,因为很多文件都会默认设置成它下面的 线上配置 <property> <name>hbase.tmp.dir</name> <value>/mnt/dfs/11/hbase/hbase-t
    2023-08-12
  • SpringMVC是怎么工作的,SpringMVC的工作原理

    SpringWeb MVC 是怎么工作的,SpringMVC的原理,SpringMVC源码 分析。 目录 介绍 从一个项目开始 Servlet是Java Web应用的基石 DispatcherServlet是Spring MVC的核心 处理HTTP请求 GenericServlet HttpServlet HttpServletBean FrameworkServlet DispatcherServlet: 统一请求处理 doService()方法设置请求信息 doDispatch()方法分发请
    2023-08-12
  • 第9月第9天 CTFramesetterCreateWith

    1. NSString *text = @"This\nis\nsome\nmulti-line\nsample\ntext."; UIFont *uiFont = [UIFont fontWithName:@"Helvetica" size:17.0]; CTFontRef ctFont = CTFontCreateWithName((CFStringRef) uiFont.fontName, uiFont.pointSize, NU
    2023-08-12
  • 使用【数据牛刀】轻松驾驭日增长100万级的大流水数据表

    【数据牛刀】是本人贡献的一款提供大数据表自动分割、归档和清理过期数据的服务。它使用C# /.NET CORE实现,当前支持Mysql数据源以及在docker容器中运行。 项目地址:https://github.com/mfjiang/DataNiuKnife 核心功能: 1、通过简单的配置,可管理任意多个数据库节点上的大数据表的定期数据分割、归档和清理。 2、每日执行数据复制。 3、按指定天数移除过期数据。 4、按月归档数据。 希望使用此服务的大数据表,有如下要求: 数据表存在自增长ID; 数据
    2023-08-12
  • delphi 捕捉全局异常错误的方法

    private { Private declarations } public procedure GlobalExceptionHandler(Sender: TObject; E: Exception); { Public declarations } end;proced ure TForm1.FormCreate(Sender: TObject); begin Application.OnException := GlobalExceptionHandler; end; procedur
    2023-08-12
  • mongodb的安装

    mongodb 2019消息,不再开源,因此只能安装社区版本 brew tap mongodb/brewbrew install mongodb-community To have launchd start mongodb/brew/mongodb-community now and restart at login: brew services start mongodb/brew/mongodb-community Or, if you don't want/need a backgr
    2023-08-12
  • Java8新特性--Interface中的default方法

    在Java8的新特性中有一个新特性为接口默认方法,该新特性允许我们在接口中添加一个非抽象的方法实现,而这样做的方法只需要使用关键字default修饰该默认实现方法即可。该特性又叫扩展方法。 直接上代码: 使用Java8新特性定义一个扩展方法: public interface Formula { double calculate(int a); default double sqrt(int a){ return Math.sqrt(a); } } public class Bootstrap
    2023-08-12
  • Mysql-字段类型

    首先统计所有,以表格查看 数字类型 列类型 需要的存储量 TINYINT 1 字节 SMALLINT 2 个字节 MEDIUMINT 3 个字节 INT 4 个字节 INTEGER 4 个字节 BIGINT 8 个字节 FLOAT(X) 4 如果 X < = 24 或 8 如果 25 < = X < = 53 FLOAT 4 个字节 DOUBLE 8 个字节 DOUBLE PRECISION 8 个字节 REAL 8 个字节 DECIMAL(M,D) M字节(D+2 , 如果M < D) NUM
    2023-08-12
  • U盘分区信息清除

    diskpart select disk 1 clean 清除选中(优U)盘的所有信息;
    2023-08-12
  • 【python】如何查看已经安装的python软件包和版本

    pip 是一个安装和管理 Python 包的工具 , 是 easy_install 的一个替换品。 pip freeze可以查看已经安装的python软件包和版本 pip list 也可以
    2023-08-12
  • 游标(隐式游标与显示游标)

    游标的概念: 游标是SQL的一个内存工作区,由系统或用户以变量的形式定义。游标的作用就是用于临时存储从数据库中提取的数据块。在某些情况下,需要把数据从存放在磁盘的表中调到计算机内存中进行处理,最后将处理结果显示出来或最终写回数据库。这样数据处理的速度才会提高,否则频繁的磁盘数据交换会降低效率。 游标有两种类型:显式游标和隐式游标。在前述程序中用到的SELECT...INTO...查询语句,一次只能从数据库中提取一行数据,对于这种形式的查询和DML操作,系统都会使用一个隐式游标。但是如果要提取多行
    2023-08-12
  • 解决tomcat too many open files问题

    运行环境为 centos7.2 tomcat 为 tomcat 8.0.39.0 ulimit -a ulimit -n 解决的都是 系统的问题 tomcat 报too many open files 是 tomcat 进程本身 的文件打开数 受限制了 默认设置 tomcat 文件打开数为 4096 需要修改 tomcat.service文件 修改如下 vi /usr/lib/systemd/system/tomcat.service 在 [Service] 中添加 LimitNOFILE=13
    2023-08-12
  • Linux用户和权限——管理用户和用户组的命令

    Linux用户和权限——管理用户和用户组的命令 摘要:本文主要学习了在Linux系统中管理用户和用户组的命令。 useradd命令 useradd命令可以用来创建新用户。 基本语法 1 useradd [选项] 用户名 选项说明 1 -u 用户UID:手工指定用户的UID,注意范围不要小于500。 2 -d 目录名:手工指定用户的主目录。主目录必须写绝对路径,而且如果需要手工指定主目录,则一定要注意权限。 3 -c 描述:手工指定/etc/passwd文件中各用户信息中第五个字段的描述
    2023-08-12
  • CentOS 7升级Python到3.5后yum出错

    CentOS 7升级Python到3.5后,我跟以前CentOS 6一样,在/usr/bin/python创建了一个指向Python 3的软连接,然后将/usr/bin/yum的顶部的: !/usr/bin/python 改成了 !/usr/bin/python2.7 后,运行yum,还是出现了以下错误: [root@vps ~]# yum -y install yum-priorities Loaded plugins: fastestmirror, langpacks Determini
    2023-08-12
  • 用户空间到内核空间为什么需要拷贝?

    The simple answer to that is, "Kernel Developers do not put blind faith in anything". When any data is passed to the kernel space from userspace, it is the responsibility of the kernel developer to make sure that everything is sanitized. Just as you
    2023-08-12
  • js保留小数点后N位的方法介绍

    利用toFixed函数 代码如下 复制代码 <script language="javascript"> document.write("<h1>JS保留两位小数例子</h1><br>"); var a=2.1512131231231321; document.write("原来的值:"+a+"<br>"); document.write("两位小数点:"+a.toFixed(2)+"<br>四位小数点"+a.toFixed(4)); </script> 四舍五入的转换函数,如下: 代码如下 复
    2023-08-12
  • 多编程

    一 multiprocessing模块介绍 python中的多线程无法利用多核优势,如果想要充分地使用多核CPU的资源(os.cpu_count()查看),在python中大部分情况需要使用多进程。Python提供了multiprocessing。 multiprocessing模块用来开启子进程,并在子进程中执行我们定制的任务(比如函数),该模块与多线程模块threading的编程接口类似。   multiprocessing模块的功能众多:支持子进程、通信和共享数据、执行不同形式的同步,提供
    2023-08-12
  • C++开发资源汇总

    这次的资源涉及到了标准库、Web应用框架、人工智能、数据库、图片处理、机器学习、日志、代码分析等,C++程序员学习必备! Jason frozen : C/C++的Jason解析生成器 Jansson :进行编解码和处理Jason数据的C语言库 jbson :C++14中构建和迭代BSON data,和Json 文档的库 JeayeSON:非常健全的C++ JSON库,只包含头文件 JSON++ : C++ JSON 解析器 json-parser:用可移植的ANSI C编写的JSON解析器,占
    2023-08-12
  • SQL学习之SqlMap SQL注入

    sqlmap也是渗透中常用的一个注入工具,其实在注入工具方面,一个sqlmap就足够用了,只要你用的熟,秒杀各种工具,只是一个便捷性问题,sql注入另一方面就是手工党了,这个就另当别论了。 今天把我一直以来整理的sqlmap笔记发布上来供大家参考 sqlmap简介 sqlmap支持五种不同的注入模式: 1、基于布尔的盲注,即可以根据返回页面判断条件真假的注入。 2、基于时间的盲注,即不能根据页面返回内容判断任何信息,用条件语句查看时间延迟语句是否执行(即页面返回时间是否增加)来判断。 3、基于报
    2023-08-12
  • Windows pip安装失败:no module name

    通常是Setuptools安装出错,下载以下ez_setup.py文件后,先执行:ez_setup.py -U setuptools 重新安装setuptools 通过此ez_setup.py pip重新安装。 #!python """Bootstrap setuptools installation If you want to use setuptools in your package's setup.py, just include this file in the same
    2023-08-12
  • Grunt 之 watch 和 livereload

    现在 watch 中已经集成了 livereload ,所以把它们放在一起说明。 watch 可以监控特定的文件,在添加文件、修改文件、或者删除文件的时候自动执行自定义的任务,比如 livereload 等等。 1. 安装 项目定义在 GitHub 上,地址:https://github.com/gruntjs/grunt-contrib-watch 可以通过 NPM 直接进行安装 npm install grunt-contrib-watch --save-dev 安装之后,需要在 Grunt
    2023-08-12
  • [华为]找出字符串中第一个只出现一次的字符

    输入描述: 输入一个非空字符串 输出描述: 输出第一个只出现一次的字符,如果不存在输出-1 输入例子: asdfasdfo 输出例子: o 1 //用哈希统计词频 2 #include<iostream> 3 #include<string> 4 using namespace std; 5 int hasTable[256]; 6 7 int main() 8 {     9 string s;     10 while(cin>>s)
    2023-08-12
  • mysql操作数据表

    目录 创建数据表 列约束 查看数据表结构 列类型(字段类型) 整型 浮点型 字符串 时间日期类型 Date Time Datetime Timestamp Year 枚举enum 修改表名 增加字段 删除字段 修改字段 删除表 复制表结构 创建数据表 语法: create table 表名( 字段名 列类型 [可选参数], 字段名 列类型 [可选参数] .... ) charset=utf8; 如: create table
    2023-08-12
  • Day 7作业

    Day 7作业  1.看代码写结果 v1 = [1,2,3,4,5] v2 = [v1,v1,v1] v1.append(6) print(v1) print(v2) 结果是:[1,2,3,4,5,6] [[1,2,3,4,5,6],[1,2,3,4,5,6],[1,2,3,4,5,6]] 2.看代码写结果 v1 = [1,2,3,4,5] v2 = [v1,v1,v1] v2[1][0] = 111 v2[2][0] = 222 print(v1) print(v2) 结果是:[222,2,
    2023-08-12
  • shell基础篇(九)函数

    函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高。像其他编程语言一样,Shell 也支持函数。Shell 函数必须先定义后使用 1. Shell 函数的定义格式如下: [function] fun_name () { command1 [retrun n] } 函数返回值,可以显式增加return语句;如果不加,会将最后一条命令运行结果作为返回值。 Shell 函数返回值只能是整数,一般用来表示函数执行成功与否,0表示成功,其他值表示失败。 如果 r
    2023-08-12
  • C# 多态性

    C# 多态性 多态性常被视为自封装和继承之后,面向对象的编程的第三个支柱。 Polymorphism(多态性)是一个希腊词,指“多种形态”, 多态:一个接口多个功能。 静态多态性:编译时发生函数响应(调用); 动态多态性:运行时发生函数响应。 静态绑定(早期绑定):编译时函数和对象的连接机制。 两种技术实现静态多态性:函数重载/运算符重载。 函数重载:在同一范围内对相同函数名有多个定义,可以是参数类型或参数个数的不同,但不许只有返回值类型不同。 运算符重载: 关键字 abstract 声明抽象类
    2023-08-12
  • rails 配置使用mysql

    1 在gemfile中要添加   gem 'mysql2' 2 在mysql数据库中创建三个数据库   dept_dev   dept_test   dept_pro 3 配置文件    default: &default adapter: mysql2 encoding: utf8 username: user1 password: 123 host: 127.0.0.1 port: 3306 development: <<: *default database
    2023-08-12
  • jenkins搭配git 从远程端拉取代码回来执行的问题

    jenkins上git 拉取回来的代码是在 工作区的文件夹里面(默认每次拉取最新的版本下来的)(不是自己本地仓库的那个) (晕~~,一开始以为是拉取回自己的本地仓库) 找到jenkins git里面拉取出代码(工作区),然后去执行即可
    2023-08-12
  • pkg-config用法和gcc cflags

    pkg-config程序是干什么用的?简单的说就是向用户向程序提供相应库的路径、版本号等信息的程序。 譬如说我们运行以下命令: pkg-config 查看gcc的CFLAGS参数 $pkg-config --libs --cflags opencv 会显示如下信息: -I/usr/include/opencv -lcxcore -lcv -lhighgui -lcvaux root@i :# pkg-config --libs --cflags libevent -I/usr/local/inc
    2023-08-12
  • 廖雪峰Java2面向对象编程-5包和classpath-1包

    1.package的意义 如下,存在多个相同类名的文件。当引用Person类,将无法确定引用小红,还是小明的Person类,即同名类的冲突。 小明的Person类:Person 小红的Person类:Person 小军的Arrays类:Arrays JDK的Arrays类:Arrays package就是用来解决类名冲突的。 Java定义了名字空间:package 包 对于任何一个类,其完整类名是:包名 + 类名. JVM 只看完整类名,因此,只要确保包名不同,
    2023-08-12
  • 发的好地方更好地规范和

    2023-08-12
  • shell编程(一)

    目录 什么是Shell ? 什么是Shell ? Shell是一个命令解释器,它的作用是解释和执行用户输入的命令及程序等,用户输入一条命令,Shell就解释执行一条。Shell存在于操作系统的最外层,负责直接与用户对话,把用户输入的命令解释给操作系统,并处理各种各样的操作系统的输出结果,输出到屏幕返回给用户,当我们输入系统用户名和密码,登录到Linux后的所有操作都是由Shell解释并执行的。 Shell命令是存在交互式和非交互式的两种方式。 什么是交互式:交互式模式就是在终端上执行,Sh
    2023-08-12
  • 上一页 下一页