- 博客(49)
- 资源 (12)
- 收藏
- 关注
原创 libuv套接字绑定失败导致的退出异常
1、问题套按字绑定失败导致的loop退出异常2、环境libuv版本:1.42.0及以下OS版本:win10 x643、现象uv_async_send的回调方法中,使用uv_udp_bind(或者uv_tcp_bind,后文以udp举例),将一个本机不存在的IP,绑定到uv_udp_t(或者uv_tcp_t)代表的handle(new创建),绑定返回失败后,对handle进行释放(delete);在退出loop的过程中,应用发生异常。备注:由于主机IP的人为修改等业务性操作
2021-08-18 11:53:32
1065
原创 QT5 “Multicast Receiver Example”组播接收数据的说明
本文基于的QT版本为5.13.0。在更早支持组播的QT版本中,应该也是适用的。在QT提供的“Multicast Receiver Example”示例程序中,udpSocket4这个QUdpSocket对象,是使用下面的方式,进行绑定和加入组播的: udpSocket4.bind(QHostAddress::AnyIPv4, 45454, QUdpSocket::ShareAddress); udpSocket4.joinMulticastGroup(groupAddress4);
2020-12-07 21:37:07
1306
原创 linux下UDP组播接收不到数据的说明
背景在一个跨平台的桌面项目中,由于涉及多线程中对象的创建、销毁等,基于QT的对象绑定机制(QObject子类)来做实现时,需要相当心累的设计,才能避免跨线程的异常。由于QT的这个天然机制,在实现很多业务(非界面)模块时,都避免了基于QObject。网络模块中的UDP等功能,同样的也未基于QUdpSocket及其相关,而是包装了libuv(尽管,对桌面来说libuv也需要再折腾,但libuv作者已经明示了这个点了)现象基于libuv的程序示例,在windows下,可以正常工作(接收到组播数据.
2020-12-07 13:04:33
10800
7
原创 std::mutex的使用备忘
在实际测试中,与使用自实现的自旋做同步比较(看上也是自旋),std::mutex在效率上没有大的差异。但是当出现竞争时,std::mutex的lock会完全的等待,此时CPU利用率会很高,当然其等待也是有收益的:效率最高。但是,在一般的应用里,我们能查看任何管理器时,我们总是蜜汁不希望CPU满载(不想让风扇狂转?)降低CPU负载的套路是:使用trylock。不光出让时间片,...
2020-03-17 15:24:52
351
原创 spinlock同步能力测试
硬件: 硬件型号:笔记本 处理器:Intel Core i5-4310U CPU @ 2.00GHz(4 CPUs) 内存:16G 硬盘:512固态测试方案:使用以下的代码进行比对测试(10个线程,每个线程加数10;循环10000次)#include <thread>class ThreadPara {private: i...
2020-03-12 21:07:34
393
原创 [昨日实践]springboot1.5.x中引用thymeleaf3.0版本的一种简单实现
使用springboot1.5.x建立项目时,选择使用的thymeleaf时,最终对thymeleaf依赖的版本依然是2.x,想使用3.x版本,其中的一种处理方式是: 在项目的pom.xml中的<properties>段内,重新定义如下的几个属性: <thymeleaf.version>3.0.11.RELEASE</thymele...
2019-04-20 11:12:57
1642
原创 spring web运行时根据不同profile的配置,选择性的加载组件(bean)
本文的实践方案其实很久之前就已经实现了(其想法跟实践从主要点来看都非常的简洁),由于我一直想将此方案应用于企业应用中并形成一个比较基础的应用框架,因此关于本方案的文档化拖了很久都没有形成。 运行时加载组件其实是个老生常谈的话题了。比较早的windows桌面应用(最新的桌面应用实现此功能应该更不是事儿了)中,无论是功能组件还是窗口组件,在项目方案定义完接口后,主框架...
2018-09-14 07:33:40
3894
原创 扩展fastjson的SimplePropertyPreFilter,以过滤不需要序列化的属性
java应用在进行系统间通信时,经常会使用json格式进行数据传输交换。利用alibaba fastjson(本文使用的是1.2.46),对象与json字符串的相互转换非常的便利。但是,在对对象进行json序列化时,经常会出现以下的场景:对象的类是一个与数据库表相关的业务实体类,如以下实体类:public class DiagramEntity { private String name;...
2018-04-27 13:04:58
3402
原创 基于mina的短连接组件以及与spring、spring boot的集成
尽管各类标准的系统间交互组件已经非常流行,但采用自定义报文、基于原生socket进行系统间数据交互的模式依然存在。原生socket在做一般的测试性开发时,确实能简便的达成目标。但在做企业应用时,若是在报文交互的需求上,再增加关于传输状态、处理策略等实际需求时,则显得吃力。mina作为高性能开源网格框架,其功能相当丰富。尽管本文的短连接需求从实现上来看,使用mina作为核心,显得大材小用,但是,从实...
2018-04-25 20:00:54
4037
原创 spring集成Thymeleaf,模板页面中调用类的静态成员
在spring框架内使用Thymeleaf时,按照官方文档的说明,在模板内会使用SpEL(spring expressionlanguage)代替OGNL,即可以使用前者约定的一系列表达式。关于SpEL的说明,已经有很多的说明,官方的可见此页面。本文是对其中“T”操作符(说明见此)实践的示例,由T()表达式的使用,我们使用Thymeleaf模板引擎时,在html页面中能够使用类的静态成员。
2018-04-18 18:26:10
5591
2
原创 [昨日调试]Named query not known: Employee.findByName
又是拿到一个三方的前置应用,在使用前一篇《[昨日调试]在本地运行三方公司开发的maven项目》的方案做好依赖包的非仓库本地化后,idea内使用mvn clean package -DskipTests,开始生成war包,一切顺利。然后开始进系统(localhost:port/login.on),输入完用户名、密码,点击登录,然后系统跳转到含有本文标题的错误页面:Named
2018-04-17 15:33:21
1111
原创 计算工作日天数-excel函数networkdays在java中的实现[简化版]
由于某个业务需要计算两个日期间的除去工作日、法定假日的工作日天数,然后想起来excel里面有个networkdays函数,真是神器。在java中如何实现呢?先是搜一搜。奇怪的是,关于networkdays的其他语言实现,竟然没有一搜就一大把的结果,难道这个函数的使用很小众?stackoverflow上,有同学推荐objectlabkit这个库,并且用此库实现了networkdays。然而下...
2018-03-07 22:15:11
1780
2
原创 [昨日调试]在本地运行三方公司开发的maven项目
本文基于的前提是已经取得了项目源码以及打包后的可执行程序包(如war包)。本文的思路其实非常简单,主要是想说明maven提供的灵活配置方式的一种适用场景。也许到这里,你就已经猜到我想说什么了……背景是:因为业务需要,找到了由三方公司开发的前置项目源码,此项目是一个maven类型的spring web项目。在idea内打开后,发现项目的pom.xml文件内定义了段,里面使用的仓库资源地址
2018-02-27 13:01:00
619
原创 jeesite.properties属性文件为utf-8格式时的加载修改
在idea内修改jeesite(https://github.com/thinkgem/jeesite)时,首要的一个地方就是修改jeesite.properties。通常的,我们会在idea内将properties文件的编码设置为UTF-8,因此,你在修改jeesite.properties后,就会出现一些乱码的问题:比如,jeesite登录页面的网站标题是在jeesite.proper
2018-02-23 12:55:38
1214
原创 如何在Thymeleaf中实现ajax请求url的可靠构造?[续]
在之前的“如何在Thymeleaf中实现ajax请求url的可靠构造?”文内,是以绝对url来实现可靠的请求url:通过在html文件内定义一个代表绝对url基本路径的变量basePath,然后在其他的js文件内引用此basePath,由其与请求的相对路径合在一起构造完整的绝对url,以进行ajax请求等操作。 与前文不同的是,本文对url的构造是建立相对根路径的基础...
2018-02-13 22:57:17
3746
2
原创 [昨日调试] org.apache.jasper.JasperException: Unable to load class for JSP
本文碰到的错误问题,其产生原因非常的简单,在大概看完背景之后,将先给出。错误的详细信息在文章末尾附上。 背景:因为需要更新某业务的原因,整理调试了由三方公司开发的一个用于前置对接功能的web应用。虽然其使用的spring等版本非常的老旧(是的,有些系统竟然还在用spring2时代的东西,真真汗……),但由于提供了某个业务版本的源代码,作为整个业务中间节点的我,想了解整个流程,显
2018-02-12 20:25:46
5299
原创 sql实现在评分记录集中去掉最高、最低百分之N评分记录
sql的优势之一是使用单一的命令能够访问到一个记录集,其重要的特点就是非过程化。 在很多企业流行着360评分体系。比如,有A、B、C三个员工竞选某要职,HR组织吃瓜群众位对其三位进行评分,出于不清楚的原因,HR在拿到群众们的评分结果后,会先对某侯选人的得分结果记录集进行排序,再按比例去掉记录两头(最高、最低)的N%评分记录,最后再进行后续计算。 本文是直接解决以
2018-01-13 15:10:13
2010
原创 jdk版本导致的DB2异常:必需的字符转换器不可用。ERRORCODE=-4220, SQLSTATE=null
关于此错误码已经有一些资料进行了说明(详见参考),比如可能是因为DB2版本的问题,使用了不匹配的db2jcc.jar包导致的。本文所说明的可能导致此异常的原因是:有可能是jdk版本不对。 本文使用的db2jcc.jar包的jdbc驱动程序的版本号是:3.50.152。(使用java -cpdb2jcc.jar com.ibm.db2.jcc.DB2Jcc -version查看)远端
2017-12-19 13:37:16
18740
原创 [昨日实践]win2003下安装mysql5.5.57
本文基于的OS:Windows Server 2003 EnterpriseEdition SP2根据https://www.mysql.com/support/supportedplatforms/database.html页面的说明,win2003下面支持的MySQL的最高版本是5.5.57,在https://downloads.mysql.com/archives/community/页
2017-12-04 18:55:57
4384
3
原创 [昨日实践]RHEL5.X安装JDK1.7.0_80
1、 使用SecureFX 上传jdk-7u80-linux-i586.tar.gz 到RHEL5.X的某个目录下:比如上传到:/home/zcn/downloads目录下;2、 解压:$ tar –zxvf jdk-7u80-linux-i586.tar.gz3、 切换成root用户;4、 将2步解压后的文件夹jdk1.7.0_80移动到/usr/local下
2017-12-04 18:54:58
704
原创 [昨日实践]RHEL5.X卸载自带jdk
1、 查看当前jdk安装情况:# rpm -qa | grep jdk以上命令得到的结果可能如下(RHEL5.11):[root@localhost zcn]# rpm -qa | grep gcjlibgcj-4.1.2-55.el5java-1.4.2-gcj-compat-1.4.2.0-40jpp.115 2、 卸载命令:# rpm -e --nod
2017-12-04 18:53:45
564
原创 [昨日实践]CentOS卸载(完全删除)手工安装的mysql5.7
以下删除步骤的前提是:CentOS6下 ,mysql安装在/usr/local目录下,数据目录放在/home/mysql/data/mysql下;1、 停止mysql服务;2、 删除/usr/local/mysql目录。命令:rm –rf /usr/local/mysql3、 删除/etc/my.cnf(或者之前用rpm卸载过mysql后产生的my.cnf.rpmsa
2017-12-04 18:52:23
826
原创 [昨日实践]CentOS手工安装mysql5.7
本文是综合几篇网文后的实践记录,基于CentOS release6.7 x86进行操作。1、 新建mysql用户、组:# groupadd mysql# useradd –r mysql –g mysql –m –s/sbin/nologin 2、 使用SecureFX将mysql-5.7.10-linux-glibc2.5-i686.tar.gz文件上传到目标机器上,具体
2017-12-04 18:51:00
588
原创 [昨日技术]struts1.x中ActionServlet的config/${module}配置说明
在一篇12年前的api说明中看到了关于本文要描述的主题的原版说明(http://www.d.umn.edu/~tcolburn/cs4531/struts/api/org/apache/struts/action/ActionServlet.html),深深的汗一把……起因是某个运转了很多年的节点系统,使用struts1.x开发的。由于了解struts是从2开始的,知道1跟2有大的差异,那时2
2017-12-04 18:48:54
661
原创 如何在spring中等价配置得到原本由jndi配置实现的数据源?
本文最后会附一个简单的maven控制台程序下载链接,你可以直接查看程序。 像本文标题说的,通常在spring web应用内配置数据源时,我们有种配置方式是在web容器中使用jndi的方式配置一个数据源。比如,tomcat内,经常会在%tomcat_home%/conf/catalina/localhost/文件夹内,放置一个web应用对应的xml配置文件,在其中内又包含了,通常是下面的格式
2017-09-13 19:34:37
1365
原创 如何在Thymeleaf中实现ajax请求url的可靠构造?
作为一个应用型码蚁,对jstl、freemaker、thymeleaf等等众多深感无奈……建立springboot应用时,模板中有一项是thymeleaf,springboot现在也是推荐使用这个,然而并没有时间仔细研究它……现在的问题是,ajax请求时,如何可靠的构造url?先说本文的结论,在xxx.html文件中,加入以下的类似代码,即能够可靠的实现: /*<!
2017-08-09 21:14:23
26410
原创 spring boot运行在jdk1.6、tomcat6的说明及demo下载
本文建立在一些达人的技术文、stackoverflow的回答、springboot的官方文档的基础上的。主要是对在idea下开发的springboot1.5.6(相近的1.5.2也适用)web程序,如何使用jdk1.6编译生成,并且能够被正常打为war包部署到tomcat6中运行(tomcat6使用的jdk也是1.6版本)等内容进行介绍。在文章最后,将会赋上一个作者实现的demo下载链接。程序
2017-08-01 21:00:14
6313
6
原创 echarts下工资收入、五险一金、个人所得税走势图表
燕飞南北知暑热,人走东西只为钱。echarts下的line实现的北京地区(2016年基准)工资收入、五险一金、个人所得税计算图表。直接访问:http://gallery.echartsjs.com/preview.html?c=xHJlPbUPRzb附代码:(注:可直接在http://echarts.baidu.com/demo.html#area-sim
2017-06-14 13:41:31
1982
转载 小printf的故事:真正的程序员?
转载出处:http://kb.cnblogs.com/page/570194/作者: Fred Hebert 来源: 程序师 发布时间: 2017-06-06 10:03 阅读: 3971 次 推荐: 14 原文链接 [收藏] 英文原文:The Little Printf(PDF电子书) 第一章 (推荐看完整篇文
2017-06-08 20:09:43
1202
原创 js生成n个和为固定sum的随机整数
js生成n个和为固定sum的随机整数随意写的,随意使用// 本算法仅是为了做某些演示系统时,生成若干组随机数,每组的元素个数及总和均固定。// 随意写的,随意使用function randGenerator(n, sum) { var aryRet = []; var fSumTmp = sum; var iAcc = 0; for (var i = 0; i <
2017-06-08 19:50:31
2586
1
原创 echarts bar内tooltip的formatter回调参数params.seriesId中的’\0’问题以及stack的获取
对菜鸟来说,这真的是一个深坑…… 先说结局: 1、params对象的成员在echarts的“配置项”说明(http://echarts.baidu.com/option.html#series-bar.tooltip.formatter)里进行了介绍,但并没有出现seriesId成员; 2、以3.5.0版本为例,seriesId最终是由3865行的keyInfo.id
2017-06-08 19:47:14
19040
原创 IIS服务器配置文件路径及相关说明
本文的性质为“编著”。“图形化网站管理者”请留步。 问题:当主机上的IIS服务由于各种原因无法打开时,无法看到当前系统内已经部署了哪些网站,以及其对应的目录等信息。为解决这一问题,本文通过查看IIS服务器的配置文件来获取系统内已部署网站的信息。 可能的“误导”预警:配置文件的信息与IIS的版本有关系,但本文仅为了解决问题,将操作系统与IIS版本混在了一起。 对win
2017-05-25 12:51:18
21766
原创 如何在spring boot中获取所有RequestMapping的URL路径列表集?
为什么要做这事儿?自动化、可视化、授权……总之,谁用谁知道 如何在Controller类的方法内获取到系统内已存的所有RequestMapping的路径列表集?简单来说:在带有@Controller注解的类中,添加以下的代码……
2017-05-25 12:41:22
24092
原创 wordybear之STS下spring boot、mybatis多数据源配置完全攻略及源码工程
本文面对初学者,在对基础有些了解但又似懂非懂有些混乱的情况下(作者一般学习新技的最初状态,此时需要冷静)。但是,仔细阅读本文,将会在相同或相似的环境下实现sts下spring boot、mybatis多数据源的配置。多数据源,在项目中,真的常用。
2017-04-09 15:22:56
2401
原创 sts启动闪退、无法打开的一个可能原因
OS:win7 x64jdk:java version “1.8.0_121” x64sts:3.8.4 x64(之前装的3.8.3也是出错,现在看来,应该是一类错误)昨晚睡觉前正常关闭环境,正常关闭电脑,总之一切正常的退出之后,今早再也无法启动,configuration文件夹下的log文件显示大概错误:java.lang.RuntimeException:Application
2017-04-05 13:54:26
6433
2
原创 从零开始编写简易python爬虫:每日房价的获取
1、从零开始编写简易python爬虫:每日房价的获取 本文主要是对eclipse、python3下如何做准备工作以编写一个简易的爬虫程序进行示例(本文将采用获取“天津市国土资源和房屋管理局政务门户”网站上的每日房价作为示例,仅做学习,如有侵权,请告知)。通过本文,您将了解到如何安装三方工具包、如何在myeclipse下配置python开发环境以及相关的参考资料等内容。 1.1 爬
2017-02-22 12:56:45
4769
原创 ADT中maven与jadClipse的冲突问题
在ADT(Build: v22.6.2-1085508)中添加了m2eclipse(3.3.1)后,又添加了jadClipse(3.3.0)。 由于隔夜安装,第二天才发现这个问题,发现在ADT中无法建立maven项目,此外在Window|Preferences中,也不再存在Maven的相关项,百思不得其解,后来才想起可能是jadClipse与Maven会不会有冲突,然后各种度
2017-02-17 12:44:17
809
基于mina的短连接组件
2018-04-25
如何在spring中等价配置得到原本由jndi配置实现的数据源
2017-09-13
python3爬虫程序需要的三个库
2017-02-22
Win7 x64下android开发调试平台的基础搭建
2016-06-28
mod_wsgi-windows-4.4.12
2015-10-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人