自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

常绍新的专栏

关注IT技术,持续学习,持续进步

  • 博客(40)
  • 资源 (11)
  • 收藏
  • 关注

原创 Xaf自定义属性CheckboxList多选编辑器

好久没有更新博客了,有时是有时间没有内容,有时是有内容没有时间。今天则时刚好两者都有了。最近一段使用Xaf做开发,功能很强大,开发效率很高(在熟练使用的情况下),就不说了。但devexpress12.2中也存在我想要的,但他没有提供的功能,比如我想要一个对列表属性使用类似CheckboxLIst的的多选编辑器,作为查询条件。结果框架没有提供,网上也没有找到现成的,所以只有自己做了。参考官方

2013-12-24 17:02:14 2377 1

原创 asp.net操作word的表格

近日开发中用户要求实现导出数据为Word,本来想使用html保存为word的实现,但因用户要求样式很高,使用html不好控制,并且导出中包括图片,使用页面导出时图片还是一个路径,不能把图片包括在word中,所以就必须使用原生的Word进行操作了。开发环境:windows 8 + visual studio 2010 + dotnetframework 4 + word 2010开发过程:

2013-08-27 17:06:04 4783

原创 使用nhibernate调用存储过程实现多返回值

首先说明一下,实际的调用并不真正是nhibernate提供的功能。而只是入口处在nhibernate的SessionFactory,所以这个标题有点不太对题。具体实现:存储过程是oracle的,过程如下:create or replace procedure TestAA(abc varchar2, ccd out varchar2, op out varchar2)asbeg

2013-08-22 11:22:22 3640

原创 NHibernate+Spring.net配置

1. 项目引用:DAL和BLL增加引用: common.logging, nHibernate,  Spring.aop, Spring.Data, Spring.Core, Spring.Data.NHibernate332. Web.config配置

2013-06-25 21:31:11 5766

原创 powershell生成svn日志(word)

目标:从svn中得到日志,按给定的格式生成Word文件。word文件格式如下:每日构建更新记录标记说明:+ 新功能全部完成。# 新功能部分完成。@ 功能完善(原来已经完成的功能,再次完善)。* 修正bug(需要在“每日构建日志”中体现的BUG)。!不能从页面体现的内容。2013-03-14  Eagle_V2.0   SVN版本号

2013-03-22 15:47:05 3209 2

原创 jenkins邮件配置

jenkins自带的邮件管理太弱了,为了能按自定义的方式发送邮件,需要安装一个插件: Jenkins Email Extension Plugin。1.配置邮件:通过“系统管理”-“系统设置”,进行系统设置界面,上面的内容在“使用Jenkins配置自动化构建”中已经讲过,直接移动到设置页面的最下面,“邮件通知”部分,设置上“stmp服务器“和”用户默认邮件后缀“,如图:

2013-03-22 14:50:56 54446 3

原创 使用Jenkins配置自动化构建

持续集成是个简单重复劳动,人来操作费时费力,使用自动化构建工具完成是最好不过的了。为了实现这个要求,我选择了Jenkins。从http://mirrors.jenkins-ci.org/windows/latest下载windows下的最新安装版jenkins。(如果不能安装,从http://mirrors.jenkins-ci.org/war/latest/jenkins.war下载wa

2013-03-06 14:11:55 403035 34

原创 Extjs处理级联数据的统一保存

