- 博客(42)
- 资源 (2)
- 收藏
- 关注
原创 .NET中提升当前进程的UAC权限
User Account Control (UAC)是从windows vista系统开始增加的一个安全控制组件。正常情况下,应用程序都运行在较低的权限级别上,但有时不得不强制要求当前进程以较高的安全级别上运行,这时就希望程序自身能够强制要求用户提升当前进程的权限,下面的方法就实现了权限检测与提升。 /// /// 检查当前进程是否以administrator身份运行/// /// /// public bool IsRunAsAdmin(){ Windows
2010-11-11 19:02:00
1905
原创 Silverlight与Flex的比较选择
flash已经出现很多年了,其应用大多局限在flash广告、flash小游戏和flash视频播放器等方面。在RIA方面的应用却很罕见,鉴于RIA的广阔前景,Adobe推出了Flex技术,希望能够在RIA方面有所作为。不久微软就推出了Silverlight与之抗衡。由于两者在技术上的相似性,所以Flex和Silverlight经常被拿来做比较(当然还有html5),这里仅对二者做简单对比,以便技术路线选择。 Flex优点: 1.Flex出自Adobe之手,而图形图像设计与处理,界面渲
2010-11-10 16:45:00
1952
1
原创 Flex中使用HttpService和WebService方式通信
HttpService、WebService、RemoteObject是Flex中使用的三种通信方式,由于RemoteObject对服务器端环境的要求,最常用的还是前两种通信方式。这里仅对Webservice和HttpService这两种方式做简单封转演示。 WebService: package com.sample.Service{ import mx.rpc.AbstractOperation; import mx.rpc.events.ResultEvent; impo
2010-11-10 14:10:00
2961
原创 ActionScript实现TreeView数据结构
由于ActionScript语言的动态特性,flex中所有树形结构数据都是直接使用xml进行处理的,虽然非常灵活,但是在使用时也会感到不方便,因此不妨实现一个Treeview的数据结构,并以此数据结构作为mxml中的数据源,使用起来就会方便很多了。 TreeNode的代码: package com.sample.Control{ import mx.collections.ArrayCollection; [Bindable] public dynamic class T
2010-11-10 13:24:00
1460
原创 在Ubuntu中配置ASP.NET站点
mono是.NET在Linux等非Windows平台上的第三方实现(地址:http://mono-project.com),借助它就可以实现.NET的跨平台应用。虽然mono还不能支持所有的.NET应用,但对于普通的小型程序,mono已经足够胜任了。更让人鼓舞的是当前最为流行的桌面Linux系统Ubuntu已经集成了mono的运行环境,只要手上有一个.net应用程序,拷贝到Ubuntu中,然后就可以运行了。实际上,在Ubuntu中,已经有一些应用程序是用C#完成的,例如附件中的便签程序Tomboy
2010-11-10 08:55:00
5014
原创 IIS中Silverlight的配置
由于Silverlight是客户端技术,所以Silverlight在配置时对IIS并没有太多要求,只需要IIS可以响应Silverlight所请求的资源即可。配置步骤比较简单,只要在站点属性中添加MIME类型即可。 在IIS中点击站点属性,在“HTTP 头(HTTP Headers)”标签页中,点击“MIME 类型(MIME Types)”,点击“新建”,加入以下条目: 扩展名 MIME类型
2010-11-08 20:49:00
2759
原创 .NET中常用数据库连接串
关于数据库连接串: 参考:http://www.connectionstrings.com/ 数据库: SQLServer2005: 访问器名称:.NET Framework Data Provider for SQL Server Type: .NET Framework Class Library Usage: System.Data.SqlClient.Sql
2010-11-08 16:56:00
1488
原创 Eclipse上的Web项目调试
在Eclipse中开发Web项目的首要难题就是如何进行代码调试。本文简要说明一下在Eclipse中使用Tomcat和Jetty调试Java Web项目的方法。 Tomcat插件方式。Eclipse自身可以通过下载安装Tomcat插件的方式进行调试,由于插件中集成了tomcat的运行环境,所以不需要独立安装Tomcat服务器。该插件网址http://www.eclipsetotale.com/tomcatPlugin.html,插件下载地址:http://www.eclipsetotal
2010-11-08 16:35:00
36273
1
原创 Spring与Hibernate、Struts、Log4j整合
SSH+Log4j是比较经典的Web解决方案,它们每一个框架都自成体系,致力于解决不同层次和领域的各种问题,把他们整合在一起可以发挥各自的专长,实现优势功能最大化。每一个框架在设计时就为不同的框架融合预留了解决方法,因此只要方法得当,这些框架是可以完美融合的。hibernate、struts和log4j之间并不存在很明显的交叉关联,因此框架整合主要是spring与hibernate、spring与struts、spring与log4j之间的整合,以下分别介绍说明。本文使用的框架版本分别为:s
2010-10-28 16:16:00
4427
原创 Log4j配置
log4J是java中最为常见的日志管理组件,通过log4j可以轻易的在任意代码位置输出日志,并可以灵活的控制日志的输出,是各种系统中不可缺少的功能组件。这里仅对log4j的配置作简单介绍说明。 首先到log4j的官网下载log4组件,官网地址http://logging.apache.org/log4j/,本文使用log4j-1.2.12.jar版本的jar包。 然后创建log4j配置文件。配置文件可以是xml格式或properties格式,文件名称可以为任意名称
2010-10-28 14:51:00
1618
原创 Struts2配置
Struts是应用较为广泛的MVC框架,对servlet作了较好的封装,可以快速的实现MVC模式及拦截器等功能,并且可以方便的和spring结合使用。本文将对struts2的基本配置进行简单说明(这里仅涉及纯Struts2配置,不涉及与Spring的整合)。 首先下载并应用struts2的jar包,官网地址http://struts.apache.org/,本配置说明基于struts2.1.8版本。需要说明的是,Struts2与原Struts1完全不同,Struts2已经整合了
2010-10-28 11:30:00
965
1
原创 Spring配置
spring是在Java中应用最广泛的IOC框架。spring的兴起源于控制反转的思想(或DI,依赖注入),传统的软件开发就像造房子,一层一层的累加上去;而控制反转的思想就像造汽车,先制造部件,然后组装起来,让各个部件一起工作。因此使用IOC的方法进行软件开发可以获得更大的灵活性,可以在任何时候把部件拆开并重新组装。当然IOC并非全都是优点,制造并组装很自然的会增加组装的开销,当部件粒度太小,组装非常繁琐的时候,IOC还是会让人头疼,部件粒度还是把握好为宜。 IOC中的部件,
2010-10-27 17:23:00
737
原创 Hibernate配置
hibernate是java中常见的一种ORM解决方案,可以实现数据库类型无差别化,以对象方式快速访问数据,极大的提高开发效率。由于hibernate框架本身的配置选项和应用十分庞大复杂,因此这里只对hibernate的基本配置使用加以说明。 首先当然是下载Hibernate框架。可以从官方站点上下载最新的版本,下载地址http://www.hibernate.org/downloads,本文配置基于hibernate3.0。需要引用的jar包主要包括:hibernate3.
2010-10-27 14:18:00
2201
原创 建立基本的Java Web站点
1.创建站点及虚拟目录。在Eclipse中创建新的Dynamic Web Project(这里命名为WebTest)。在文件WebContent目录下新建index.html ,然后在Tomcat中创建指向WebContent的虚拟路径(这里命名虚拟路径为jtest)。配置完成后在浏览器中输入地址http://127.0.0.1:8080/jtest/index.html,测试站点是否启动运行。 2.测试jsp容器。在WebContent目录下新建index.jsp文件,在文件的
2010-10-26 16:54:00
2254
原创 配置Java站点虚拟目录
一般只需要把Java站点文件夹或*.war文件拷贝到Web Server的webapps文件夹下,即可启动运行该站点,但更多时候,我们并不想拷贝站点,而是希望Web在Server文件夹之外运行,这时就需要配置虚拟目录了。不同的WebServer配置虚拟目录的方式不太一样,这里的配置方法仅针对Tomcat和Jetty。 Tomcat:找到并打开Tomcat目录下的conf/server.xml文件,在Host小节中添加以下配置即可: 1:
2010-10-26 14:35:00
5282
原创 Java web的目录结构
在Eclipse中只要创建一个Dynamic Web Project,就可以根据创建向导创建出一个典型Java Web站点的目录结构。除非有特殊需要,在大多数情况下都没有必要修改这个目录结构,这也是Web容器的缺省目录结构,我们只要直接使用即可。一般的目录结构如下: WebContent (站点根目录) |---META-INF (META-INF文件夹) |
2010-10-26 09:39:00
6748
1
转载 jar包详解和META-INF作用
<br /> 如何把 java 程序编译成 .exe 文件。通常回答只有两种,一种是制作一个可执行的 JAR 文件包,然后就可以像.chm 文档一样双击运行了;而另一种是使用 JET 来进行 编译。但是 JET 是要用钱买的,而且据说 JET 也不是能把所有的 Java 程序都编译成执行文件,性能也要打些折扣。所以,使用制作可执行 JAR 文件包的方法就是最佳选择了,何况它还能保持 Java 的跨平台特性。 <br /><br />下面就来看看什么是 JAR 文件包吧: <br />
2010-10-26 09:08:00
1291
原创 Java与.NET随笔
.NET与Java,因这两种技术的相似性,总是会让人拿来做比较,并且总有人想让二者一分高下,最后得出孰优孰劣的结论。由于本人先用.NET,后转Java,现在.NET与Java二者并用,所以对二者间的差异颇有体会,胸中之词,不吐不快。 CLR VS JavaVM。虚拟机的概念让Java/C#这些比C/C++更为高级的语言成为现实。Java虚拟机的确是划时代之作,在功能、性能、跨平台等各个方面都非常强大。后来微软.NET中的CLR必然是借鉴了Java虚拟机的诸多优点,但CLR并未超越JavaV
2010-10-25 18:27:00
6726
1
原创 在.NET4.0下运行.NET2.0程序集
微软发布的dotnetfx2.0是相当成功的开发框架,由此产生了大量基于.NET2.0的应用,微软后来发布的dotnetfx3.0及dotnetfx3.5都是对2.0的扩展,并添加了很多新的特性(如:linq、wpf、wcf、wwf、Lambda、类型推断及简化的语法等),但碍于庞大的dotnetfx3.5安装部署都十分困难,dotnetfx2.0应用依然十分普遍。几个月以前微软发布了dotnetfx4.0,其强大的功能让dotnetfx2.0的优势消失殆尽,很多新的应用开发已经从.NET4
2010-10-22 16:55:00
5431
1
转载 一些常用的正则表达式
常用表达式:"^/d+$" //非负整数(正整数 + 0)"^[0-9]*[1-9][0-9]*$" //正整数"^((-/d+)|(0+))$" //非正整数(负整数 + 0)"^-[0-9]*[1-9][0-9]*$" //负整数"^-?/d+$" //整数"^/d+(/./d+)?$" //非负浮点数(正浮点数 + 0)"^(([0-9]+/.[0-9]*[1-9][0-9]
2009-07-04 16:49:00
646
转载 ASP.NET服务器控件库中嵌入JavaScript脚本文件
需求:建立一个类库TestControls,这个类库中包含若干ASP.NET服务器控件,其中有一些会调用客户端的JavaScript函数,把这些函数放入TestScript.js中。 下面演示一个例子,把上面的需求再简化一下,类库还是要建立的,里面只有一个服务器控件TestControl,这个控件没有界面,只负责把 JavaScript脚本注册到网页中即可,为了快速看到
2009-07-04 16:27:00
1110
转载 Oracle的SQL语法
一.数据控制语句 (DML) 部分 1.INSERT (往数据表里插入记录的语句)INSERT INTO 表名(字段名1, 字段名2, ……) VALUES ( 值1, 值2, ……); INSERT INTO 表名(字段名1, 字段名2, ……) SELECT (字段名1, 字段名2, ……) FROM 另外的表名; 字符串类型的字段值必须用单引号括起来, 例如: ’GOOD
2009-07-04 16:10:00
801
原创 用SQL统计SQLServe表存储空间大小
当SQLServer数据库越来越庞大,而其中的表有非常多的时候,想要知道到底是哪些表最耗存储空间,到底该怎样统计各个表的存储大小呢?其实SQLServer提供了一个sp_spaceused的系统存储过程可以实现该功能,下面就是调用的SQL: create table #tb(表名 sysname,记录数 int ,保留空间 varchar(10),使用空间
2009-07-04 15:58:00
1581
原创 浏览器类型及版本检测
在设计网页和开发Javascript时,由于不同浏览器的兼容特性不尽相同,因此就有必要再开始开发之前检测浏览器的相关信息,把网页的加载环境搞清楚,这样才能有的放矢,避免出现不兼容的情况。 浏览器的种类及版本检测很简单,我们只要用window.navigator.userAgent属性来询问浏览器的自描述信息就可以了,这个属性是一个字符串,最常见的方法就是检测这个串内是否包含特定的
2009-07-04 15:14:00
1506
转载 常见C++库介绍
在C++中,库的地位是非常高的。C++之父 Bjarne Stroustrup先生多次表示了设计库来扩充功能要好过设计更多的语法的言论。现实中,C++的库门类繁多,解决的问题也是极其广泛,库从轻量级到重量级的都有。不少都是让人眼界大开,亦或是望而生叹的思维杰作。由于库的数量非常庞大,而且限于笔者水平,其中很多并不了解。所以文中所提的一些库都是比较著名的大型库。 标准库
2009-07-04 14:30:00
557
转载 标准C++库常见函数
标准C++库常见函数1、 格式化输出:1) width()函数:可以为接下来的所有显示要素指定默认的宽度。2) setw()函数:设置数据项实用的宽度3) fill()函数:当输入宽度非默认宽度时可以设置填充字符的值4) setiosflags(ios::left)函数:表示输出值的对其方式5) dec、hex和oct本别表示十进制、十六进制和八进制6) put:把
2009-07-04 14:16:00
758
转载 c++标准库简介
C++标准库非常大。在C++标准中,关于标准库的规格说明占了密密麻麻300多页,这还不包括标准C库,后者只是 "作为参考"包含在C++库中。 当然,并非总是越大越好,但在现在的情况下,确实越大越好,因为大的库会包含大量的功能。标准库中的功能越多,开发自己的应用程序时能借助的功能就越多。C++库并非提供了一切(没有提供并发和图形用户接口的支持),但确实提供了很多。几乎任何事都
2009-07-04 10:59:00
571
原创 Javascript拖动管理对象
在做页面开发的时候,使用Javascript拖动DOM元素是常见的一种操作,每次对于拖动都要检测元素的onmousedown、onmousemove、onmouseup三个事件,并分别处理各种事件响应,对于这样通用的操作,就可以写一个拖动管理类来实现元素拖动的逻辑! 下面的代码使用了事件管理对象JEvent,JEvent的代码参见上一篇日志JEvent事件处理 /* *功能
2009-05-15 20:39:00
737
原创 Javascript处理DOM元素事件
DOM元素都有一些标准事件,一般使用时只要使用onclick=function的方式就可以了,但是当需要为DOM元素添加多个事件,删除事件,或在用Javascript封装控件的时候,为封装的控件添加自定义事件的时候,onclick=function的方式就不够用了,但是浏览器有addEventListener和attachEvent方法可供调用,从而模拟出类似于C#中的事件委托的事件触发机制!
2009-05-13 22:07:00
1394
原创 面向对象Javascript核心支持代码
JQury框架绝对是首先页面开发的首选,代码短小强悍,缺点就是面向对象特性不足,所幸有不少插件!至于Ext就是一个庞然大物了,高度面向对象,类似于MFC的庞大API和控件库,运行起来,浏览器就累得够呛,开发也够呛,使用代码来创建界面绝对是个糟糕的方式,Javascript的弱语言类型使得Ext开发就像行走在雷区,减少bug的唯一方法就是不要写出bug,一旦出现bug,调试将是一件极为痛苦的
2009-05-13 21:31:00
1368
原创 Javascript实现import动态导入文件方法
众多编程语言都有类似import、include、using等关键字实现引入其它源码文件的功能,但是Javascript却不没有这样的关键字,但是我们可以自己来实现import方法:var JCore = {//构造核心对象 version:1.0, $import:function(importFile){ var file = importFile
2009-05-13 21:03:00
35787
1
原创 Javascript面向对象的多态特性
Javascript已经可以模拟出面向对象的封装和继承特性,但是不幸的是Javascript对多态特性的支持非常弱!其它面向对象语言的多态一般都由方法重载和虚方法来实现多态,Javascript也通过这两种途径来实现! 重载:由于Javascript是弱类型的语言,而且又支持可变参数,当我们定义重载方法的时候,解释器无法通过参数类型和参数个数来区分不同的重载方法,因此方法重载是不被支
2009-05-07 22:47:00
3673
原创 Javascript对象继承
在Javascript中,一切皆是对象,所谓的类也只是用来模拟其它面向对象语言的class的对象而已,例如: function MyClass() {}//定义一个类MyClass.call();//其实这个类本身也是一个对象 在上面的代码中,并没有为MyClass定义call方法,但是却可以调用call方法,其原因就是JavaScript的原
2009-05-07 22:14:00
1325
原创 Javascript面向对象特性
Javascript出现也不是一天两天了,但近些年之前,一直都只是做一做表单验证,加点花哨的网页特效什么的,顶多算得网页设计的调料 。但是随着应用系统向着网络延伸,Javascript在系统应用中扮演着越来越重要的角色,Jquery、Ext、Dojo等Ajxa框架层出不穷。每一个在浏览器上做开发的程序员都有必要了解一下Javascript语言! 与C++等语言不同的是,Ja
2009-05-06 23:58:00
821
原创 常用的CSS Hack
不同的浏览器对CSS Hack的识别各异,可以据此来为不同的浏览器设定不同的CSS属性,解决很多兼容性问题! 目前的主要的浏览器版本一般为IE6、IE7、IE8、Firefox,因此主要是对这些浏览器的Hack IE7与Firefox都识别!important,因此可以以此来排除IE6 (说明:!important它指定当前样式的优先级为高,后边再进行定义的相同样式是不会将
2009-05-03 21:07:00
1741
1
原创 常用的IE Hack
设计页面的时候,由于各种浏览器版本的兼容性问题,需要为不同的浏览器设计不同的CSS或Javascript,此时就可以用IE Hack来自动识别不同的浏览器并加载不同的设置! IE Hack是一段HTML注释代码,但是IE可以识别这些注释,而其他标准浏览器却不识别,会自动跳过这些注释,以此来识别不同的浏览器。其格式为………….其中express为版本测试表达式,注释内部是
2009-05-03 20:24:00
1082
转载 IE6不支持非A元素:hover伪类的bug的处理
使用IE的behavior即可! 使用方法是定义样式:body { behavior:url(”csshover.htc”); } csshover.htc的代码http://www.xs4all.nl/~peterned/htc/csshover.htc 这个代码不但支持:hover 而且还支持 :active 另外支持上述样式之外还增加了对:focus
2009-05-03 19:48:00
789
原创 IE 6 png背景透明bug的处理
PNG(Portable Network Graphics)格式图片可以表现更为绚丽多彩的颜色,常见的一些具有矢量效果的图片、图标都采用png格式,但是具有透明背景的png格式图片在IE6中却不是背景透明的,透明背景部分会显示出#DBEAED的淡灰色,表现效果很糟糕,为了使用透明背景图片只有采用gif格式了,但是gif格式会出现明显的锯齿效果,所以只有设法修复IE6的这个问题。解决的办法就
2009-05-03 01:01:00
6588
2
原创 博客离线编辑器Windows Live Writer
工作中会遇到各种问题,也会学习到很多新技术,怎样管理这些点点滴滴的知识却不是一件容易的事情,很多以前记载的东西到后来就找不到了,或者想用的时候又不知道放在什么地方,确实是件头痛的事情。由于经常使用CDSN查阅资料,所以就决定在CDSN上写Blog,一来方便自己管理资料,二来也方便与其它人分享自己积累的经验。 Blog开通以后,发觉CSDN的博客编辑器实在不太好用,时常遇到bug
2009-05-02 20:25:00
1273
原创 IE6 Select元素无法被div等元素覆盖的bug解决办法
在页面设计时,经常会使用div制作蒙版或模拟弹出窗口,但在IE6下,当div下方有下拉列表框select元素的时候,下拉列表框会划破div显示在div之上,不论z-index设为何值均会出现此问题,可能由于下拉列表控件的弹出式下拉列表的原因导致Z轴高度失控。但是IE6有一个神奇的逻辑,div 无法覆盖select,但是iframe 可以覆盖select,而div可以覆盖iframe,所以
2009-04-30 17:20:00
5196
3
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人