自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(44)
  • 资源 (15)
  • 收藏
  • 关注

原创 mysql5.7实现row_number() over()

mysql5.7根据条件实现自定义排序

2022-03-24 20:04:34 2680

转载 [转载]1000万用户可能造成的并发数量是多少? 解决方案(理论篇)

今天开始对之前所能够想到的一些问题进行一些理论解决方案的研究。首先,1000万的用户可以造成多么大的并发数量,应该是可以被计算出来的。我通过百度进行了一些搜索,关于用户数量与并发数的关系。得到了一些资料,主要参考了一篇名为《并​发​用​户​数​、​吞​吐​量​、​思​考​时​间​的​计​算​公​式》的文档。其中提到了关于性能需要考虑的几个方面,这些内容稍后再讨论。主要先说说几个公式1.平均并发用户数的计算公式 C=nL / T其中C是平均的并发用户数,n是平均每天访问用户数,...

2022-03-24 18:42:24 2236

原创 2017-2022年工作经验总结

2017-2022年工作经验总结

2022-02-21 13:24:35 341

原创 Log4j2漏洞gradle版本修复

最近log4j2爆发了漏洞,我们的工程本身并未引用log4j2,但是引用的第三方包中引用了。解决方法为在根build.gradle下面进行统一升级:allprojects { ------其他配置----- //统一升级 configurations.all { resolutionStrategy.eachDependency { DependencyResolveDetails details -> if (.

2022-01-05 12:24:02 1515

原创 layui找不到正确的laypage路径

昨天,同事遇到一个关于layui的问题,找不到正确的laypage的路径,加载出来的路径一直所在文件的工程路径为基础进行拼接。具体代码示例如下:在某一个1.html文档中采用Jquery的$(...).html()方法,并向其中加入另一个2.html文档,例子如下:...<div class="book-menu"> ... <div id="navBox3" linkpath="/main/monitor/monitor-law/list.html" class=.

2021-12-29 08:51:32 718

原创 工程所用gradle版本

2021-12-27 12:43:13 2369

原创 项目启动会的意义

本人写这篇的文章的原因,请看最后一段。正题还是什么是项目启动会。一般来说,每个项目都会有项目启动会。作为一名资深研发,根据多年工作经验认为,所有的项目启动会都应该是信息共享、边界确认、职责分工、阐述本项目的愿景与期望达到的效果、给予具体实施的人以信息与目标!而非讨论会更甚者演变成了需求挖掘会、甩锅大会。在这里借鉴一篇文章,表达一下我心中的启动大会应该是怎么样的。项目启动会议,是一个非常重要的会议。不要认为它是可有可无的。古代出战前都要鼓舞军心,要把士兵们聚在一起,说攻打目标和喊口号,具

2021-11-03 01:03:34 3073

原创 朋友的困惑

一个朋友向我求助,说他的领导,几年来,曾答应他各种事情,后来都不了了之。朋友很不爽,问我:怎么办?我问他是不是每次都找领导谈了的,他说是的。但是都没有结果。作为过来人,我告诉他,实际上没必要去找领导谈。做到心中有数即可,不要对不确定的事情抱有太大的期望,不要对不确定的人抱有幻想。你这个憨批还去谈了那么多次,别人都觉得你傻,好忽悠!还有这件事不要对任何人提起,包括家人。为什么不能提?这些事给同事说,尴尬;给家人说,徒增烦恼!朋友很不甘心,说这些年就这么被耍了吗?就那么算了?不去在掰扯一

2021-10-14 10:46:57 139

原创 处理多类数据的时候,提供统一的接口的一种方式

很多年前,在一个偏僻的小山村,出了三个了不得的人,老大、老二、老三。弱冠之年,三人都决心绕过村口的大山,去看看山的另一端到底是什么,是否是野猪成群、牛羊成片、良田美酒无限。老大,作为大哥,决定以后邀请村民一起从山底打一个洞过去;老二,觉得这样太浪费时间,应该开辟一条安全的路,从山上或者山脚走出去;老三,想法与老二相似,但有一点不同,他认为,应该制作一些东西,从门口的水路出去看看,是否还有较小的山,在按照老二的想法去干!多少年后,老大以及老大的后人,都一直在挖着那个洞,其中发现了一些石头,

2021-08-31 23:52:43 1444

原创 三十几的职场老油条,差点动武

严格说来,那是29岁那年的冬,因为某些原因,收到邀请,考虑再三,还是来到了目前的公司。初来乍到,感觉新环境还不错。因住的较远,上家公司上班时间是9点10分,这家公司是8:30分,这里也没有轻轨直达,在前一个月,由于公交的不可控,迟到较多。第二个月,仅仅几个人的研发中心就传出"xxx是到这里来养老,完全不会开发的。。。"的谣言。也在那个月,体会到这里人际关系的复杂,来的没多久,就有同事劝我走;对于我这个年龄段的人来说,既然相信并决定来这里,不理会是最好的处理方式;哪一年,基本独立完成了一个小系

2021-07-07 16:58:22 138

原创 uni-app开发小程序,如何手动触发click或者其他事件

在js中,如果想要监听click事件,直接$("#xxx").on("click",function(){}),就可以搞定。那么用uni-app开发,该如何操作?首先uni-app官方已经说明,,用this.$refs这种方式是不行的。采用以下方法可以实现,利用$emit(个人觉得vue的作者应该参考了Qt的信号与槽)在子组件中定义,在父组件中接收(@xx=""的形式,例如@doGetWxPhoneNumber="doGetWxPhoneNumber")可以实现,代码示例如下:/** *

2021-04-28 23:05:35 8910 2

原创 uni-app 使用easycom引入自定义组件,出现Uncaught RangeError: Maximum call stack size exceeded

利用uni-app开发微信小程序,借助它的easycom定义一个全局组件。按照官方说明进行开发,出现了Uncaught RangeError: Maximum call stack size exceeded 这个错误。目录结构如下:c-header.vue内容如下:<template> <view class="container"> <c-header> <view class="login-

2021-04-23 11:18:34 1640

原创 项目打包工具化部署

项目打包工具化部署还是很必要的,像jekens这些工具还是值得上的。

2021-03-29 21:57:43 174

原创 软件项目交接最怕什么

先来一个案例,近期,由于组织架构变动,鄙人接手了几个项目。其中一个项目处于新需求功能开发、老问题维护阶段(简称项目一);另一个项目处于接近收尾,甲方大提整改意见阶段(简称项目二);其他项目都是维护;接手之前,鄙人根据以前的一些了解,对这些项目大概评估了一下,认为功能单一,技术简单,不存在大的技术壁垒或者其他障碍;欣然接手。接手之后发现如下有趣的问题:1、项目一以前对我们说的是全自动配置界面以及功能,实际为纯手写html+纯手工实现前后台;2、项目一前负责人对于功能了解甚少,找他沟通问题,

2021-02-24 09:35:31 1238

原创 什么是好的需求?什么是好的架构?什么是好的编码?

现在是北京时间2021年2月1日22点49分19秒。写在开头:物有瑕疵不可怕,就怕人为打标签!在很多时候,需求、产品、项目经理都是一人分饰;而程序员这边也存在一人分饰多角的情况;那么,这个时候,如何去断定什么是好的需求?什么是好的架构?什么是好的编码?1、什么是好的需求人员?在我看来,能够捋清客户诉求,确定并知道关键需求,知道并确定边界范围的需求人员就是好的需求人员;在实际操作中,需求人员真正需要很深的开发经验吗?很多时候,他们是不需要的,他们需要的是转换能力、理解能力,能够把客

2021-02-01 23:30:03 375 6

原创 技术是否有用?

今天是2021年1月14日,搞软件开发已经有10几年时间。而也要满4年了。人生也迈入了中年阶段。在这两年,我们领导一直在灌输一个观点,中和一点,可以概述为“管理(情商)更重要,技术是辅助”;偏激一点可以概述为“技术无用论”;原因概括如下:1、我们搞的东西技术门槛低(实际上完全搞明白也需要成本,至少目前来看我的小领导还搞不撑头很多东西);2、我们这边刚好有非技术积累很好的同事升职,刚好还是我们小领导推上去的;3、领导对于他听不懂的,就会觉得你在装逼,从不会觉得是自己积累不够;4、.

2021-01-14 09:31:52 239

原创 gradle使用命令行在指定目录下面初始化项目

gradle使用命令行的方式在指定目录下面初始化项目,如下: .\gradle.bat init -p "E:\Pro\java\nanan-idms\"其中: -p参数是指定目录gradle 各参数含义如下:USAGE: gradle [option...] [task...]-?, -h, --help Shows this help message.-a, --no-rebuild Do not rebuild project depen

2020-09-29 14:11:51 1107

原创 代理模式

代理模式也叫委托模式,可以分为普通代理模式、强制代理模式以及动态代理普通代理模式,它的要求就是客户端只能访问代理角色,而不能访问真实角色;强制代理模式,它的要求是必须通过真实角色查找到代理角色,否则不能访问,也就是说在这种模式下,真实角色里面实现了代理,代理必须是它自己指定的动态代理模式,就是在实现阶段毋须关心代理谁,只有在运行阶段才指定代理哪一个对象。通俗点讲就是:自己动手写代理类的方式就是静态代理模式。采用动态代理模式比较为大家所熟知的比如AOP(切面编程),其核心机制就是采用动态代理机制。

2020-09-25 21:50:42 154

原创 代码太短

某日某同事,深思熟虑以后,决定把他的代码用某设计模式进行了重构!当他满心欢喜的看着自己的杰作正常稳定运行的时候,内心还是窃喜的,一为对设计模式的理解加深;二为觉得为这个模块扩展提供了可扩展性!他告诉我这件事的时候,我也很是为他高兴!月底,领导给他的评价是:你写的代码太少,体现不出工作量!他告诉我这件事情的时候,我的内心怎么说呢。。。。...

2020-09-17 09:09:55 181

原创 状态码如何返回Http/1.1 200 OK

近日,在与某平台调试的时候,发觉对方在一直发送,而我方按照他们文档的格式要求返回的数据,对方还是未能结束一直发送。后经查证,对方要求我方返回状态码为Http/1.1 200 OK, 而我方返回的数据为Http/1.1 200;经查证,我方使用的spring-boot-starter-tomcat:2.3.3.Release(tomcat版本为9.0.37),这个版本里面tomcat发行方已将OK这个描述去掉。网上查找解决方案,多为建议降低Tomcat版本号,不使用SpingBoot自带的Tomc

2020-09-10 06:48:09 11183 2

原创 getInputStream() has already been called for this request解决方法二

HttpServletRequest读取流的时候,出现如标题所示无法再读或者读出来表现为空的情况,是由于在框架或者其他地方已经读了一次。在上一篇中用了一种方式处理;在上一种方式中,把HttpServletRequest全部实例化为MyRequestWrapper,用来保存副本;个人始终觉得不是很好。今晚回家,思考了一下,用另外一种方式进行了处理,最终效果一致;记录如下:package net.dlet.dhdemo.configure;import net.dlet.dhdemo.util

2020-09-07 22:37:59 2239 1

原创 getInputStream() has already been called for this request

在以multipart/form-data进行数据传输的时候,通过以下方式处理数据的时候 @RequestMapping(value = "/Devices/1000019$0/Events", method = RequestMethod.POST) public void getStream(HttpServletRequest servletRequest) throws IOException { dealDhData(servletRequest); }

2020-09-06 05:29:20 10436 1

原创 The HTTP header line [connection : Keep-alive] does not conform to RFC 7230 and has been ignored

在测试一个程序的时候,出现了“The HTTP header line [connection : Keep-alive] does not conform to RFC 7230 and has been ignored”这个错误;经搜索关键字 RFC 7230发现是tomcat高版本中,严格按照规范解析。百度了一下解决方案, 都是千篇一律,或许最初的作者是解决了问题的,但是对于我这一版本无效,常见搜索的springBoot2.x的解决方案如下:@Beanpublic Configurable

2020-09-06 01:16:52 8716 1

原创 column “create_time“ cannot be cast automatically to type timestamp without time zone

由于手误,利用PowerDesigner创建表字段的时候,有张表的时间字段类型选择成了timez(timestamp with time zone),本想直接从Navicat修改字段类型为timestamp(timestamp without time zone),没成想报了如下错误:ERROR: column "create_time" cannot be cast automatically to type timestamp without time zoneHINT: You might n

2020-07-19 00:40:59 4361 3

原创 利用OrderBy让数据按照自定义排序

刚才需要要求按照excel表格里面的样式对字段进行排序,搞了一会儿才搞出来。记录一下,主要是利用case when实现自定义排序。SELECT * FROM testTable tORDER BY CASE t.industryName WHEN '化工化肥' THEN 1 WHEN '汽摩' THEN 2 WHEN '材料' THEN 3 WHEN '电子' THEN 4 ...

2020-05-26 00:29:45 728

原创 ubuntu常见集合

一、ubuntu 网络没法连接,输入以下命令检查网卡状态sudo lshw -numeric -class network如果出现 *network disable输入以下命令激活网卡:sudo service network-manager restart

2016-11-15 08:55:44 534

原创 isolinux制作

一、首先下载linux kernel,定制自己的kernel,用make bzImage 生成zImage,将其重命名为vmliuz二、用busybox定做自己的rootfs,并将其制作成initrd.img三、从Ubuntu或者其他linux发行版中找到 isolinux.bin 以及isolinux.cfg,isolinux.cfg按自己的需求定制。四、busybox生成的

2016-11-13 14:18:04 4410

转载 C/C++ atoll函数实现

long long atoll(const char *p){ long long n; int c, neg = 0; unsigned char *up = (unsigned char *)p; if (!isdigit(c = *up)) { while (isspace(c)) c = *++up; switch (c) { case '-': n

2016-08-26 14:12:59 8252

原创 mac osx 离线密码破解 以及自动登录

主机: vmWare workstation系统: mac Osx 10.8首先按照/private/var/db/dslocal/nodes/Default/users/下面以非_下划线开头的plist文件为模板,创建一个plist文件。macOsX用户信息(含用户名、用户密码、用户图片、gid、uid等等)配置文件路径:/private/var/db/dslocal/nodes

2016-08-19 17:40:15 1538

原创 Qt文件操作之——QFileDialog保存文件

QFileDialog m_QFileDialog; //!-- 得到原文件的后缀名 QString suffix_save = QFileInfo(FilePathName).suffix(); //!--- 设置过滤匹配文件格式 QString setFilter = "*.doc;;*.docx;;*.jpg;;*.bmp;;*.xml;;*.txt;;*.

2015-09-19 02:46:59 16379 2

原创 Qt利用QProcess打开路径(含中文路径)的方法

QString cmd = " " ; cmd += filename; //!-- 利用QProcess打开文件,QDir::toNativeSeparators将文件路劲转换成当前系统的标准路径 QProcess::startDetached("explorer " + (QDir::toNativeSeparators(cmd)) );用startDetache

2015-09-18 14:32:19 5844

原创 Qt quoted Printable 解码

/*! * \brief quotedPrintable_decode_return_QString * \param inStr * \return */inline QString quotedPrintable_decode_return_QString(const QByteArray &inStr){ QTextCodec *tc;#if defined(Q_OS_

2015-09-17 09:16:55 1081

原创 QTreewidgetItem关键字高亮

思路为:给QTreeWidget添加QStyledItemDelegate委托,然后重新paint.代码可以优化,有兴趣的话。#include "treewidget_styledItemDelegate.h"#include #include #include treewidget_styledItemDelegate::treewidget_styledItemDelegate()

2015-08-21 11:23:01 4699

原创 wpf——datagrid中如何获取DataGridTextColumn等某行某列的值

如果使用的是mvvm模式的话,可以像下面这么做:xaml:后台函数中可以这样写: var selectItem = curtainDataGrid.SelectedItem as SmartDbViewModel;//!根据点击的item获取集合中的数据string currentChoicEquT = selectItem.EquTotalNum.ToString();mvv

2015-05-14 16:05:16 6710

原创 把文件里面的数据批量替换成带有//的数据

把文件目录下面的文件里面的某个内容批量替换成带有//的字符串,例如将当前目录下面的所有文件里面的QMessageBox::替换成//QMessageBox::,使用方法如下:sed -i "s/QMessageBox::/\/\/QMEssageBox::/g" `grep "QMessageBox::" -rl ./`命令解析: sed , -i[SUFFIX], --in-place[=S

2015-03-03 10:25:40 896

转载 如何判断ACCESS数据表中的某条记录是否存在

原文链接:http://bbs.csdn.net/topics/90499556判断方法为:OleDbConnection con=new OleDbConnection("连接字符串");string name="test";con.Open();OleDbCommand cmd=new OleDbCommand("select count(*) from student

2014-09-24 10:15:57 3178

原创 交叉编译Mesa,X11lib,Qt opengl 补充

对交叉编译Mesa,X11lib,Qt opengl的补充,由于zh5301这位同行在讨论这个交叉编译,他交叉编译qt的时候带有xcb,那么我将我的交叉编译所有的库所需的文件全部发上来,由于我交叉编译的时候考虑到要用opengl、xcb、xserver等,故而我一次性交叉编译了以下的库,方便配置qt的时候根据需要选择,附下:.├── app│ ├── bdftopcf-1.0.3

2014-08-15 13:28:14 5054 4

原创 遍历当前目录及子目录,执行脚本

最近要交叉编译一些东西,而

2014-07-25 22:57:40 1481

原创 交叉编译Mesa,X11lib,Qt opengl

记录Mesa配置文件如下:Mesa版本:Mesa-10.2.3CC=/usr/local/arm-4.8.1/bin/arm-none-linux-gnueabi-gcc CXX=/usr/local/arm-4.8.1/bin/arm-none-linux-gnueabi-g++ ./configure --prefix=/home/work/DownLoad/Mesa --targ

2014-07-21 11:42:38 8078 11

原创 交叉编译Qt5.2.1让其支持触摸屏多点触摸

编译环境和上一篇一样.http://blog.csdn.net/mkndg/article/details/26359055只是qt的configure不同,文件系统的profile不同.

2014-05-23 17:25:05 8893 1

利用Java代码读取大华门禁控制器反馈的IC卡号

大华本身并没有提供Java代码读取IC卡卡号的示例代码,sdk里面也没有详细说明,本例是本人自行摸索出来,可以有效读取IC卡卡号

2020-08-04

wpf模仿iOS滑动解锁模拟器

wpf模仿iOS滑动解锁模拟器,此代码是从网上下的。如有兴趣,请下载查看。主要为wpf模仿iOS滑动解锁模拟器

2015-04-02

InstallShield2013LimitedEdition

vs2013打包部署工具,内附SN以及安装说明的网页链接。安装时请查看readMe。设置积分要求为0分。

2015-02-02

Xorg Mesa opengl 的lib库

Xorg Mesa opengl 的lib库 主机:ubuntu 14.04 交叉编译工具: 版本:arm-none-linux-gnueabi 4.8.1,此交叉编译工具我以及上传csdn备录。点击我的名字,查找我上传的资源可以下载。

2014-08-11

arm-none-linux-gnueabi-linux-4.8.1.part3

arm-none-linux-gnueabi-linux-4.8.1.part3。交叉编译工具,降低积分。供更多人下载

2014-05-22

arm-none-linux-gnueabi-linux-4.8.1.part01.rar

arm-none-linux-gnueabi-linux-4.8.1.part01.rar。交叉编译工具,设置积分为0,供更多人下载

2014-05-22

arm-none-linux-gnueabi-linux-4.8.1.part02.rar

arm-none-linux-gnueabi-linux-4.8.1.part02.rar,交叉编译工具,设置积分为0,供更多人下载

2014-05-22

arm-none-linux-gnueabi-linux-4.8.1.part05.rar

arm-none-linux-gnueabi-linux-4.8.1.part05.rar,交叉编译工具,设置积分为0,供更多人下载

2014-05-21

arm-none-linux-gnueabi-linux-4.8.1.part04.rar

arm-none-linux-gnueabi-linux-4.8.1.part04.rar,交叉编译工具,设置积分为0,供更多人下载

2014-05-20

arm-none-linux-gnueabi-linux-4.8.1.part06

arm-none-linux-gnueabi-linux-4.8.1.part06,交叉编译工具,设置积分为0,供更多人下载

2014-05-20

arm-none-linux-gnueabi-linux-4.8.1.part07.rar

arm-none-linux-gnueabi-linux-4.8.1.part08.rar,交叉编译工具,设置积分为0,供更多人下载

2014-05-20

arm-none-linux-gnueabi-linux-4.8.1.part08.rar

arm-none-linux-gnueabi-linux-4.8.1.part08.rar,交叉编译工具,设置积分为0,供更多人下载

2014-05-20

loongson利用gpio模拟spi测试TF卡的程序

此程序是loongson 1b用GPIO模拟SPI操作TF卡的程序,是可以使用的。实际使用时请根据自己的实际情况修改CS

2012-01-11

tslib1.4(此资源我用过,经证明可用)

此资源我用过,可以用。 svn co svn://svn.berlios.de/tslib/trunk/tslib tslib

2011-05-18

一个简单的makefile

为了好看,将格式修改了一下。包涵一个简单的万能makefile和一个简单的原始的makefile。如要在编辑器中打开,请自己修改一下格式,我是用记事本写的。

2010-10-27

空空如也

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

TA关注的人

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