原始需求:1)有一个两级级联的表格:分组与规则,一个分组下可以有多个规则;2)保存时要统一保存,也就是不能添加一个分组或规则就保存一下,而要到最后点击保存按钮时,把本次所有的修改一次性的提交了。 分析:1)      保存时分组与规则必须关联起来。否则,如果新加两个或多个分组时,新加分组下的规则,因新加分组都没有Id,这些规则会没有办法区分自己属于哪个分组。如新增分组:[{id

2013-01-15 14:53:28 2950

原创 Spring Aop应用一例

起因:做的项目,三层架构:domain层(dao)、façade层(business)、view层。View层用Extjs实现,使用SSH组合,在façade层配置了REQUIRED型事务,在domain层没有采用默认事务。按说,在façade层配置了事务之后,同一次操作(同一个façade方法)对domain层的调用一定应该是同一事务,这个由spring保证的。但领导怀疑看到有不一致的数据,

2013-01-05 10:43:39 1479

原创 正则表达式实现除去重复的单词

起因:还是动态生成图表时的问题,因为字段是动态设定的,可以在多个轴、序列中设置字段,这就很有可能会存在字段的重复问题。重复的字段生成Sql并执行是没有问题的,但执行的结果,生成List(执行Hibernate的sqlquery.setResultTransformer(Transformers.ALIAS_TO_ENTITY_MAP).list())时就会有问题了(抛出异常)。所以就要除去查询sq

2012-12-28 10:28:44 9783

原创 js实现json数据行到列的转换

前面实现了Ext动态生成图表的功能,满足了基本的要求。后面用户提出这样的问题:有如下的数据:月份                   电量                   单位201201              33                       郑州201202              35                       郑州201203

2012-12-24 15:42:24 6880 1

原创 自定义struts过滤器与拦截器实现

原始出发点:我们开发的系统中包含多个子系统,而我开发的查询设计器是个独立子系统,在单独操作查询设计器时,因没有与控制中心交互,当单独操作查询设计器的时间超过控制中心设置的超时时间时就可能会引发控制中心的超时,但实际上用户一直在操作。为了解决这个问题,就需要在用户操作查询设计器时,同时给控制中心发送一个信息,使在操作查询设计器时控制中心不会超时。查询设计器首页是index.html,控制中心

2012-12-21 11:49:24 6468

原创 Ext图表的动态生成

根据公司的规划,要实现一个自定义的查询组件,其中包括了自定义图表,基本要求是:1、  图表可以自定义,定义完成后保存到数据库中2、  根据保存到数据库的图表定义正确的展现出图表,包括样式、轴、序列、查询条件、查询按钮等。3、  数据源通过配置获取,再根据数据源,查询出数据(可能不在同一个数据库中)。 这里不关心图表定义、数据来源和图表展现时的查询条件与查询按钮等,只关注如何用E

2012-12-18 16:21:17 3156

原创 使用excel数据初始javabean

初衷:单元测试要求实现隔离,但实际的系统中的类往往是相互依赖的。比如常用的分层实现,业务层一般依赖于数据存取层。业务层多是使用数据存取层实例化实体类,然后进行业务处理。如果业务层处理的是单个或很少的实体类,则单元测试时,在程序中初始实体便没有什么问题,但如果业务层要处理的大量的实体类时,要在单元测试中初始实体类列表就比较麻烦。基于这个情况,我想使用excel数据来批量初始实体列表。过程:首先网

2012-11-29 20:54:39 3363 1

原创 Eclipse中使用JstestDriver+Jasmine搭建javascript单元测试环境

在进行Web开发的过程中,javascript的单元测试一直是比较难以处理的问题,主要是因为对单元测试的重视程度不足,而且单元测试要花费比较多的精力,另外一个原因是没有一个合适的单元测试环境。在Eclipse中使用Extjs进行Web开发的过程中,我一直想把Javascript的单元测试环境搭建起来。先后找到JsTestDriver和Jasmine,它们各有专长。JsTestDriver可在开

2012-11-19 22:24:18 5650 2

原创 使用setInterval同步加载Ext多个Store

我们知道Extjs加载Store是异步加载的,这有很多好处,这里不再说明。但有时也需要多个store同步加载,比如我这里遇到的情况:动态解析生成图表,需要同时加载完成图表样式、图表轴、图表序列和图表数据之后才能完整解析生成图表,任意一个store没有加载完成时,解析数据都会造成解析错误,所以必须保证全部store加载完成后才能正确进行解析。要怎么保存多个store加载的同步呢?经常查资料、和思考、

2012-11-15 20:43:41 4227

翻译 理解javascript函数调用和“this”

2011.8.11多年以来,我看到大量关于javascript函数调用的困惑。尤其,许多人抱怨函数调用中“this”的语意是混乱的。在我看来,大量这样的混乱可以通过理解核心函数调用原语被清理,然后再看所有其他在原语之上进行包装的调用函数的方法。实际上,这正好是ECMAScript规格对这个问题的考虑。在某些领域,这个是一个规格的简化,但基本思想是一样的。核心原语首先,我们来看核

2012-11-13 22:11:57 3029

翻译 测试驱动JavaScript开发实战

TDD是一个迭代开发的过程,每个迭代开始于写一个要形成我们正在实现的规格的一部分的测试。短迭代让我们得到对正在写的代码的更多的即时反馈,糟糕的设计决策更容易被捕捉。对任何产品代码都优先写测试,良好的单元测试伴随良好的范围覆盖,但那只是它的一个副作用。再版指南每隔几个星期,通过该网站的访问历史,我们重新审视我们的读者最喜欢的帖子。这个指南首次发布于2010年11月。颠倒开发顺

2012-10-28 10:36:37 5943

原创 Extjs实现多个Grid使用同一个Store,但显示不同的内容

在Extjs开发应用的过程中,遇到这样的要求:存在一个数据库表的内容(比较有字段A1,A2,A3,A4,B1,B2,B3,B4,C1,C2,C3,C4,D1,D2,D3,D4),在前端显示时,要在grid1中显示部分内容的数据(如A1,A2,A3,B1,B2,B3),在Grid2中显示另一部分内容的数据(C1,C2,C3,D1,D2,D3),在第三个Grid3中显示全部的数据的另外一些字段(如A1

2012-10-17 21:49:33 7739 2

翻译 使用Hudson与JsTestDriver实现的Javascript持续集成

JsTestDriver的单元测试兼容XML输出使它非常简单的建立JavaScript持续集成。这篇文章通过Hudson帮助你开始(创建自己的Javascript持续集成)。安装Hudson使用Hudson创建持续集成非常简单,特别是在基于Linux的Debian系统上。hudson-ci.org上有一个很好的并且简单的安装Hudson.deb的方法:sudo

2012-10-16 11:37:32 2199

原创 Spring动态注册bean实现动态多数据源

项目原来已经实现了多数据源配置,实现方式为在beans.xml文件中直接配置多个数据源bean,然后在使用数据源时通过HotSwappableTargetSource动态切换数据源(详细内容请Google)。可领导不满意,要求只在属性文件中配置相应的连接信息,并要求动态数据源除配置的属性外,其他属性都继承系统默认数据源(DataSource)的属性。然后给出的属性文件中数据源的格式为:#连接数

2012-10-15 10:10:45 15776 13

翻译 单元测试101:你测试你的javascript吗?

你当然是测试你的代码。没有写出相当数量的代码后不运行一下就直接丢到产品中。在本文中我对你是如何测试的进行质疑。如果你不是已经尽可能的多的自动化测试,为生产力和信息提升做好准备吧。一句话的警告:我将在本文中谈论单元测试和测试驱动开发(TDD),如果你已经得出结论:下面的任何理由对你都不适合,那么请继续阅读,或者至少阅读从我为什么要关心?到最后: 我使用一个库,如jQuery,它保

2012-10-14 11:14:42 10827 2

原创 dotnet读sybase数据库乱码问题一解

两年前,在项目中因要从另一厂商系统sybase数据库抽取数据,在协调好所有格式、内容之后,编码的过程中发现了一个问题:dotnet从sybase数据库读出来的中文是乱码!而使用sybase的SQL Advantage查询出来的数据中文正常,该厂商使用java读出来的数据也正常。我们知道,这是字符集的问题,通过对数据库安装字符集可以解析,但数据库是其他厂商的,我们无法让他们为我们安装需要的字符集。在

2012-08-25 15:22:14 2706

原创 ExtJs使用Array向后台发送大量数据

我们在使用Extjs开发系统时,Extjs通过json从后台获取数据,同时保存数据时通过Post方式向服务器发送数据:Ext.Ajax.request({ url : "/application/controller/field/AddHeaderGroup.action", method : 'POST', params : { displayName:no

2012-08-22 15:51:12 6858

原创 使用Rhino实现自定义函数

因为一些特别的要求,系统要提供一个自定义的文本框,让用户输入自定义的计算,系统要提供对用户输入的内容的解析和结果计算功能。经过一些搜索、查找和分析,选择使用Rhino和BSF+Beanshell。首先是使用Rhino试验了一下,感觉还不错,记录下来。BSF+Beanshell还没有试,后面试了再说。         先从 http://www.mozilla.org/rhino/下载最

2012-08-07 11:28:38 3858

原创 Ext TextArea 在光标位置插入文本

前两天做了一个公式编辑窗口,使用textarea作为编辑框,要实现的主要功能有:1、 可以任意编辑,2、 点击操作符号按钮(+-*/等)时在textarea的光标位置插入操作符3、 双击grid字段时,在textarea的光标位置插入字段名 基本代码很容易就完成了,如下:/** * Created with JetBrains WebStorm. * User: 常绍新

2012-07-27 21:58:25 4873 1

原创 Ext Tree新增节点

前两天做Ext Tree新增节点时花了好长时间才成功在树上增加了新节点,现把Ext Tree新增节点的过程记录下来,作为记念。1、  创建目录结构如下2、  然后分别创建控制器、model、store、view文件,完成之后文件内容如下3、  创建树本身没有什么难度,按Ext例子做就可以了。4、  在新增树节点时,我无论是调用parentNode.appendChild(n

2012-07-21 22:33:37 7768 3

原创 Extjs拖拽

最近项目前台使用Extjs实现,其中用到了Ext的Gridpanel的拖拽,现把相关内容总结,并写成一个例子。本例子使用Extjs4.1的mvc模式实现。第一步搭建程序架构创建index.html文件,创建app.js文件,创建app/model、app/view、app/controller和app/store目录。Index.html的很简单,内容如下:<!DOCTYP

2012-07-09 16:32:04 7594

转载 禅道程序员的10条原则

在一个阴雨的早上,我坐在桌子旁,开始想如何才能高效的工作。在我成为一个自由职业者之前,我有很长一段时间都很努力工作,但收效甚微。  我在2006开始接触禅学。我马上意识到:古代的禅宗大师们几百年前早就已经知道现今的程序员应该如何工作。虽然我很讨厌“如何成为一个更好的程序员”之类的文章,但我仍旧想分享一些我的想法。它对我来说起到个提醒的作用,如果你有什么想法,也请留言。1.专注 | Focu

2012-06-07 22:14:55 1472 1

原创 Oracle子查询性能优化一例

背景:    要做一个birt报表,数据库是oracle10g,但数据源是从多个数据表中得到的,所以只能写存储过程,把数据整合到一个临时表中去。完成的存储过程大致如下(只保留主要代码):createor replace procedure Rpt_Dyhgl_year( rptyear in varchar2, --年yyyy --rpttype

2012-05-23 10:30:03 7099

原创 Tomcat配置出错问题一例

把Tomcat安装到服务器(windows200332位系统)上,修改配置文件server.xml中端口(避免端口冲突)后,运行startup.bat,出现很奇怪的提示:发布….war包!实际该tomcat的webapps目录下根本没有任何的war包!而且,运行一会之后,命令窗口自动关闭。问题出在哪呢?折腾了一会,没有任何的头绪。静下心来看startup.bat的代码执行过程。其前

2012-05-13 09:26:49 1036

原创 birt报表运行时用户名、口令错误一例

使用birt开发出来几个报表,在给用户部署时,有一个报表老是出现用户名口令错误,从而造成oracle用户被锁。在现场直接使用birt设计器,没有问题,而一部署到运行环境就不行。首先排除问题:1、配置的用户名口令正确,报表设计时连接的用户名口令也正确。     证明:设计时预览数据正常,配置的其他报表显示正常。2、报表本身没有问题:     证明:把报表放到公司搭建的运行环境

2012-05-10 18:14:58 2162

翻译 Oracle透明网关for sybase

本文根据《Oracle® Transparent Gateway for Sybase,Administrator’s Guide 10gRelease 2 (10.2) for Microsoft Windows》的第二章“Configuring the Gateway”翻译,不过不是完整的翻译,只是把主要的内容进行翻译和说明。1、配置网关a)  选择网关的系统标识(system i

2012-05-03 21:57:37 1943 1

原创 js保留两位小数

今天在做Birt报表时, 要显示一列百分比的数据,但因一些特别的原因,不能使用使用百分比样式,即如果数据是0.9538不能显示成“95.38%”的样式,必须显示成“95.38”。开始时想使用javascript的内置函数Math.round(),可Math.round()只能显示为整数,而不能保留小数。再网上搜索了一下,还是利用Math.round(),写成Math.round(x*100

2012-04-24 15:56:35 117914 6

原创 搭建Maven开发环境小结

如上篇如述,生成好maven项目之后,正常的jsp文件是可以运行的,但如果使用struts+spring+hibernate等,则需要进行更多的配置。之前我的多次尝试部署,都是如上篇生成maven项目之后,再建一个process的maven模块,在process模块的pom文件中添加需要的各种依赖。系统可以正常的编译,但总是不能正常的运行。         经向java老手请教,自己多次尝试,

2012-04-17 09:51:44 1554

原创 使用JavaEE开发的一个内部图书管理系统(1)

首先说明几点:1、  这不是一个教程,而是我自己学习的一个过程的记录,所以过程中会有反复、甚至错误。2、  开发过程计划采用敏捷方法的逐步求精方式进行。关于求精的过程的初步想法是:a)        先使用jsp实现功能b)        把前端和后台功能分离,前端使用struts实现c)        把和数据库的交互部分剥离出来,使用hibernate实现d)

2012-04-14 17:47:31 10431 1

原创 oracle Merge使用小结 编辑

使用Merge也有一段时间了,现把Merge的用法进行简单的总结: Merge into 数据表 别名 using (表名、视图或查询语句) on (条件) when matched then --匹配上后 update ... [where

2012-03-31 21:49:32 573

原创 oracle Merge使用小结

使用Merge也有一段时间了,现把Merge的用法进行简单的总结:Merge into 数据表 别名using (表名、视图或查询语句)on (条件)when matched then --匹配上后 update ... [where ...] --where条件可选when not matched then insert ...

2012-03-31 21:29:07 96

原创 学习NHibernate

 通过Grove开始学习ORM,但在网上找到例子不能用,经修改后可以编译了,但还是不能运行。后觉得Hibernate在java中的影响行大,现在NHibernate已经到2.0了,就用NHibernate作为学习ORM的工具吧。找了两个例子做下去,成功了,可是觉得还是对NHibernate什么都不知道,又找文档看,大概知道了一点,但还是不明白,继续找文档看,找例子做,可是越看下去,涉及的内容就越多

2006-08-29 14:44:00 901

原创 学习Grove

今天学习Grove,参考http://www.codesky.net/article/doc/200404/200404179813933.htm但在第二步生成CustomerDB和AddressDB时不对,如下红色部分        public void Insert(Customer c)         {              IObjectOperator oo=Obj

2006-08-24 18:13:00 1234

ExtTreePanel新增节点

我的ExtTreePanel新增节点源代码

2012-07-21

Extjs Grid2Grid拖拽

自己写的一个Extjs Grid2Grid拖拽

2012-07-09

Transparent Gateway for Sybase

oracle对sybase的透明网关官方文档

2012-05-03

有效的工作分解结构.pdf

有效的工作分解结构, 项目计划的基础哦,讲的很不错的

2010-04-25

ActionScript 3.0语言和组件参考

ActionScript 3.0语言和组件参考

2010-04-25

日期时间选择js脚本

日期时间选择的js脚本,使用方式 input的onfocus="setday(this)" 来源于互连网

2008-12-18

carbide.vs.301.part2

carbide.vs.301.part2

2008-07-12

carbide.vs.301

carbide.vs.301.part3

2008-07-12

carbide.vs.301

几次从找carbide.vs.3,结果是假的,终于找到了真的,与大家共享。

2008-07-12

代码大全(中文版)

代码大全,中文版,其他的还要再介绍吗

2007-05-31

国简标准-软件文档模板

国简标准-软件文档模板

2007-05-31

空空如也

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

TA关注的人

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