自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(29)
  • 资源 (8)
  • 收藏
  • 关注

原创 项目自动化之道-1.使用ant进行单步建构

俗话说,遍身罗绮者,不是养蚕人。我们为别人写程序,缺陷有时间让我们自己的工序自动化。如果可以让计算机承担更多的更复杂的周期任务,我们将会有更多的时间做更有价值的工作。自动化可使用shell脚本,构建文件,配置和自动构建工具,并不在于多么深入学习这些,而是要综合考虑学习成本和自动化之后效率的提升。一般来说,现在花功夫学习这些自动化工具,对此后的开发是有很大好处的。      这一系列的总结文章,

2012-11-30 19:49:12 1457

原创 QX项目实战-13.基础架构试验四:JavaWeb消息平台

实验一二三已经实现了对象消息的传递和数据库的重做。本实验测试在JavaWeb环境下对本地数据库进行修改,对修改过程进行封装、通过ActiveMQ传递以及在异构数据库上重做的过程。整个流程如图所示:上述图中,本地数据库通过JavaWeb程序对数据库进行进行CURD操作,他的操作过程通过MQAPP序列化之后传递给ActiveMQ服务器,另一端访问JavaWeb程序,得到当前程序修改的信

2012-11-28 10:57:11 1674

原创 QX项目实战-12.基础架构试验三:异构数据库同步

QX项目中的数据库因为遗留系统问题,两端必须采用不同的数据库。因此存在着异构数据库同步的问题。根据实验一、二,现在已经可以实现在ActiveMQ基础上的消息和对象传递、序列化对象和反序列化对象的功能。这就给异构数据库同步提供了基础。      在实验三里,我们继续采用SQLServer发送数据库对象消息,而客户端接收对象消息解析后交给MySql执行的方法来验证系统的可行性。这些操作中,客户端和

2012-11-26 16:24:30 1257

原创 使用Ant和批处理备份数据

之前每周任务里都会安排一个备份资料、代码的任务,无非是压缩成rar文件,然后缀上当前日期。一般一个月或者一周备份一次,虽然并不频繁却也非常麻烦。最近学习Ant和bat批处理,突然想到可以设定批处理任务来进行定时进行这些操作。思路为:文件由ant压缩命令拷贝到备份目录下,代码由svn导出备份,日常进行增量备份。这些操作可以用计划任务进行每日或者每周执行。      这里以E盘下file文件夹压缩

2012-11-26 15:34:57 2381

原创 QX项目实战-11.基础架构试验二:反序列化对象、重写数据库

上篇文章[1]中,实现了实验的前三步。下面开始实验的后两步:重建对象、数据库操作和消息平台的实现与完善。整个系统的架构如图所示,即传递的对象是封装了数据库操作对象和数据库SQL语言的report对象,在客户端解析完成后,重做数据库:      首先修正上篇文章中的发送和接收消息程序,之前的代码估计因为配置问题导致程序发送消息不是太流畅,这里改用如下版本程序,进行发送和接受report对

2012-11-25 16:38:45 1252

原创 JUnit下的测试和suite

Eclipse下使用JUnit3来进行测试的框架为:package test; import java.sql.Connection;import java.sql.ResultSet;import java.sql.SQLException;import java.sql.Statement; import server.db.DB; import junit.fram

2012-11-24 11:05:08 2184

原创 QX项目实战-10.基础架构实验一:传递消息、序列化对象和数据库封装

为了验证ActiveMQ传递序列化对象与同步的可行性,搭建一个小的测试系统来测试。这个系统的结构为:      其中DB为数据库,服务器端和客户端数据定义和数据是一致的。服务器端CURD为数据库操作类,它将操作对象信息序列化后发送给MQAPP,MQAPP负责和ActiveMQ交互传递序列化后的信息。客户端MQAPP接收到序列化后对象反序列化后,重新交给CURD程序写到数据库中。以上

2012-11-23 21:43:15 1744

原创 QX项目实战-9.ActiveMQ编程实例

按照参考1的配置,ActiveMQ已经可以运行了。但是牵涉到它的架构、部署和运行机制比较复杂,动手编程比较困难。所幸基本的消息收发机制已经可以实现了,所以暂时写一个测试例子来测试下消息传递的功能。      按照参考2所述,本例子采用queue消息的形式,用producerClient来发送消息到ActiveMQ的消息队列,用consumerClient来接收ActiveMQ的消息来显示。pr

