自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(34)
  • 收藏
  • 关注

原创 欧拉角

3D图形的旋转,有三种表示方法:矩阵,欧拉角和四元数。 本文将重点介绍欧拉角heading-pitch-bank(又名roll - pitch - yaw)。1.heading角 绕y轴转动一定的角度。2.pitch角 绕x轴转动一定的角度。3.bank角 绕z轴转动一定的角度。 欧拉角表示旋转直观简洁(旋转矩阵表示需要9个...

2019-05-29 14:44:17 2207

原创 CMake 入门实战

参考文档CMake入门 CMake官网入门介绍 Cmake官方文档

2019-05-16 17:05:49 471

原创 C#使用MathNet库进行矩阵运算

Math.net计算库是专为.NET开发的开源科学计算库。包含了大部分矩阵运算、线性运算等功能。1.安装 项目 - 右键 - 管理NuGet程序包2.矩阵定义//矩阵的定义和初始化var matrix1 = new DenseMatrix(3); //3维方阵var matrix2 = new DenseMatrix(2, 2); //2维方阵va...

2019-05-15 18:01:46 12255 1

原创 MySql 大批量导入数据时关闭索引

本文通过实验验证:大批量导入数据时需要关闭索引。1.建表create table goods(id int primary key,name varchar(20),key(name));2.插入数据delimiter $$create procedure p1(in num int)begin declare name varchar(20) defa...

2019-05-15 15:56:34 5392 2

原创 MySql 数据库优化原则

1.定长与变长分离 类型为定长的列,如int char(4) time等,放在一个表中。 类型为变长的列,varchar text blob,放在另一个表中。 两张表通过主键关联起来。2.常用和不常用分离 常用字段和不常用字段分离。 将常用字段,如个人信息表中的姓名,出生日期,电话放在一张表中。 将不常用字段,如个人信息表中的个人简介,放在另一张表...

2019-05-15 14:22:27 204

原创 memcached增删改查命令

1.查看帮助memcached.exe -help2.启动memcached.exe -vvv 默认使用11211端口,最大占用64M内存。也可以使用参数 -m 64 -p 112113.客户端连接memcachedTelnet 127.0.0.1 112114.添加 向内存添加一行新记录。语法:add key flag expire length (...

2019-05-15 10:43:32 202

原创 MySql 权限管理

本文实例演示MySql 权限管理。1.user表 user表存储了权限相关的信息。查看user表内容。mysql> select host, user,password from user;+-----------+------+-------------------------------------------+| host | user | ...

2019-05-10 15:12:32 165

原创 MySql 存储过程(procedure)中的continue和exit

本文演示MySql 存储过程(procedure)中的continue和exit的区别。1.建表create table goods(id int,name varchar(20),num smallint);2.插入数据insert into goods values(1,'cat',10),(2,'dog',5);3.定义存储过程delimiter...

2019-05-10 10:53:20 6317

原创 MySql 存储过程(procedure)实例

1.声明变量delimiter $$create procedure p2()begin declare age int default 0; declare height int default 160; select concat('年龄是', age, '身高是',height);end $$delimiter ; 执行结果mysql> call...

2019-05-09 14:30:00 837 1

原创 PostgreSQL外键为空(null)

本文通过实例,验证了PostgreSQL外键可以为空(null)。1.建表 商品表create table goods(id int primary key); 订单表create table orders(id int,goodid int references goods(id) );2.插入数据 订单表中,试图插入不存在的商品...

2019-05-09 11:48:38 1355

原创 MySql 外键为空(null)

本文通过实例,验证了MySql 外键可以为空(null)。1.建表 商品表create table goods(id int primary key)ENGINE = INNODB; 订单表create table orders(id int,goodid int ,foreign key(goodid) references goods(id...

2019-05-09 11:34:28 7629 1

原创 MySql 触发器(trigger)实例

1.创建表 商品表(goods)create table goods(id int,name varchar(20),num smallint); 订单表(orders)create table orders(id int,goodid int,count smallint);2.创建触发器 增加订单时,商品数量自动减少。delimit...

2019-05-08 17:52:56 674

原创 Mysql中的clob和blob

1.clob clob用于存储大量的文本数据。大字段的操作常常以流的方式处理。 相关类型如下:类型 最大大小 TinyText 255字节 Text 65535字节(约65K) MediumText 16 777 215字节(约16M) LongText 4 294 967 295 (约4G) 创建person...

2019-05-08 14:06:16 29543 1

原创 java JDBC 使用配置文件配置连接信息

Java 数据库连接 JDBC(Java Database Connecive) ,是一组专门负责连接并操作数据库的标准。1. 操作步骤通过Class.forName()加载数据库的驱动程序 通过DriverManager 类进行数据库的连接,连接的时候要输入数据库的连接地址、用户名、密码 操作数据库,通过Statement、PreparedStatement、ResultSet...

2019-05-08 09:45:40 2208

原创 事务隔离级别

1.事务的并发读问题脏读(dirty read):读到另一个事务的未提交新数据,即读取到了脏数据; 不可重复读(unrepeatable):对同一记录的两次读取不一致,因为另一事务对该记录做了修改; 幻读(虚读)(phantom read):对同一张表的两次查询不一致,因为另一事务插入了一条记录。2.事务隔离级别SERIALIZABLE(串行化) 不会出现任何并发问题,因为它...

2019-05-06 14:36:32 152

原创 JDBC中的事务

1.事务的特性原子性 一致性 隔离性 持久性2.JDBC事务控制 Connection对象有三个函数对事务控制开启事务 con.setAutoCommit(false); 提交事务 con.commit(); 回滚事务 con.rollback();3.代码实例import java.sql.Connection;import java.sql.Driver...

2019-05-06 14:27:47 228

原创 Mysql修改数据库引擎类型

1.查看表引擎show create table user;+-------+--------------------------------------------------------------------------------------------------------------------------------+| Table | Create Table ...

2019-05-06 14:22:39 1354

原创 SQL注入与防范

1. SQL注入 观察如下SQL语句:String sql = "select * from user where name='" + name + "' and password = '" + password + "'"; 输入用户名和密码:String name = "Harris";String password = "123456"; 拼...

2019-05-06 10:37:54 334

原创 java DBCP 连接数测试

本文实例测试数据库连接池和普通连接。 连接池中通过setMaxTotal()设置最大连接数目。import java.sql.Connection;import java.sql.DriverManager;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement...

2019-05-05 18:02:19 669

原创 java DBCP 线程池

使用Apache提供的commons-DBCP来实现数据库连接池。1.引入jar包 引入三个与连接池相关的jar包: commons-pool.jar,commons-logging.jar,commons-dbcp.jar。 2.代码实例import java.sql.Connection;import java.sql.DriverManager;...

2019-05-05 17:10:53 568

原创 JDBC 批量插入数据

业务场景 向数据库中大量插入数据。一次插入一条数据显然效率太低,应该采用批处理的方式插入。JDBC中的Statement支持addBatch(),executeBatch()和clearBatch()。代码实例import java.sql.Connection;import java.sql.DriverManager;import java.sql.SQLExce...

2019-05-05 16:08:49 743

原创 JDBC 游标&流

业务场景一 读取大量记录。如果查询过滤条件比较弱,一次读出较多的记录。获得的数据量很可能超过内存大小,出现内存溢出的异常。 为了解决上述问题,可以考虑使用游标。游标提供一种客户端读取部分结果集的机制。业务场景二 读取表中的大字段。如果表中包含数据量很大的字段,即使只读取 一条记录,也会超过内存大小,出现内存溢出的异常。 为了解决上述问题,可以考虑...

2019-05-05 15:16:02 1385

原创 java JDBC 连接数据库

Java 数据库连接 JDBC(Java Database Connecive) ,是一组专门负责连接并操作数据库的标准。1. 操作步骤通过Class.forName()加载数据库的驱动程序 通过DriverManager 类进行数据库的连接,连接的时候要输入数据库的连接地址、用户名、密码 操作数据库,通过Statement、PreparedStatement、ResultSet...

2019-05-05 11:17:22 206

原创 类对象占用的空间

1.类对象至少占用一个字节 类中既没有属性也没有函数是,它的对象大小为一个字节。class A {};int main(){ A a; cout << "size = " << sizeof(a)<<endl; //size = 1 return 0;}2. 普通成员函数和静态成员函数都不占用对象的空间。class A...

2019-05-04 18:46:44 447

原创 c++多线程(十九) - std::timed_mutex

mutex获取和释放锁如下:mutex myMutex;myMutex.lock();//业务代码myMutex.unlock(); 当mutex获取锁失败时,线程会一直阻塞。 timed_mutex带超时功能。在规定的等待时间内,没有获取锁,线程不会一直阻塞,代码会继续执行。timed_mutex myMutex;chrono::milliseco...

2019-05-04 11:35:07 5754 1

原创 c++多线程(十八) - windows临界区

1.windows临界区#include<iostream>#include<thread>#include<list>#include<windows.h>using namespace std;class MsgManage{public: MsgManage() { InitializeCriticalSectio...

2019-05-04 09:50:56 391

原创 c++多线程(十七) - std::mutex与windows临界区

1.std::mutex#include "stdafx.h"#include<iostream>#include<thread>#include<mutex>#include<list>using namespace std;//lock()和unlock()要成对使用。//分析需要保护的代码段class MsgManage...

2019-05-04 09:10:42 1589 1

原创 c++多线程(十六) - std::atomic

多线程中,必须确保在同一时刻只有一个线程对共享资源进行访问。可以使用互斥量(mutex)或原子操作(atomic)实现。1.互斥量(mutex)#include<iostream>#include<mutex>using namespace std;int g_count = 0; //全局变量mutex g_mutex; //互斥...

2019-05-02 22:22:47 870

原创 c++多线程(十五) - std::shared_future

1. std::future future是类模板,future对象里面含有线程执行的结果,可以通过调用函数get()来获取结果。但是,get()函数的设计包含移动语义,即只能调用一次,第二次调用时会报异常。#include<iostream>#include<future>using namespace std;int myThread(int n...

2019-05-02 19:17:18 5553 1

原创 c++多线程(十四) - std::future_status

c++中,std::future_status的定义如下:enum class future_status{ ready, //成功 timeout, //超时 deferred //延迟};1. future_status::ready 线程myThread执行5秒,wait_for等待了6s,所以线程myThread已经执行完毕...

2019-05-02 17:27:30 5370 2

原创 Postman使用入门(六)- 关联接口的测试

1.测试步骤 Postman对关联接口的测试步骤如下:从接口的响应中提取需要的数据 设置为环境变量/全局变量 将环境变量/全局变量写入到下一个接口的请求中2.Postman实例 本文演示用Postman测试https://www.apishop.net中的“全国天气预报”的接口。 首先,获取地名对应的ID。然后,将ID设置为环境变量。最后,利用该环境变...

2019-05-01 20:18:44 5373

原创 Postman使用入门(五)- 抓包

本文演示用Postman抓取手机上的请求。1.设置端口号和存储位置2.设置手机端代理 手机和Postman应该在同一局域网中,手机上代理服务器的地址、端口号和Postman相同。 3.Postman抓取手机的访问请求 手机访问网页,Postman可以抓取这些访问请求。...

2019-05-01 16:46:03 2892

原创 Postman使用入门(四)- 接口测试实例

本文演示用Postman做接口测试的实例。测试https://www.apishop.net中的“全国天气预报”的接口。1.全国天气预报1.1基本信息接口地址:https://api.apishop.net/common/weather/get15DaysWeatherByArea 请求协议:HTTP、HTTPS 请求方式:GET、POST 请求格式:JSON 返回格...

2019-05-01 13:29:41 11355 2

原创 Revit 绘制屋顶

建筑 - 墙 - 绘制墙 建筑 - 屋顶 - 迹线屋顶1.平屋顶 拾取墙 - “悬挑”设为500 绘制结果 2.坡屋顶 拾取墙 - 勾选“定义坡度” - “悬挑”设为500 绘制结果...

2019-05-01 09:54:14 2583

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除