摘要:
一、下载及安装1.1 下载maven 3.1.1先到官网http://maven.apache.org/download.cgi下载最新版本(目前是3.1.1),下载完成后,解压到某个目录(本文中是C:\Java\maven-3.1.1)2.1 配置环境变量系统环境变量里,添加MAVEN_HOME(...
阅读全文
posted @ 2014-01-01 21:41
菩提树下的杨过
阅读(237235)
推荐(39)
摘要:
一、设置环境变量1、打开终端,输入 cd ~2、输入 touch .bash_profile (如果该文件不存在,将创建一个空文件)3、输入 open .bash_profile (调用记事本编辑该文件)注:mac系统本质是linux,因此linux设置环境变量的办法,通常也适用于mac. 一般来讲...
阅读全文
posted @ 2013-12-28 20:43
菩提树下的杨过
阅读(8786)
推荐(0)
摘要:
package jimmy;import java.io.*;import java.util.Properties;public class Program { public static void main(String[] args) { String appTitle = "app_title"; String appVersion = "app_version"; String appProperties = "app.properties"; Properties settings = new Properties();.
阅读全文
posted @ 2013-11-28 20:34
菩提树下的杨过
阅读(1402)
推荐(0)
摘要:
java中的匿名类有一个倍儿神奇的用法,见下面代码示例:1 package contract;2 3 public interface ISay {4 void sayHello();5 }上面是一个简单的接口,下面是如何使用: 1 package jimmy; 2 import contract.ISay; 3 public class Program { 4 public static void main(String[] args) { 5 ISay say = new ISay() { 6 public voi...
阅读全文
posted @ 2013-11-28 19:40
菩提树下的杨过
阅读(38194)
推荐(10)
摘要:
java与c#都支持反射,但是从网络上搜索两大阵营对于反射的态度,基本上.net开发人员都建议慎用反射,因为会有性能开销;反到是java阵营里好象在大量肆无忌惮的使用反射。于是写了下面的测试代码:c#版的:二个project,如上图,Model项目中就只有一个实体类Person,代码如下: 1 using System; 2 3 namespace Model 4 { 5 public class Person 6 { 7 private int Add(object i,object j) 8 { 9 return (...
阅读全文
posted @ 2013-11-26 16:10
菩提树下的杨过
阅读(5215)
推荐(0)
摘要:
很早以前看过一句话:“XML就象空气”,在企业应用开发中XML是一个重要的数据交换标准。而XSD则可以用来校验XML的数据格式是否正确。一个典型的XSD文件如下: 1 2 3 4 5 6 运单 7 8 9 10 11 12 13 14 15 ...
阅读全文
posted @ 2013-11-16 08:45
菩提树下的杨过
阅读(10299)
推荐(0)
摘要:
不知道大家有没有这样的经历:现场实施时测试出一个bug,明明知道某个dll/exe文件只要修改一二行代码即可,但手头没有开发环境,紧急情况下,可以用reflector + reflexil 临时直接修改dll代码,然后重编译,替换原来的文件(当然:代码未混淆的情况下,这个也可以用来搞破解,这不在本文讨论之列)步骤:1、Relector 加载相关的dll后,启用Reflexil界面2、找到需要修改的代码位置,然后参考下图,右击->Replace all with code3、写新的代码然后点击Complete重新编译、OK按钮关闭按钮4、在dll或exe上,右击->Save as 另
阅读全文
posted @ 2013-11-06 10:20
菩提树下的杨过
阅读(20676)
推荐(4)
摘要:
Unity是微软在CodePlex上的一个开源项目,可用于依赖注入、控制反转,类似Spring,下面是使用示例:1.先来定义几个接口、类1 namespace UnityTest2 {3 public interface IRun4 {5 void Run();6 }7 }View Code : IRun1 namespace UnityTest2 {3 public class Pet4 {5 public string Name { set; get; }6 }7 }View Code : Pet 1 usin...
阅读全文
posted @ 2013-11-04 16:43
菩提树下的杨过
阅读(3147)
推荐(0)
摘要:
初步接触MyBatis.Net的朋友,请先移步 MyBatis.Net 学习手记1. 项目中先添加Oracle.ManagedDataAccess.dll程序集引用2. MyBatis.Net 中Providers.config文件修改 1 tips:a) assemblyName类型不知道如何填写的,可通过类似 Assembly.LoadFile(@"D:\soft\ODP.NET_Managed121010\odp.net\managed\common\Oracle.ManagedDataAccess.dll").FullName获得b)name,description
阅读全文
posted @ 2013-11-01 10:40
菩提树下的杨过
阅读(3601)
推荐(1)
摘要:
“ODP.NET Managed”发布已经有一段时间了,近期正好有一个新项目,想尝试用一下,参考园子里的文章:《.NET Oracle Developer的福音——ODP.NET Managed正式推出》到Oracle官网 下载 ODP.NET_Managed121010.zip 大约1.9M,解压后目录结构如下:核心的dll,就是common目录下的Oracle.ManagedDataAccess.dll,不象ODP.NET以前的版本,这次终于不用区分x86/x64版本了,不管是32位还是64位,都是同一个dll。至于manged/x64、managed/x86这二个目录,是用来向.NET
阅读全文
posted @ 2013-11-01 10:00
菩提树下的杨过
阅读(39248)
推荐(3)
摘要:
实际开发中,对于一些耗时较长的操作,我们往往会将其封装成异步方式调用,以加速系统响应或改善用户体验,下面是一个示例:有一个现成的类MyMath,里面有一个Add方法: 1 public class MyMath 2 { 3 4 public int Add(int a, int b) 5 { 6 System.Threading.Thread.Sleep(5000); 7 return a + b; 8 } 9 10 }对Add方法做下封装,对了对比,同时提供“同步调用”与...
阅读全文
posted @ 2013-10-29 22:36
菩提树下的杨过
阅读(7502)
推荐(1)
摘要:
1、修改core-site.xml,配置hdfs 1 2 3 fs.default.name 4 hdfs://localhost:9000 5 6 7 hadoop.tmp.dir 8 /home/jimmy/Desktop/tmp 9 10 注:a) fs.def...
阅读全文
posted @ 2013-10-21 16:09
菩提树下的杨过
阅读(3940)
推荐(0)
摘要:
一、虚拟机上安裝ubuntun 13.04 中文版当然,你要是习惯看英文版,也可以直接安装英文版。老老实实从官网下载安装即可,安装系统不是本文的重点。这里只提一个注意事项:新手安装前,切记断网,因为安装过程中会联网下载,默认情况下连接的是美国的服务器,如果网速慢,这一步就可能会耗费几个小时。断网后,...
阅读全文
posted @ 2013-10-19 20:50
菩提树下的杨过
阅读(3017)
推荐(0)
摘要:
添加wcf服务引用时,vs.net本来就会帮我们在app.config/web.config里生成各种配置,这没啥好研究的,但本文谈到的配置并不是这个。先看下面的图:通常,如果采用.NET的WCF技术来架构SOA风格的应用,我们会把项目做一些基本的分层,如上图:01. contract层:通常定义服务的接口(即服务契约ServiceContract,指明该服务提供了哪些方法可供外部调用)、以及接口方法中传输的Model定义(即:数据契约DataContract,指明方法中的对象参数的Class定义)02. implementation层:即服务接口的实现03. host层:wcf最终需要一个宿
阅读全文
posted @ 2013-10-16 16:06
菩提树下的杨过
阅读(3371)
推荐(0)
摘要:
这是数据库开发中经常遇到的问题,当然,这可以用现成的ORM框架来解决,但有些时候,如果DataSet/DataTable是第三方接口返回的,ORM就不方便了,还得自己处理。反射自然必不可少的,另外考虑到DataTable中的ColumnName通常与Model的PropertyName并不严格对应,可以用Attribute来记录这种映射关系。步骤1:先创建一个DataFieldAttribute类 1 using System; 2 3 namespace Jimmy.ORM 4 { 5 [AttributeUsage(AttributeTargets.Property)] 6 ...
阅读全文
posted @ 2013-10-15 17:00
菩提树下的杨过
阅读(8426)
推荐(3)
摘要:
MyBatis.NET的前身为IBatis,是JAVA版MyBatis在.NET平台上的翻版,相对NHibernate、EntityFramework等重量级ORM框架而言,MyBatis.NET必须由开发人员手动写SQL,相对灵活性更大,更容易保证DB访问的性能,适用开发团队里有SQL熟手的场景。下面是使用步骤:1、到官网http://code.google.com/p/mybatisnet/下载相关dll和文档Doc-DataAccess-1.9.2.zip Doc-DataMapper-1.6.2.zip IBatis.DataAccess.1.9.2.bin.zip IBatis.Da
阅读全文
posted @ 2013-10-10 22:22
菩提树下的杨过
阅读(29678)
推荐(7)
摘要:
一、开源项目 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) ...
阅读全文
posted @ 2013-10-09 16:05
菩提树下的杨过
阅读(24225)
推荐(2)
摘要:
企业应用中,经常会遇到一些需要定时自动执行的程序来完成某些功能,比如:自动定时从第三方web service取回数据、定时对历史数据进行清理、定时向ftp上传业务数据...这类程序,我习惯称为“机器人”程序,就象机器一样机械、高效、重复的执行某些任务。通常部署上线后,都是放在服务器上一直开着,不允许轻易被关闭,而且最好要有一个界面,随时可以手动方便控制状态或查看运行情况,一旦发生异常情况,能及时通知管理员(Email或短信之类)如果是采用WPF技术开发,以下是几个需要注意的地方:1、无边框窗体(防止用户不小心点到 右上角的关闭按钮)将主窗体的WindowStyle设置成None即可2、无边框窗
阅读全文
posted @ 2013-09-19 10:28
菩提树下的杨过
阅读(2004)
推荐(1)
摘要:
业务背景:航空货运系统中,“货运代理商”会定期从“航空公司”领取一定数量的纸质运单(每张纸上有一个单号),这些单号都是连续的(即:每次可以理解为领取一个“号段”),而且每张单子都要向航空公司交纳一定的费用(即:单号是有价的资产)。实际使用中,货运代理商希望下级的各营业点连续把单号用完,如果出现未连续...
阅读全文
posted @ 2013-09-11 10:17
菩提树下的杨过
阅读(897)
推荐(0)
摘要:
1.普通货物运价(1)基础运价(代号N -注:Normal的首字母)民航总局统一规定各航段货物基础运价为45公斤以下普通货物运价。(2)重量分界点运价(代号Q -注:Quantity的首字母)国内航空货物运输建立45公斤以上、100公斤以上、300公斤以上3级重量分界点及运价。2.等级货物运价(1)等级运价加价(代号S - 注:Surcharge 的首字母) 急件、生物制品、珍贵植物和植物制品、活体动物、骨灰、灵柩、鲜活易腐物品、贵重物品、枪械、弹药、押运货物等特种货物实行等级货物运价,按照基础运价的150%计收。(2)等级运价减价(代码R -注:Reduced的首字母) 适用商品包括:报纸、
阅读全文
posted @ 2013-09-04 11:24
菩提树下的杨过
阅读(5759)
推荐(0)
摘要:
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(...
阅读全文
posted @ 2013-08-29 09:49
菩提树下的杨过
阅读(6104)
推荐(2)
摘要:
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.打印页面指定区域这是打印的内容这里不需要打印打印
阅读全文
posted @ 2013-08-27 16:22
菩提树下的杨过
阅读(10856)
推荐(0)
摘要:
SL的打印功能,如果使用针式打印机,打出来的字很模糊,网上有一些文章介绍应该使用"Arial,SimSun"(即:宋体),但实际测试的结果,宋体依然很模糊。下面是各种字体的测试:(环境 Silverlight4/5 + EPSON LQ-1600KⅢH针式打印机)结论:依然是微软自家的“微软雅黑”字体最清晰(不要设置Bold加粗),推荐的字体设置顺序为:FontFamily="Arial,Microsoft YaHei,SimHei,SimSun"
阅读全文
posted @ 2013-08-23 10:59
菩提树下的杨过
阅读(5942)
推荐(0)
摘要:
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....
阅读全文
posted @ 2013-08-16 14:22
菩提树下的杨过
阅读(2653)
推荐(0)
摘要:
前提:本机先安装好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
阅读全文
posted @ 2013-08-01 09:54
菩提树下的杨过
阅读(1816)
推荐(0)
摘要:
在IE中,JS可以直接访问剪贴板,但是firefox,chrome等其它"高级"浏览器,就没这么幸运了。网上流传的所谓兼容firefox/IE的剪贴板访问javascript代码,都是N年前的往事了。根据http://mozilla.com.cn/post/49413/上的说法:----------------------------------火狐不允许网页操作用户的剪切板,因为有安全问题,网页可能盗用你复制的密码等等。以前可以通过修改设置提权,允许网页获得高权限,操作剪切板,目前火狐已经取消了这个接口。不再允许,所以修改了设置也无效,目前还是自己通过快捷键复制吧。---
阅读全文
posted @ 2013-07-17 08:38
菩提树下的杨过
阅读(4770)
推荐(0)
摘要:
如果一台电脑同时连接多个打印机,而且每个打印机使用的纸张大小各不相同(比如:票据打印钱用的小票专用张,办公打印机用的是A4标准纸),在处理打印类的需求时,如果不用代码干预,用户必须每次打印时,都必须在弹出窗口里,手动选择打印机(还有可能需要设置纸张类型),这样用起来会比较烦。幸好,.Net提供了“二”个很有用的类:PrintDialog(打印机设置对话框)、PageSetupDialog(页面设置对话框) (注:之所以给“二”加引号,是因为"打印机设置"其实已经完全包含了“页面设置”的所有功能,而且“ PageSetupDialog”类在实际使用中发现还有一个容易误导的地方
阅读全文
posted @ 2013-07-12 16:57
菩提树下的杨过
阅读(40100)
推荐(4)
摘要:
通常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
阅读全文
posted @ 2013-07-10 15:57
菩提树下的杨过
阅读(6703)
推荐(0)
摘要:
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&
阅读全文
posted @ 2013-05-29 08:40
菩提树下的杨过
阅读(1888)
推荐(0)
摘要:
入门级算法-线性查找-时间复杂度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) ...
阅读全文
posted @ 2013-05-21 22:58
菩提树下的杨过
阅读(6094)
推荐(6)
摘要:
数组存储前提下,插入排序算法,在最坏情况下,前面的元素需要不断向后移,以便在插入点留出空位,让目标元素插入。换成链表时,显然无需做这种大量移动,根据每个节点的前驱节点“指针”,向前找到插入点后,直接把目标值从原链表上摘下,然后在插入点把链表断成二截,然后跟目标点重新接起来即可。<!doctype html><html><head> <title>双链表-插入排序</title> <meta http-equiv="Content-Type" content="text/html; charset=g
阅读全文
posted @ 2013-05-20 16:32
菩提树下的杨过
阅读(1475)
推荐(1)
摘要:
二叉搜索树:顾名思义,树上每个节点最多只有二根分叉;而且左分叉节点的值 < 右分叉节点的值 。 特点:插入节点、找最大/最小节点、节点值排序 非常方便 输出结果: 中序遍历: 1 3 4 6 8 9 先序遍历: 6 3 1 4 8 9 后序遍历: 1 4 3 9 8 6 最小节点:1 最大节点:9
阅读全文
posted @ 2013-05-19 23:35
菩提树下的杨过
阅读(1284)
推荐(0)
摘要:
在ajax方式做web开发时,经常会遇到会保存前,收集表单输入项,组成json对象,然后把对象直接post到服务端的场景常规做法是在js里写类似如下的代码:var myObj = {}; myObj.x = document.getElementById("x").value; myObj.y = document.getElementById("y").value; //... //然后ajax post或get提交表单元素不多的时候,这样还好,但是如果一个表单有好几十项甚至更多输入项的时候,写这种代码就太费劲了。好在javascript中有一个邪恶的
阅读全文
posted @ 2013-04-12 14:43
菩提树下的杨过
阅读(2029)
推荐(1)
摘要:
java项目做好后,最终部署时,通常是通过SecureCRT(或其它终端)连接linux上传war包来进行。学几个基本的linux命令还是必要的。一、CentOS上的SSH设置1.1 终端窗口下,以root身份登录,修改hosts.allow,允许用户远程连接vi /etc/hosts.allow按...
阅读全文
posted @ 2013-02-22 23:11
菩提树下的杨过
阅读(7310)
推荐(0)
摘要:
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
阅读全文
posted @ 2013-02-21 09:43
菩提树下的杨过
阅读(7985)
推荐(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 = ...
阅读全文
posted @ 2013-02-04 14:51
菩提树下的杨过
阅读(6646)
推荐(0)
摘要:
windows环境下,如果遭遇ARP攻击,解决方法很简单:“360安全卫士”或"QQ软件管理"的实时防护里,都有ARP防护功能(默认是关闭的),只要启用就行了。但是Mac本上,就没这么方便了,先大概说下ARP攻击的原理:我们在局域网中访问外网时,总是要经过网关才能出去,IP设置里网关设置的是一个具体的ip4地址(比如192.168.1.1),但是IP地址每台机器通常是可以随便设置的(只要不跟局域网中的其它机器冲突),这是一个逻辑上的虚拟地址,只有网络设备(比如网卡)本身的静态MAC地址,这个才是物理真实地址,所有对IP的访问,最终必须定位到MAC物理地址,才能直接跟物理设备
阅读全文
posted @ 2013-01-13 22:23
菩提树下的杨过
阅读(4845)
推荐(0)
摘要:
以下信息主要是从 "网上搜集+客户调研+自己业务理解" 而来的,不保证一定对,记在这里备份:国内航空货运单 8联 的作用货运单一式八联。其中正本三联,副本五联。三联正本具有同等法律效力。第一联,甲联:正本3,蓝色,为托运人联。作为托运人支付货物运费、并将货物交由承运人运输的凭证。(注:货主/托运人 ...
阅读全文
posted @ 2013-01-08 14:09
菩提树下的杨过
阅读(2284)
推荐(0)
摘要:
接上回继续,TMP_EMP中的ID是根据序列SQ_TMP_EMP来生成的,需要在TmpEmp.hbm.xml中设置: SQ_TMP_EMP 这样运行时,Hibernate就会自动从SQ_TMP_EMP中取nextval用来填充到ID字段中示例代码:先创建一个工具类package app;i...
阅读全文
posted @ 2012-12-27 09:26
菩提树下的杨过
阅读(17047)
推荐(0)
摘要:
默认情况下,即便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 =...
阅读全文
posted @ 2012-12-26 18:01
菩提树下的杨过
阅读(2227)
推荐(0)