2012-11-22 11:03:50 3223

原创 Win下自动备份MySql数据库

Window下可以使用Bat批处理文件来对MySql进行备份操作,备份时一般数据量较大的情况可以使用复制文件的方式,但是这种方式要求服务器停机或者停止写入命令,不大使用。如果数据不大,推荐使用mysqldump命令来备份数据库文件为sql文件。使用方法为mysqldump –uroot –ppassword dbname > db_date.sql。编写bat文件,使用window的任务计划来定时

2012-11-18 18:32:31 1644

原创 Ant结构化程序设计和WEB程序发布

Ant虽然只是脚本,但是却可以用结构化的方式组织。其开发步骤大体上分:1.了解需求,对开发工作进行详细地了解和分析,明确个步骤。2.将整个开发流程进行归纳,简化,画出流程图。3.对流程图进行提炼,抽象出通用函数。4.实现各函数。      函数的编写方法采用传参的target,再用antcall调用时传入参数的方式。如创建目录函数为:       调用时使用:

2012-11-18 15:44:43 932

原创 Ant的主要任务的语法

Eclipse默认提供了对Ant的支持,在window-Preferences->ant下对Ant进行配置,Eclipse下可以对build.xml文件进行编译处理,支持错误检查、格式化。Ant脚本是有Ant任务按照一定结构组成的,主要的Ant任务有:任务大类任务使用方法说明归档任务GZipBZip2

2012-11-17 17:32:32 1856

原创 Ant脚本的详细配置

Ant[1]的全部编译工作都是通过一个脚本build.xml完成的,build.xml是一个标准XML文件,根元素是project,他包含description、target、property和task元素,其中target元素也可以包含若干task元素。 元素 特性ProjectName工程名default默认执行的target

2012-11-16 22:15:15 2586

原创 QX项目实战-8.ActiveMQ的Queue消息和Topic消息

项目使用ActiveMQ传递消息,保证大量数据信息的同步任务。对于这种基础架构层面的东西必须进行测试和熟悉。前几天已经下载安装和测试了ActiveMQ服务器[1],对该服务有了直观认识,下面我们深入了解下ActiveMQ到底能完成什么样的功能。       首先测试Queue消息的生产者消费者问题,在cmd下进入ActiveMQ的example目录,运行ant consumer命令,编译执行消

2012-11-15 21:46:16 2141

原创 Subversion综述

Subversion(svn)是近年来崛起的版本管理工具,是cvs[3]的接班人。目前,绝大多数开源软件都使用Subversion作为代码版本管理软件。Subversion的安装方法见参考[1]。需要注意的是,安装完服务器端之后,在客户端一般要安装tortoise工具[15]或者subversion工具。       首先必须理解Subversion的基本概念[4]。建立仓库后[1],导入项目

2012-11-14 14:19:27 1294 1

原创 Subversion的Checklist

本文PDF手册下载地址 http://download.csdn.net/detail/gongqingkui/4760985Subversion的共同选项:--N 只操作单个目录,不处理子目录--v 打印额外的信息--q 打印尽可能少得信息--username name 指定连接授权时的用户名--password pawd 指定使用的密码--editor-cmd 使用

2012-11-12 21:51:32 1252

原创 QX项目实战-7.ActiveMQ的安装与测试

ActiveMQ 是Apache出品,最流行的,能力强劲的开源消息总线。项目中要使用该技术作为上传下载同步之用。现在测试下功能:1.  首先到官网下载安装包,最新版本为5.7.0。2.  注意ActiveMQ的安装环境要求。3.  文件解压到任意目录,运行bin\activemq.bat开始启动服务。4.  启动后使用netstat –an|find “61616”查看是否有TCP

2012-11-12 16:49:10 1947

原创 Subversion的备份和Tortoise工具

备份      备份:全部备份:svnadmin dump svndb >svndb.20121011      增量备份:svnadmin dump –incremental –revision 100:104 svndb >svndb.100-104      恢复:首先创建新的数据库svnadmin create svndb2再导入数据:svnadminload svndb2

