摘要:
一、开源项目 Javascript .NET地址: http://javascriptdotnet.codeplex.com/它是Google Chrome V8引擎在.NET上的封装,功能完善,性能相对较高,推荐使用! (缺点就是asp.net web应用上,好象会报错)示例代码:using Noesis.Javascript;using System;using System.Collections.Generic;namespace JsCSharp{ class Program { static void Main(string[] args) ... 阅读全文
摘要:
企业应用中,经常会遇到一些需要定时自动执行的程序来完成某些功能,比如:自动定时从第三方web service取回数据、定时对历史数据进行清理、定时向ftp上传业务数据...这类程序,我习惯称为“机器人”程序,就象机器一样机械、高效、重复的执行某些任务。通常部署上线后,都是放在服务器上一直开着,不允许轻易被关闭,而且最好要有一个界面,随时可以手动方便控制状态或查看运行情况,一旦发生异常情况,能及时通知管理员(Email或短信之类)如果是采用WPF技术开发,以下是几个需要注意的地方:1、无边框窗体(防止用户不小心点到 右上角的关闭按钮)将主窗体的WindowStyle设置成None即可2、无边框窗 阅读全文
摘要:
业务背景:航空货运系统中,“货运代理商”会定期从“航空公司”领取一定数量的纸质运单(每张纸上有一个单号),这些单号都是连续的(即:每次可以理解为领取一个“号段”),而且每张单子都要向航空公司交纳一定的费用(即:单号是有价的资产)。实际使用中,货运代理商希望下级的各营业点连续把单号用完,如果出现未连续... 阅读全文
摘要:
1.普通货物运价(1)基础运价(代号N -注:Normal的首字母)民航总局统一规定各航段货物基础运价为45公斤以下普通货物运价。(2)重量分界点运价(代号Q -注:Quantity的首字母)国内航空货物运输建立45公斤以上、100公斤以上、300公斤以上3级重量分界点及运价。2.等级货物运价(1)等级运价加价(代号S - 注:Surcharge 的首字母) 急件、生物制品、珍贵植物和植物制品、活体动物、骨灰、灵柩、鲜活易腐物品、贵重物品、枪械、弹药、押运货物等特种货物实行等级货物运价,按照基础运价的150%计收。(2)等级运价减价(代码R -注:Reduced的首字母) 适用商品包括:报纸、 阅读全文
摘要:
Pechkin 是GitHub上的一个开源项目,可方便将html转化成pdf文档,使用也很方便,下面是winform项目中的示例代码:using System;using System.Diagnostics;using System.Drawing.Printing;using System.IO;using System.Windows.Forms;using Pechkin;using Pechkin.Synchronized;namespace PdfTest{ public partial class Form1 : Form { public Form1(... 阅读全文
摘要:
1. 在firefox下,每页均会打印重复thead(表头),tfoot(表尾)的内容;IE8下无效(其它IE版本未测试)2. 分页的处理 @media print {.page-break { page-break-after: always; }}在需要分页的tr上,加上该样式即可3.隐藏某些不需要打印的区域 @media print {.no-print { display: none; }}4.页面顶部网址之类的,如何去掉?IE: File -> Page SetupFireFox: Print -> Page Setup5.打印页面指定区域这是打印的内容这里不需要打印打印 阅读全文
摘要:
SL的打印功能,如果使用针式打印机,打出来的字很模糊,网上有一些文章介绍应该使用"Arial,SimSun"(即:宋体),但实际测试的结果,宋体依然很模糊。下面是各种字体的测试:(环境 Silverlight4/5 + EPSON LQ-1600KⅢH针式打印机)结论:依然是微软自家的“微软雅黑”字体最清晰(不要设置Bold加粗),推荐的字体设置顺序为:FontFamily="Arial,Microsoft YaHei,SimHei,SimSun" 阅读全文
摘要:
xsl 可方便的将一种格式的xml,转换成另一种格式的xml,参考下面的代码:using System;using System.IO;using System.Text;using System.Xml;using System.Xml.Xsl;namespace XslLoad{ class Program { static void Main(string[] args) { string xml = @" Empire Burlesque Bob Dylan USA Columbia 10.... 阅读全文
摘要:
前提:本机先安装好JDK,保证常规java环境已经具备1、下载Tomcat 7.0现在官网上好象已经没有安装程序版了,只有免解压zip版本(现在最新的版本是7.0.42)下载地址 http://tomcat.apache.org/download-70.cgi 下载后,解压到某个目录 比如 C:\software\tomcat-7.0.422、添加系统环境变量a) 增加环境变量 CATALINA_HOME ,值为 C:\software\tomcat-7.0.42b) CLASSPATH 环境变量值最后加 ;C:\software\tomcat-7.0.42\lib3、启动Tomcat\tom 阅读全文
摘要:
在IE中,JS可以直接访问剪贴板,但是firefox,chrome等其它"高级"浏览器,就没这么幸运了。网上流传的所谓兼容firefox/IE的剪贴板访问javascript代码,都是N年前的往事了。根据http://mozilla.com.cn/post/49413/上的说法:----------------------------------火狐不允许网页操作用户的剪切板,因为有安全问题,网页可能盗用你复制的密码等等。以前可以通过修改设置提权,允许网页获得高权限,操作剪切板,目前火狐已经取消了这个接口。不再允许,所以修改了设置也无效,目前还是自己通过快捷键复制吧。--- 阅读全文
摘要:
如果一台电脑同时连接多个打印机,而且每个打印机使用的纸张大小各不相同(比如:票据打印钱用的小票专用张,办公打印机用的是A4标准纸),在处理打印类的需求时,如果不用代码干预,用户必须每次打印时,都必须在弹出窗口里,手动选择打印机(还有可能需要设置纸张类型),这样用起来会比较烦。幸好,.Net提供了“二”个很有用的类:PrintDialog(打印机设置对话框)、PageSetupDialog(页面设置对话框) (注:之所以给“二”加引号,是因为"打印机设置"其实已经完全包含了“页面设置”的所有功能,而且“ PageSetupDialog”类在实际使用中发现还有一个容易误导的地方 阅读全文
摘要:
通常web技术无法设置本地计算机的默认打印机,包括用代码设置纸张大小,如果业务系统中真遇到这种需求,只能通过其它辅助手段(比如ActiveX)实现。下面这段代码,出自网上被广泛使用的"泥人张打印API"(抱歉未找到原始出处),已经用C#封装了很多关于底层打印的API方法using System;using System.Collections.Generic;using System.Text;using System.Runtime.InteropServices;using System.Security;using System.ComponentModel;usin 阅读全文
摘要:
asp.net 与 asp 的session是无法直接共享的(底层的处理dll也不一样),要想互通session,只能用变通的办法:一、asp.net -> asp 的session传递a) 建一个类似SessionHanler.asp的页面,代码如下:<!-- #include virtual="inc/Func.asp" --><% Dim returnUrl Session("user") = Request("user") Set returnUrl = Request("returnUrl& 阅读全文
摘要:
入门级算法-线性查找-时间复杂度O(n)--相当于算法界中的HelloWorld //线性搜索(入门HelloWorld) //A为数组,x为要搜索的值 function linearSearch(A, x) { for (var i = 0; i < A.length; i++) { if (A[i] == x) { return i; } } return -1; }二分查找(又称折半查找) - 适用于已排好序的线性结构 - 时间复杂度O(logN) ... 阅读全文
摘要:
数组存储前提下,插入排序算法,在最坏情况下,前面的元素需要不断向后移,以便在插入点留出空位,让目标元素插入。换成链表时,显然无需做这种大量移动,根据每个节点的前驱节点“指针”,向前找到插入点后,直接把目标值从原链表上摘下,然后在插入点把链表断成二截,然后跟目标点重新接起来即可。<!doctype html><html><head> <title>双链表-插入排序</title> <meta http-equiv="Content-Type" content="text/html; charset=g 阅读全文
摘要:
二叉搜索树:顾名思义,树上每个节点最多只有二根分叉;而且左分叉节点的值 < 右分叉节点的值 。 特点:插入节点、找最大/最小节点、节点值排序 非常方便 输出结果: 中序遍历: 1 3 4 6 8 9 先序遍历: 6 3 1 4 8 9 后序遍历: 1 4 3 9 8 6 最小节点:1 最大节点:9 阅读全文
摘要:
在ajax方式做web开发时,经常会遇到会保存前,收集表单输入项,组成json对象,然后把对象直接post到服务端的场景常规做法是在js里写类似如下的代码:var myObj = {}; myObj.x = document.getElementById("x").value; myObj.y = document.getElementById("y").value; //... //然后ajax post或get提交表单元素不多的时候,这样还好,但是如果一个表单有好几十项甚至更多输入项的时候,写这种代码就太费劲了。好在javascript中有一个邪恶的 阅读全文
摘要:
java项目做好后,最终部署时,通常是通过SecureCRT(或其它终端)连接linux上传war包来进行。学几个基本的linux命令还是必要的。一、CentOS上的SSH设置1.1 终端窗口下,以root身份登录,修改hosts.allow,允许用户远程连接vi /etc/hosts.allow按... 阅读全文
摘要:
java.util.Date下的很多(构造)方法,已经被标识为"过时"方法,官方推荐使用Calendar类来处理日期的运算,下面是示例: 输出结果: 当前时间:2013-02-21 09:40:49减1年:2012-02-21 09:40:49再加3个月:2012-05-21 09:40:49再加1 阅读全文
摘要:
oracle中开发人员写自己的sql function时,入口参数名不要与select中table的字段名重复,否则虽然编译能正常通过,但运行的结果往往是错误的。示例: 1 CREATE OR REPLACE FUNCTION S_GET_EMP_NAME(EMPNO nvarchar2) return nvarchar2 is 2 ENAME nvarchar2(100); 3 begin 4 SELECT E.ENAME 5 INTO ENAME 6 FROM EMP E 7 WHERE E.EMPNO = EMPNO 8 AND ROWNUM = ... 阅读全文
摘要:
windows环境下,如果遭遇ARP攻击,解决方法很简单:“360安全卫士”或"QQ软件管理"的实时防护里,都有ARP防护功能(默认是关闭的),只要启用就行了。但是Mac本上,就没这么方便了,先大概说下ARP攻击的原理:我们在局域网中访问外网时,总是要经过网关才能出去,IP设置里网关设置的是一个具体的ip4地址(比如192.168.1.1),但是IP地址每台机器通常是可以随便设置的(只要不跟局域网中的其它机器冲突),这是一个逻辑上的虚拟地址,只有网络设备(比如网卡)本身的静态MAC地址,这个才是物理真实地址,所有对IP的访问,最终必须定位到MAC物理地址,才能直接跟物理设备 阅读全文
摘要:
以下信息主要是从 "网上搜集+客户调研+自己业务理解" 而来的,不保证一定对,记在这里备份:国内航空货运单 8联 的作用货运单一式八联。其中正本三联,副本五联。三联正本具有同等法律效力。第一联,甲联:正本3,蓝色,为托运人联。作为托运人支付货物运费、并将货物交由承运人运输的凭证。(注:货主/托运人 ... 阅读全文
摘要:
接上回继续,TMP_EMP中的ID是根据序列SQ_TMP_EMP来生成的,需要在TmpEmp.hbm.xml中设置: SQ_TMP_EMP 这样运行时,Hibernate就会自动从SQ_TMP_EMP中取nextval用来填充到ID字段中示例代码:先创建一个工具类package app;i... 阅读全文
摘要:
默认情况下,即便db中某一列的值是数字,查询出来的DataSet/DataTable里,Column的类型都是String型,所以当用dataTable.DefaultView.Sort ="XXX ASC"排序时,都是按字符串排序处理的,并不是我们想要的结果,下面给出了二种解决办法:using System;using System.Data;namespace DataTableSortSample{ class Program { static void Main(string[] args) { DataTable dt =... 阅读全文
摘要:
相对微软的linq-to-sql或EF框架而言,"Hibernate对于eclipse的集成开发“ 新手并不容易掌握,下面是新手上路的步骤:一、准备工作:1、先下载eclipse (官网http://eclipse.org/) 注:如本机已经安装了eclipse,可跳过2、下载Hibernate 最新版本(目前已经到了4.X版本) (官网 http://hibernate.org/ )3、根据你的db使用情况,下载对应的jdbc驱动包(本文使用的是oracle,本机安装完oracle client后就能找到)4、下载commons-logging.jar包(Hibernate内部记录 阅读全文
摘要:
今天写代码时,需要对一个数组对象中按一定规则合并、去重处理,不想再毫无新意手动写For循环遍历(天天写一样的代码很没劲),于是依旧linq,发现真心方便:using System;using System.Collections.Generic;using System.Linq;namespace LinqTest{ class Program { static void Main() { List<Product> listProduct = new List<Product> { new ... 阅读全文
摘要:
string[] arr1 = new[] { "1", "2", "3", "4", "5" }; string[] arr2 = new[] { "1", "3", "5" }; var sameArr = arr1.Intersect(arr2).ToArray(); //找出相同元素(即交集) var diffArr = arr1.Where(c => !arr2.Contains(c)).ToArray();//找出不同 阅读全文
摘要:
.net中,其字符串特有的驻留机制,保证了在同一进程中,相同字符序列的字符串,只有一个实例,这样能避免相同内容的字符串重复实例化,以减少性能开销。先来回顾一下c#中的代码:View Code 1 public static void testString() 2 { 3 String s = "Abc"; 4 String s1 = "abc"; 5 String s2 = "abc"; 6 7 8 Console.WriteLine("s1==s2 ? " +... 阅读全文
摘要:
从零开始详细介绍了eclipse+weblogic+svn的集成开发环境搭建,以及weblogic如何部署web应用,weblogic网站的域名绑定,weblogic webservice的创建及客户端调用。 阅读全文
摘要:
先写一个java的class:AwbModel(相当于要在web service中传输的实体对象)package webservicesample;public class AwbModel { private String _a1 = "_a1"; public String getA1() { return _a1; } public void setA1(String value) { this._a1 = value; } private String _A2 = "_A2"; public String getA2... 阅读全文
摘要:
在上一节时,我们创建了一个基于部门号的工资分类汇总。 这里就引出了一个概念:维度 专业的解释大家自行百度,这里就不班门弄斧了。从数据的使用角度看,维度可以简单的理解成“数据分类汇总的一种依据”。 按“部门号(DEPTNO)”对“工资(SAL)”进行分类汇总,“DEPTNO"就是一种维度;按“工作岗位(JOB)”对“工资”进行分类汇总,“JOB”就是另一种维度; 维度之间也可以有层次关系,比如:我们先按“工作岗位” 汇总,然后每个相同工作岗位的员工,再按“部门”汇总。这种场景下:DeptNo就认为是Job的子级维度。 先按Job汇总数据,相同Job的,再按DeptNo做更详细的数据汇. 阅读全文
摘要:
今天在写一段js时,发现IE与FF在动态加载Html元素时,有一些差别,看下面的代码:<!doctype html><html><head> <title>ff 与 ie 动态加载元素的区别</title> <script type="text/javascript" src="jquery-1.4.4.min.js"></script> <style type="text/css"> li{margin:0;padding:0;list- 阅读全文
摘要:
本周听到公司其它项目组同事在讨论一个小需求:给定3个点(其实是飞机经过的航站,比如:从浦东-西安-北京),在UI上生成一段曲线,用来示意飞机的路线图(其实用直线我觉得也能将就,反正只是示意,只是大家觉得直线太out,不美观),晚上无事,尝试了一下:有二个方案:1、椭圆(很快被自己给否定了,椭圆的标准方程 (x-m)^2/(a^2) + (y-n)^2/(b^2)=1,有m,n,a,b 四个未知数,3个点无法唯一确定,如果把圆心定在页面中心,理论上可以解决,但是开平方也是比较繁琐的)2、贝塞尔曲线根据:(贝塞尔曲线)喂鸡百科的解释:二次标准方程为:正好以前在学习flash时也研究过,所以决定用它 阅读全文
摘要:
接上回继续,RPD文件做好上传后,好戏才刚刚开始!今天我们学习如何做一个最基础的数据分析步骤:1、如果BIEE安装在本机,直接登录http://localhost:9704/analytics/ 点击右上方导航菜单中的“新建-》分析”2、选择上节创建的RPD文件中的SCOTT主题区域3、这里会看到如下界面,左侧的树对应的是RPD文件中最左侧【表示】层中的模型-可以把它当成“表“来看,随便在“表“的字段名上双击,就可以添加到右侧的“所选列”区域,先参照下图,随便选几列过过瘾4、切换到【结果】视图,一切顺利的话,系统会自动查询数据库,并呈现出如下数据(注:因为我们把EMPNO,ENAME,SAL等 阅读全文
摘要:
BI创建(数据)分析、仪表盘、报表前,都需要对数据进行建模,在oracle biee里称为创建“资料档案库”-该文件后缀为RPD,所以一般也称为创建RPD文件。步骤:1、从windows开始菜单里,找到"BI 管理",如下图:2、点击工具栏第一个按钮“创建”一个(脱机/离线的)RPD文件,这里我们命名为Scott.rpd,同时注意记好密码,比如Admin1233、选择数据源(即创建到数据库的连接)注1:上图中的数据源名称,其实就是oracle连接串(当然你可以在tnsname.ora里配置,并复制到指定位置,但是我觉得这种方式比较麻烦,还不如直接指定连接串来得直接),下面是 阅读全文
摘要:
为了方便,先定义二个常量:package jmyang.utils;public class ConstDefine { /** * WebLogic服务器地址 */ public static final String WebLogicServerUrl = "t3://localhost:7001"; /** * WebLogic JNDI上下文字符串 */ public static final String WebLogicINDIContextFactory = "weblogic.jndi.WLInitialContextFa... 阅读全文
摘要:
oracle express 11g 默认情况下,不管是以 http://127.0.0.1:8080/apex/登录本机控制台,还是用pl/sql developer连接,都无法创建表空间,只能sql命令完成启用sql plus:SQL> conn sys as sysdba;SQL> create tablespace CTL datafile 'D:\db\CTL.dbf' size 1000M 2 autoextend on next 1m maxsize 3000M extent management local segment space managem 阅读全文
摘要:
JNDI的专业解释,大家自行去网络搜索吧,这里就不啰嗦了。单纯从使用角度看,可以简称把它看成一个key-value的“哈希资源”容器。给定一个string类型的key,可以把任何类型的value,放入这个容器(通过bind/rebind方法);其它地方需要使用该资源时,根据key就能取出该资源(通过lookup方法)JNDI使用示例:package jmyang.weblogic;/** * <p>Title:JNDI示例(WebLogic环境) </p> * <p>Description: </p> * <p>Copyright: 阅读全文