
开发技术
财运通
这个作者很懒,什么都没留下…
展开
-
Swing后台工作线程
Swing后台工作线程的各种启动方式测试,其中有些不能启动后台工作线程,在注释中有标注。import java.awt.BorderLayout;import java.awt.EventQueue;import java.awt.event.ActionEvent;import java.awt.event.ActionListener;import java.util.conc...原创 2020-05-04 10:31:07 · 371 阅读 · 0 评论 -
超时定长HashMap
超时定长HashMap可以当做简单的缓存使用,要比一般的jvm内部缓存要快很多,当然了也会比网络缓存有数量级的性能提升。import java.util.Collection;import java.util.HashMap;import java.util.Iterator;import java.util.LinkedHashMap;import java.util.Ma...原创 2020-05-04 10:26:29 · 795 阅读 · 0 评论 -
editplus的ice语法文件和模板文件。
editplus的模板文件和语法文件使用方式自己去百度。模板文件为。#pragma once[["cpp:include:test.pb.h"]][["cpp:include:StreamProtobuf.h"]]module msg{ //下面这样弄可以适用于java和c++ ["cpp:type:test.pojo::Test1","java:protobuf:t原创 2015-06-10 18:37:21 · 1327 阅读 · 0 评论 -
editplus的proto语法文件
在网上找的,然后做了修改完善。#TITLE=proto; This file is required for EditPlus to run correctly.#DELIMITER=,(){}[]-+*%/="'~!&|<>?:;.##QUOTATION1='#QUOTATION2="#CONTINUE_QUOTE=n#LINECOMMENT=//#COMMENTON=/*#原创 2015-06-10 20:33:36 · 895 阅读 · 0 评论 -
Google Protocol Buffers和java字符串处理对比
操作代码大部分从晚上拷贝,懒得敲。下面直接上有源码和测试结果。serabuffer.proto文件,用下面命令生成java代码。protoc -I=./ --java_out=./ serabuffer.protopackage Feinno.Practice.Learn;option java_package = "Feinno.Practice.Learn"原创 2015-06-12 10:42:11 · 2839 阅读 · 0 评论 -
ice和java socket网络传输的对比
下面测试时前面一次测试的补充,以前测试地址见下面博客。http://blog.youkuaiyun.com/wzjin/article/details/46561471采用smartsniff进行网络抓包,客户端和服务器端部署在内部网络的不同服务器上,jdk采用了jdk7。传输的字段都是一样的,拷贝了一个比较长的字符串。socket包的TCP 调用100000次耗时: 56028原创 2015-07-16 18:13:24 · 1966 阅读 · 0 评论 -
Hibernate查出集合里面的对象全部为空原因分析
Hibernate查出集合里面的对象全部为空原因分析症状:hibernate查单表,在后台可是看到生成的sql语句,sql正确,返回的list中可以看到返回的对象数目,但是里面的对象都是null,可以推断查询过程没有问题,问题在绑定到对象的过程中。可能原因有:1、hibernate的pojo中serialVersionUID的值和其他pojo的值一样。这样的情况特别容易发生在拷贝代原创 2016-01-27 11:21:16 · 4844 阅读 · 1 评论 -
Excel批量导入表结构到power designer
在excel中设计好表结构,然后导入到power designer中。原创 2014-06-11 16:13:35 · 7207 阅读 · 0 评论 -
log4j2的一个实例
参考了下面文章的基础上了一些改进,适应模块化的项目日志记录。http://www.cnblogs.com/guogangj/p/4031571.html <RollingFile name="RollingFileInfo" fileName="${sys:user.home}/lo原创 2017-09-15 14:10:30 · 503 阅读 · 0 评论 -
properties文件路径读取
linux下打包成jar后,,jdbc.properties 和jar在文件夹中同一个位置。 String filePath = System.getProperty("user.dir") + "/jdbc.properties";InputStream in = new BufferedInputStream(new FileInputStream(filePath));prope原创 2017-09-19 17:35:38 · 1935 阅读 · 0 评论 -
java代码注释翻译
翻译后注释部分的格式会乱,不过可以手工进行整理。翻译后的文件直接覆盖了原文件,以防万一请先对原文件夹进行备份。原创 2017-11-27 23:55:20 · 3301 阅读 · 0 评论 -
Java正则表达式, 提取双引号中间的部分
正则表达式提取双引号之间的内容,当然了可以找到就可以实现替换了。String str="this is \"Tom\" and \"Eric\", this is \"Bruce lee\", he is a chinese, name is \"李小龙\"。"; Pattern p=Pattern.compile("\"(.*?)\"");Matcher m=p.matche转载 2017-11-29 09:46:30 · 16605 阅读 · 0 评论 -
定长hashmap
import java.util.Iterator;import java.util.LinkedHashMap;import java.util.Map;import java.util.Map.Entry;/** * @Description: 定长hashmap设置好长度后,就只保留最新的长度个数的数据,旧数据会做删除。 * @author wzjin * @date 201...原创 2019-07-03 10:42:38 · 1053 阅读 · 0 评论 -
大量盖楼回复的设计思路
盖楼回复里面包含有对回复的回复。设计的几种思路:1、用长短key来表示树结构;---回复层数限制于key字段长度,采用16进制,主体回复5字段,其他4字段,分别对应100万和6万回复,key字段用255可以63层嵌套,key的生成有点麻烦;---如果采用32位,每层4字符,每层就可以支持100万回复,其他可以5楼后只要3个字符就行;64进制3个字符可以表示10万;---原创 2015-06-30 11:24:07 · 3340 阅读 · 0 评论 -
ice和java socket性能对比。
做了简单的性能测试对比,传递的都是4个英文字符。ice也是采用java调用的。jdk8 x64位,编译等级1.7,本机windows 64位,4核4g内存测试。Google Protocol Buffer版本2.5;ice采用windows 32位,3.5.1版。代码没有做过多的优化,连接的时间没有计算。只测试了速度方面的,没有测试传输的包大小,没有做跨网络的测试。原创 2015-06-19 15:39:27 · 3327 阅读 · 1 评论 -
java调用c++动态链接库---jnaerator命令行生成bridj的包
用bridj自动对动态链接库进行包装成jar包给java调用,对应简单应用还会生成调用实例。没有头文件,生成独立的jar包:java -jar jnaerator.jar *.dll -mode StandaloneJar -runtime BridJ有头文件,生成独立的jar包:java -jar jnaerator.jar *.dll *.h -mode Standa原创 2014-03-20 09:08:10 · 5689 阅读 · 2 评论 -
java使用swig调用链接库
java使用swig调用链接库1、i文件编辑,直接将头文件包含进来即可/* File : xxx.i */ %module xxx %{ #include "test.h"%}%include "test.h"2、生成cxx文件。如果链接库是c的,-c++可以省略。swig -c++ -java -package com.test -outdir原创 2014-04-02 12:27:02 · 3711 阅读 · 3 评论 -
java程序员快速学c++
java程序员快速学c++java程序员学cplus,其实大部分的语法是一样的,但是对java程序员来将,还是有写难点需要注意。看完这些还不能保证会写c++程序,不过一般的程序可以看懂,要写的话要多多练习。---这是一个学习笔记,作为自己学习的记录,还没有完成,在随后的过程中进行完善。一、头文件部分:1、cplus中的函数最好要先声明,声明最好要放入头文件中,这样在cp原创 2014-04-03 16:51:41 · 4617 阅读 · 2 评论 -
C++语言代码检查工具PC-Lint简介
一、概述 PC-Lint是一个历史悠久,功能异常强劲的静态代码检测工具。它的使用历史可以追溯到计算机编程的远古时代(30多年以前)。经过这么多年的发展,它不但能够监测出许多语法逻辑上的隐患,而且也能够有效地帮你提出许多程序在空间利用、运行效率上的改进点,在很多专业级的软件公司,比如Microsoft, PC-Lint检查无错误无警告是代码首先要过的第一关,我个人觉得,对于小公司和个人开发而言转载 2014-04-08 10:17:48 · 1082 阅读 · 0 评论 -
Java 并发模型
适用于 Java 程序员的 CSP,第 1 部分原创 2014-06-30 22:44:24 · 692 阅读 · 0 评论 -
将pdm中的注释拷贝到name
Option Explicit ValidationMode = True InteractiveMode = im_BatchDim mdl ' the current model' get the current active model Set mdl = ActiveModel If (mdl Is转载 2014-06-11 16:37:43 · 1851 阅读 · 0 评论 -
参数2字段按逗号拆分,拆分后每个单词对应一行
select 参数1,参数2,regexp_substr(参数2,'[~,]+'1,level) from (selet 参数1,参数2,rownum rn from 表名)connect by prior rn = rn and leveland prior dbms_ramdom.value is not null order by 参数1;原创 2013-12-28 22:53:37 · 1262 阅读 · 1 评论 -
oracle的sql备用
统计数据库的执行情况:原创 2014-07-10 11:41:11 · 812 阅读 · 0 评论 -
mysql 导入导出数据
mysql source导入数据转自:http://yk1688.blog.51cto.com/2000558/5242181、先使用命令mysql -uroot -p登陆mysql服务器2、然后执行相关命令导入数据。mysql> use dbtest; //设置当前要导入数据的dbtest数据库mysql> set names utf8; //设置编码mysql> s原创 2014-06-20 12:00:33 · 986 阅读 · 0 评论 -
数据库重复记录处理
SQL查询及删除数据表中重复记录 1、 SELECT T1,T2,T3 FROM TABLE Group by t1,t2,t3 having count(*) >1 查找重复记录2、 DELETE FROM TABLE WHERE ID NOT IN (SELECT MAX(ID) FROM TABLE GROUP BY T1,T2,T3) 按条件删除重复记录1、查找转载 2014-06-19 18:40:30 · 865 阅读 · 0 评论 -
取得数据库表结构
下面是用连接的方式取得表结构,有4列,最后一列用于标明约束是单一的还是联合的。适用于oracle,原创 2014-07-11 11:14:21 · 851 阅读 · 0 评论 -
eclipse4.4的google protocol buffer的proto文件编辑器Protocol Buffer Editor安装
eclipse4.4的proto文件编辑器Protocol Buffer Editor安装google protocol buffer 文件编辑器。插件项目名称为protobuf-dt,是托管在google code上,国内现在已经连接不上google code了,在eclipse市场可以发现该插件,但是不能安装。在github上发现 有人已经做了相关的同步,可以在下面地址下载原创 2015-05-29 09:42:37 · 10458 阅读 · 0 评论 -
mysql的语法高亮文件。
网上找的,稍作修改,补充了一些没有显示的关键字,后期只要用mysql还会做持续的补充完善。#TITLE=MySQL#DELIMITER=<>/="'%,.(){}[]+*~&|;#QUOTATION1='#QUOTATION2=`#CONTINUE_QUOTE=n#LINECOMMENT=--#LINECOMMENT=##COMMENTON=/*#COMMENTOFF=原创 2015-06-01 10:14:26 · 1985 阅读 · 3 评论 -
用vc6编译生成的cxx文件
用vc6编译生成的cxx文件以前用codeblock来编译swig生成的文件,总是有undefined reference to `xxx'类似的问题搞不定,换成了vc6来编译。编译步骤如下:1、在vc6中建立新的dll工程,建立一个空白的cpp文件,将swig生成的cxx文件内容拷贝进去;2、把ctp的头文件拷贝到工程根目录,也就是和上面cpp一个位置;3、j原创 2014-03-29 16:38:19 · 1960 阅读 · 0 评论