2012-11-10 21:48:11 1615 1

原创 Subversion创建项目及项目间共享代码

使用subversion管理来项目,初始建立方式有三种1.已有的代码导入到项目仓库中2.使用svn mkdir命令创建目录3.从已有cvs、rcs等导入。      使用第一种方式,切换到当前工作目录的最上层,清理掉各种备份和垃圾,只系那个svn import –m “project initial import” svn://192.168.195.54/hello/trunk。导入当前目录

2012-11-10 17:32:28 1857

原创 Subversion的试验分支

有时为了对项目进行试验性的改进,比如对底层功能进行改写,对安全机制进行重新设定。这种操作非常复杂,有相当的失败几率。为了控制这种修改,可以将代码单独拷贝到试验分支中去,试验完成后决定分支的合并或者废弃。      实验分支作为branches的子项目,按照参考文章1的要求,一般命名为TRY-Reason的形式。开发实验分支,可以按照开发分支的一般方法进行,即单独开辟空间签出代码修改代码,或者使

2012-11-10 15:38:32 1325 1

原创 Subversion分支的Bug修正

在发布分支中修正BUG:在发布分支中发现的BUG,我们必须跟踪所有的改动,然后确保这些改动应用到主线和所有发布分支中。所幸的是Subversion使用版本号来跟踪所有的改动,因此我们可以使用某些版本号来表示修改或者修改区间。甚至有些情况下我们需要新建分支来跟踪修改过程。      修正简单的BUG      本例以在分支修改代码后同步到主干为例      1.签出bug代码到本地svn

2012-11-10 13:05:55 1987 1

原创 Subversion发布分支和发布

发布分支:发布操作可以将当前代码转移到分支目录,在此基础上进行清理和发布,使用的命令要操作服务器端仓库,首先建立起分支目录svn mkdir –m “create branches directory” svn://192.168.195.54/hello/branches再将代码拷贝到分支中去svn copy –m “create release branch for 1.0” svn://19

2012-11-09 20:58:58 1229

原创 Subversion组织仓库的一般形式和标签和分支

一般我们看到的开源项目,主项目并不是直接存在比如http://svnserver/shareproject目录,而是http://svnserver/shareproject/trunk这样的目录里,其实这就是Subversion对于项目的目录管理方式的体现。大部分项目在开始时,都有一条主线(mainline),大部分开发工作是在这里完成,项目可能存在发布分支目录(release branches

2012-11-09 20:40:41 1427

原创 Subversion文件加锁

Subversion对于文件的管理分为文本文件和二进制文件,对于文本文件使用subversion可以进行行级别的管理,但是对于二进制文件,subversion使用锁的方式管理,所有的加锁文件都是只读的,而且在本地拷贝对应了一个锁令牌,下面我们模拟下加锁和解锁的过程。        用户Gongqingkui新建readme.doc文件,使用svn status检查状态,发现有了新建的readm

2012-11-07 17:06:31 3144

原创 Subversion的查看改动历史、放弃修改、反向合并

提交改动:首先更新svnupdate,发现问题,解决之后运行自动测试工具,测试完成后再提交代码,并且注意一定要附上注释信息svn commit –m “message”。这里需要注意注释信息不是你修改的什么,而是为什么这么修改。因为修改了什么很容易通过diff命令查看,而为什么修改才对后来者有帮助。        查看改动历史:使用svnlog 命令,带文件名用svn log filename

2012-11-07 11:12:06 9010 1

原创 SCX项目思考-1.模型建立和股权分配方案

SCX项目是本科生和我一块整的创业项目。初步的设想应该是B2C网站,具体的运营和盈利模式,我固然不可能全面掌控,可自我要求也要深度参与。身为技术人员,这些年我也开始转变看法,以前总是把技术看得太重,轻视资本和运营。实际上我觉得,技术在初起步的公司,最多占20%。如果技术人员胁迫管理层要求资源,对于初期发展,应该是不利的。不过BOOS许诺的股权是30%,其实我不太看重,因为实际上大家都知道创业的成功

2012-11-04 20:56:53 1500

原创 QX项目实战-6.数据库的建立

项目使用SqlServer2008数据库服务器,但是现在还没有安装这个版本服务器,所以先在较低版本服务器建立数据库。其它过程都正常,这里遇到了几个新的知识点。        Bigint:sqlServer中的整形分为tinyint、smallint、int和bigint四种。他们范围为0-255、-32768到32767、-2^31到2^31-1、-2^63到2^63-1,也就是说,他们的容

2012-11-02 14:42:08 1086

原创 使用svnant结合svn进行项目构建

使用ant可以进行项目构建,而在svn环境下进行项目自动构建则需要使用svnant来对源码进行操作。本例以从svn服务器上签出代码,在本地编译、执行为例说明svnant的操作。要执行以上操作,需要安装ant、带命令行的svn客户端和svnant。使用TortoiseSVN不可以,因为他没有svn可执行文件。建立的build.xml文件如下:

2012-11-01 21:41:44 3756 2

原创 Ant系统构建工具的使用

Ant是Apache旗下基于Java的开源系统构建工具(类似make、gunmake、nmake、jam),可以帮助程序员完成编译、打包、上传等功能。使用ant的大体步骤如下:1.下载程序2.配置ANT_HOME和Path变量3.编写build.xml文件4.执行程序。Ant工具基于Java语言实现,要求系统必须安装了JDK。它支持java编写的插件和接口。1.下载程序:下载apache-an

2012-11-01 18:06:54 1493

原创 QX项目实战-5.ajax动态加载影响JS功能,SVN的合并

项目快速开发使用基于Ajax的HTML框架,简便易用、开发速度快、无刷新加载。上篇文章介绍了其大体功能和动态调用的实现方法,这里介绍遇到的问题。        在使用Ajax导入的新页面中,含有调用JS代码功能的submenu菜单。但是在Ajax动态加载过程中,注册到submenu中的js函数已经不可再用了。因为所有的点击功能都是在窗口加载时的onready方法中定义的,而动态Ajax加载并不

2012-11-01 11:09:49 1100

Subversion之CheckList

Subversion之CheckList

2012-11-12

PIM2.0个人信息管理系统

PIM2.0是基于B/S模式的个人信息管理系统,技术基础是PHP+MYSQL,运行于支持PHP的服务器上。主要功能包括联系人管理、收发电子邮件、收发站内消息、日历事件管理、任务管理、便笺管理、消费管理、数据汇总、选项设置、全文搜索等。 毕业设计,非商用,开源。

2010-04-24

基于VRML的“神舟7号”虚拟漫游(现实)系统

程序虚拟实现了“神舟7号”、“长征2号F型火箭”,以及配套的发射场等基础设施,实现了用户自由浏览和系统内设交互相结合的虚拟漫游方式,使用户和在使用本程序时获得最大的临场感和真实感。系统通过交互功能使用户直观地参与到神舟7号的发射全过程和神舟七号在太空中执行出舱、释放伴飞卫星、返回调姿等动作中,获得最大的虚拟感。

2009-12-12

单网页纯JavaScript英语字典软件

有段时间我接触到了tiddlyWiKi,深深的被其简单的设计理念所吸引。在单个的网页上实现了本需要服务器和脚本语言才能实现的网页功能,为了复习上学期学过的软件工程也为了更好的学习javascript,我就动手编写了这个单网页的词典和记录本。可以放在u盘等易于携带的地方,在有浏览器的电脑上就可以只有使用,不用额外的服务器和脚本语言就可以实现的动态的添加修改删除功能,更重要的时候所有的数据都存储在这个网页当中而不用另外的服务器数据库。 程序没有采用数据库和动态语言来实现动态功能,而是采用了javascript+xml的方式,这里就牵扯了xml文件字典的来源问题,我是用c语言编程实现的txt到xml格式文档的转换。采用以下c语言程序就可以实现转换。注意这是传参执行程序。例如 word hello.txt hello.xml回车。

2009-08-11

输入法调理器

输入法调理器,十分方便!!!!!

2008-01-02

dsdemo 数据结构算法演示程序

不知道为什么,下了半天终于找到了这个,大家凑合用吧!

2007-10-21

moto tunes

moto的手机音乐播放列表生成器~

2007-10-21

php 文本编辑器

php文本编辑器 asphtml文本编辑器<br>

2007-08-13

空空如也

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

TA关注的人

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