- 博客(112)
- 资源 (11)
- 问答 (1)
- 收藏
- 关注
原创 使用AspectJ为Java程序添加日志管理
最近接手了一个项目完全没有日志记录,出了问题定位起来很麻烦,于是提出要补加日志,但直接在程序中补加Log工作量实在有点大,想到了Spring AOP的日志管理实际上是整合了AspectJ,那么直接使用AspectJ进行日志管理岂不是省了很多麻烦~~ 于是上网查找资料,按照网上的一些实例进行AspectJ日志管理的开发,大概的步骤如下:1、在{project}/src目录下添加
2012-03-23 13:27:21 9021 1
转载 c++中,引用和指针的区别
<br />(1)引用总是指向一个对象,没有所谓的 null reference .所有当有可能指向一个对象也由可能不指向对象则必须使用 指针. <br />由于C++ 要求 reference 总是指向一个对象所以 reference要求有初值. <br />String & rs = string1; <br />由于没有所谓的 null reference 所以所以在使用前不需要进行测试其是否有值.,而使用指针则需要测试其的有效性. <br />(2)指针可以被重新赋值而reference则总是指向最
2011-05-30 22:45:00 823
转载 mysql Load Data InFile 的用法
<br />首先创建一个表<br /> Use Test;<br /> Create Table TableTest(<br /> `ID` mediumint(8) default '0',<br /> `Name` varchar(100) default ''<br /> ) TYPE=MyISAM;<br /> 向数据表导入数据<br /> Load Data InFile 'C:/Data.txt' Into Table `TableTest`<br /> 常用如下:<br />L
2011-04-12 22:43:00 1076
转载 检查数据库锁和程序没有释放数据库连接
<br />SELECT /*+ rule*/ <br />B.INST_ID, <br />A.EVENT, <br />C.SID, <br />B.SPID, <br />C.MACHINE, <br />C.SECONDS_IN_WAIT, <br />'kill -9 ' || B.SPID, <br />'alter system kill session '''||C.SID||','||C.SERIAL#||''';', <br />E.OBJECT_NAME, <br />dbms_row
2011-04-12 22:04:00 10452
原创 Shell操作数据库流控脚本实例
#!/bin/bash <br /><br />if [ "$(whoami)" != "root" ]; then <br />echo "Current username must be root!" <br />return 1 <br />fi <br />sqlfile="./updatedetail.log" <br />m=$1 <br />if [ -z "$m" ]; then <br /> m=2000 <br />fi <br /><br />tag=`. /home/oracl
2011-03-03 21:07:00 4038
转载 Oracle与SQL Server事务处理的比较
<br />事务处理是所有大型数据库产品的一个关键疑问,各数据库厂商都在这个方面花费了很大精力,不同的事务处理方式会导致数据库性能和功能上的巨大差异。<br /> 事务处理也是数据库管理员与数据库运用 程序开发人员必须深刻理解的一个疑问,对这个疑问的疏忽可能会导致运用 程序逻辑不正确以及效率低下。<br /> 下面我们针对Oracle及SQL Server这两种当前广泛运用的大型数据库产品,探讨一下它们在事务处理方面的一些差异。如没有特殊说明,本文内容适用的数据库产品版本为Oracle9i及SQL Se
2010-12-30 23:20:00 668
转载 [JMX一步步来] 9、基于JBoss来写MBean
前面都是用JDK自带的JMX实现来写的MBean,JMX的实现不独SUN一家,JBOSS也有自己的JMX实现。如果你使用JBOSS来做WEB服务器,那么基于JBOSS的实现来写MBean,是一个不错的选择。象我们公司就是用JBOSS的,因此所有MBean都是基于JBoss来写的。基于JBoss的MBean和基于SUN的MBean有什么不同吗?有一些不同之外,但绝大部份都一样。 下面是我最早发的一篇关于JMX的文章,是我对公司所做项目的笔记,它上面的JMX例子就是基于JBOSS的。博客搬了几次家,文章删的删
2010-12-08 20:49:00 1187
转载 [JMX一步步来] 8、编写程序来连接MBean
<br />前面用Html、jconsole等方法连接上了MBeanServer,并能够通过这些界面来操纵MBean。但有时我们需要不借助这些客户端,而是在自己的程序来操纵这些MBean,这就要求我们知道如何在代码里连接MBean。 基于上一篇为jconsole而修改的例子,给出一个示例的客户端程序,基本的操作都有了:<br />import java.util.Iterator;<br />import java.util.Set;import javax.management.Attribute;<b
2010-12-08 20:44:00 1591 1
转载 [JMX一步步来] 7、用JDK5.0的JConsole来连接MBean
前面所有看效果都是通过Html网页来看的。JDK5.0自带了一个jmx客户端,叫jconsole,位于c:/jdk/bin/jconsole.exe。我们来用用这个客户端来连接Mbean Server。一、vm参数方式1、还是用第一篇的那个HelloAgent,修改HelloAgent,将第一句:MBeanServer server = MBeanServerFactory.createMBeanServer();改为:MBeanServer server = ManagementFactory.getPl
2010-12-08 20:43:00 1285
转载 [JMX一步步来] 5、用Apache的commons-modeler来辅助开发JMX
一、前言 每一个MBean都要有一个接口,比如前面的Hello要有一个HelloMBean接口。要多维护一个接口,的确是件麻烦的事。Apache的commons-modeler利用JMX中的动态MBean原理很好的解决了这一问题,commons-modeler使用得我们可以只写Hello,而不用写HelloMBean这个接口。不过这是有代价的,它要求我们写一个mbean的xml描述文件(唉,少了一件事,却又多出另一件事来)。但commons-modeler还是有优点的,就是它让mbean的装配更加灵活,把
2010-12-08 20:42:00 1105
转载 [JMX一步步来] 6、模型Bean:Model Bean
<br />在上一节是用apache的commons-modeler来开发的一个model,只不过commons-modeler帮助我们实现了很多的代码,而我们只需要写描述XML文件就行了。这一节,来一个实打实的Model Bean,不借助任何第三方工具包。例子还是沿用Hello这个类,以便于和以前的实现相比较。一、Model MBean实例1、Hello.java还是和以前的一样。这里它没有再加上一个MBean接口了,只是一个很普通的类。public class Hello{<br /> priva
2010-12-08 20:42:00 1058
转载 [JMX一步步来] 4、动态MBean:DynamicMBean
一、前言 动态MBean是在运行期才定义它的属性和方法,也就是说它有什么属性和方法是可以动态改变的。动态MBean主要利用一些辅助类(构造函数类MBeanConstructorInfo、属性类MBeanAttributeInfo、方法类MBeanOperationInfo)来完成这个功能,所有的动态MBean必须实现DynamicMBean接口。DynamicMBean写好后,使用方法和第一篇文章中普通的MBean一样。 给出一个动态MBean的实例,这个实例最初动态构了一个Name属性及一个print
2010-12-08 20:41:00 1484
转载 [JMX一步步来] 3、Notification的使用
一、简介 Mbean之间的通信是必不可少的,Notification就起到了在Mbean之间沟通桥梁的作用。JMX notification 由四部分组成:Notification 这个相当于一个信息包,封装了需要传递的信息 Notification broadcaster 这相当于一个广播器,把消息广播出去 Notification listerner 这是一个监听器,用于监听广播出来的Notification消息 Notification filter 这是一个过滤器,过滤掉不需要的Notificat
2010-12-08 20:40:00 1917 1
转载 [JMX一步步来] 2、JMX简介
<br />一、JMX简介<br /> JMX是一种JAVA的正式规范,它主要目的是让程序且有被管理的功能,那么怎么理解所谓的“被管理”呢?试想你开发了一个软件(如WEB网站),它是在24小时不简断运行的,那么你可能会想要“监控”这个软件的运行情况,比如收到了多少数据,有多少人登录等等。或者你又想“配置”这个软件,比如现在访问人数比较多,你想把数据连接池设置得大一些。<br /> 当然,你也许会专门为这些管理来开发软件,但如果你借助JMX,则会发现创建这样的管理程序是如此简单。因为你无需为管理程序来开发
2010-12-08 20:38:00 1971
转载 [JMX一步步来] 1、JMX的Hello World
<br />一、JMX简介<br /> 什么是JMX?在一篇网文中是这样说的:"JMX(Java Management Extensions)是一个为应用程序植入管理功能的框架。JMX是一套标准的代理和服务,实际上,用户可以在任何Java应用程序中使用这些代理和服务实现管理",这句话我现在看着还是不知所云,云里雾里。<br /> 我们还是从JMX能给我们提供什么好处入手来理解吧。举一个应用实例:在一个系统中常常会有一些配置信息,比如服务的IP地址,端口号什么的,那么如何来写这些代码呢?程序初哥一般是写死
2010-12-08 20:35:00 2409
转载 JMX学习笔记(三)-MXBean
在MBean中有只要遵循以下两个规则,我们就可以在jconsole中动态的改变MBean中的属性值1. JMX中要定义接口必须以xxxMBean的规范定义2. 得有类实现xxxMBean接口例如: Java代码 package com.haitao.jmx.mxbean; /** * Server Configure MBean * * @author haitao.tu * */ public interface ServerConfigureMBean {
2010-12-07 22:24:00 2744
转载 JMX学习笔记(二)-Notification
Notification 通知,也可理解为消息,有通知,必然有发送通知的广播,JMX这里采用了一种订阅的方式,类似于观察者模式,注册一个观察者到广播里,当有通知时,广播通过调用观察者,逐一通知.这里写一个简单的Server配置例子, 首先定义我们的MBean接口: Java代码 package com.haitao.jmx.mbeans.server; /** * * Server Configure MBean * * @author haitao.tu * */
2010-12-07 22:21:00 6601
转载 JMX学习笔记(一)-MBean
JMX 即 Java Management Extensions Java管理扩展MBean 即 managed beans 被管理的Beans一个MBean是一个被管理的Java对象,有点类似于JavaBean,一个设备、一个应用或者任何资源都可以被表示为MBean,MBean会暴露一个接口对外,这个接口可以读取或者写入一些对象中的属性,通常一个MBean需要定义一个接口,以MBean结尾, 例如: EchoMBean, 格式为XXXM
2010-12-07 22:20:00 32354 4
转载 PL/SQL Developer使用技巧
<br /> 1、PL/SQL Developer记住登陆密码 <br /> 在使用PL/SQL Developer时,为了工作方便希望PL/SQL Developer记住登录Oracle的用户名和密码; <br />设置方法:PL/SQL Developer 7.1.2 ->tools->Preferences->Oracle->Logon History , “Store history”是默认勾选的,勾上“Store with password” 即可,重新登录在输入一次密码则记住了。 <br
2010-11-30 22:17:00 865
转载 如何查看端口是否被占用
开始--运行--cmd 进入命令提示符 输入netstat -ano 即可看到所有连接的PID 之后在任务管理器中找到这个PID所对应的程序如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用假如我们需要确定谁占用了我们的80端口1、Windows平台在windows命令行窗口下执行:C:/>netstat -aon|findstr
2010-08-16 17:14:00 3213 3
转载 如何将 .exe 程序添加到系统的服务中
想让一个程序在启动系统的时候自动运行,你有什么好办法?添加到启动组?那如果别人删除掉就不管用了。如果你使用了Windows NT/2000/XP,就可以试试把这个程序添加为一个服务,这样只有拥有权限的人才可以更改服务,只要你设置好权限,就不用担心会被别人删除了。 要把应用程序添加为服务,你需要两个小软件:Instsrv.exe和Srvany.exe。Instsrv.exe可以给系统安装和删除服务,Srvany.exe可以让程序以服务的方式运行。这两个软件都包含在Windows NT Re
2010-08-16 11:49:00 7479 2
转载 mysql show processlist命令 详解
processlist命令的输出结果显示了有哪些线程在运行,可以帮助识别出有问题的查询语句,两种方式使用这个命令。1. 进入mysql/bin目录下输入mysqladmin processlist;2. 启动mysql,输入show processlist;如果有SUPER权限,则可以看到全部的线程,否则,只能看到自己发起的线程(这是指,当前对应的MySQL帐户运行的线程)。得到数据形式如下(只截取了三条):mysql> show processlist;+-----+---------
2010-08-12 11:24:00 928
转载 CGLIB-Spring的一种反射机制
Spring 在进行反射时候主要有两种策略,一种是直接用JDK的反射,另外是用CgLib。cglib是一个开源项目, 是一个强大的,高性能,高质量的Code生成类库,它可以在运行期扩展Java类与实现Java接口。Hibernate用它来实现PO字节码的动态生成。cglib项目主页: http://cglib.sourceforge.net/CgLib底层用的asmAsm是一个强大的Java字节码生成框架,和BCEL或者SERP很类似,但是小很多,可以动态修改java字节码.其中最核心的代码为newProx
2010-08-06 10:44:00 3161
转载 xmlns的作用
<br /> Namespaces翻译为名字空间。名字空间有什么作用呢?当我们在一个XML文档中使用他人的或者多个DTD文件,就会出现这样的矛盾:因为XML中标识都是自己创建的,在不同的DTD文件中,标识名可能相同但表示的含义不同,这就可能引起数据混乱。 <br /> 比如在一个文档<table>wood table</table>中<table>表示桌子, <br /> 而在另一个文档<table>namelist</table>中<table>表示表格。如果我需要同时处理这两个文档,就会
2010-08-04 18:13:00 642
转载 SQL Server 存储过程调用和参数运用
<br />在SQL Server 的存储过程中,支持输入(Input)、输出参数(Output),也支持返回值参数(ReturnValue)<br />关于输入参数,大家都很好理解,就是我们提供数值给存储过程,这就好比是编程中的按值传递(ByVal)的形参。该参数传递到存储过程后,经过处理,但调用方是不可以得到经过处理之后的值的。<br />而输出参数,则类似于编程中的按引用传递(ByRef)的形参。也就是说,该参数传递到存储过程之后,可以在调用方得到处理过后的值。<br />返回值参数不是一个形参,而类
2010-07-21 16:55:00 573
转载 StringUtils.java应用,非常不错的字符串处理类
<br />1. public static boolean isEmpty(String str)<br />判断某字符串是否为空,为空的标准是str == null 或 str.length() == 0<br />下面是示例:<br />StringUtils.isEmpty(null) = true<br />StringUtils.isEmpty("") = true<br />StringUtils.isEmpty(" ") = false<br />St
2010-07-08 10:20:00 677
转载 Oracle 10G正则表达式
<br />ORACLE中的支持正则表达式的函数主要有下面四个:<br />1,REGEXP_LIKE : 与LIKE的功能相似<br />2,REGEXP_INSTR : 与INSTR的功能相似<br />3,REGEXP_SUBSTR : 与SUBSTR的功能相似<br />4,REGEXP_REPLACE : 与REPLACE的功能相似<br />它们在用法上与Oracle SQL 函数LIKE、INSTR、SUBSTR 和REPLACE 用法相同,<br />但是它
2010-06-30 17:43:00 1171
转载 DES加密、解密字符串算法(java版)
<br />DESPlus.java /** * @author 李国庆 * @company leemenz (C) copyright * @time Nov 1, 2006 10:18:41 AM * @version 1.0.0.0 * @package com.des */ package com.des; import java.security.*; import jav
2010-06-24 18:20:00 625
转载 漫谈Java加密技术(一)
加密解密,曾经是我一个毕业设计的重要组件。在工作了多年以后回想当时那个加密、解密算法,实在是太单纯了。言归正传,这里我们主要描述Java已经实现的一些加密解密算法,最后介绍数字证书。如基本的单向加密算法:* BASE64 严格地说,属于编码格式,而非加密算法* MD5(Message Digest algorithm 5,信息摘要算法)* SHA(Secure Hash Algorithm,安全散列算法)* HMAC(Hash Message Authentication Code,散列消息鉴别码)复杂的对
2010-06-24 15:49:00 667
转载 DWR 例子
<br />先让我们简单了解一下什么是DWR,英文全称:Direct Web Remoting,它是一个web远程调用框架,利用这个可以让AJAX开发变得简单一些,它包含服务器端 Java 库、一个 DWR servlet 以及 JavaScript 库,虽然 DWR 不是 Java 平台上唯一可用的 Ajax-RPC(远程过程调用协议 (RPC:Remote Procedure Call protocol) 远程过程调用(RPC)是1种通过网络从远程计算机程序上请求服务.而不需要了解底层网络技术的协议
2010-06-04 15:13:00 530
转载 Spring的定时器说明文档
关于简单触发器和复杂触发器,查考下面的解释:Quartz设计者做了一个设计选择来从调度分离开作业。Quartz中的触发器用来告诉调度程序作业什么时候触发。框架提供了一把触发器类型,但两个最常用的是SimpleTrigger和CronTrigger。SimpleTrigger为需要简单打火调度而设计。典型地,如果你需要在给定的时间和重复次数或者两次打火之间等待的秒数打火一个作业,那么SimpleTrigger适合你。另一方面,如果你有许多复杂的作业调度,那么或许需要CronTrigger。CronTrigge
2010-06-04 10:47:00 2103
转载 Maven2 的简单用法
1.Maven的安装1.1Windows 2000/xp下的安装1. 解压缩maven-2.0.2-bin.zip到你希望安装Maven 2.0.2的所在目录。这里假设你选择了C:/ProgramFiles/Apache Software Foundation/maven-2.0.2.2. 将C
2010-05-27 13:39:00 3477
转载 myeclipse安装maven2
网友总结以及自己的经验如下:第一种方法:windows -> preferences -> myeclipse -> maven4Eclipse -> maven将update maven projects on startup 打上勾,(myeclipse 6.5)第二种方法。需要安装的插件是:1. Subclipse 1.4: http://subclips
2010-05-27 11:41:00 9233
转载 Struts2.1.8+JasperReport3.7.1 结合iReport3.7.1报表开发
一、准备下载iReport3.7.1、JasperReport3.7.1、Struts2.1.8及其他需要的包,需导入包如下图:如需生成Excel的话,还需导入poi-3.5.jar包。二、整合Struts2+JasperReport31. 新建以下三个pojo类:AddressCode highlighting produced by Actipro
2010-05-25 10:02:00 1864 1
转载 JAVA通用分页代码
写的通用分页代码: SQL存储过程代码: CREATE proc page(@table_name varchar(100),--表名@count int,--每页显示好多行@page int,--当前页数@table_id varchar(100),--表的主键@sqlWhere varchar(1000),--过滤条件@sqlOrder
2010-05-20 21:25:00 2013 1
转载 wsgen与wsimport命令说明
wsgen wsgen 是在JDK的bin目录下的一个exe文件(Windows版),该命令的主要功能是用来生成合适的JAX-WS。它读取Web Service的终端类文件,同时生成所有用于发布Web Service所依赖的源代码文件和经过编译过的二进制类文件。这里要特别说明的是,通常在Web Service Bean中用到的异常类会另外生成一个描述Bean,如果Web Service Bean中
2010-05-17 19:21:00 6538 1
转载 XFire Web Service验证方案
1、HTTP认证XFire中的HTTP认证是通过HttpClient中的Basic方式发送用户名和密码的。客户端代码如下: Client client = new Client(new URL(url)); client.setProperty(Channel.USERNAME, "username"); client.setProperty(Channel.PASSWO
2010-05-14 16:16:00 5848
转载 axis 生成客户端client stub文件
开发前,有个同事先给我们不熟悉Web Service的程序员进行了一些培训,我才知道原来以前的Web Service都是可以自动生成代码的,而且也不难,试了一个下午客户端和服务器端的Web Service代码就都调试通过了,真不错。 为了更多喜爱开发的程序员也能迅速了解Web Service的开发,我这里整理了一些通过Axis开发Web Service的一些要点,希望能让不熟悉Web Se
2010-05-07 21:51:00 9415 1
转载 java.security.MessageDigest的使用
我们知道,编程中数据的传输,保存,为了考虑安全性的问题,需要将数据进行加密.我们拿数据库做例子.如果一个用户注册系统的数据库,没有对用户的信息进行保存,如,我去页面注册,输入"Vicky","123456".注册.web服务器未对数据进行加密而直接写入数据库,那么数据库中的用户信息,便是一个直接可用的数据!一旦服务器服务器被黑~那么用户的信息将毫无保留的展现在黑客面前...为了解决这个弊端,现在大
2010-04-16 15:16:00 10957
转载 SSO单点登录解决方案[转载]
1 什么是单点登陆 单点登录(Single Sign On),简称为 SSO,是目前比较流行的企业业务整合的解决方案之一。SSO的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。 较大的企业内部,一般都有很多的业务支持系统为其提供相应的管理和IT服务。例如财务系统为财务人员提供财务的管理、计算和报表服务;人事系统为人事部门 提供全公司人员的维护服务;
2010-04-13 21:12:00 1378
IIS5+Tomcat5.0.3整合_配置多站点虚拟主机图解手册(PDF)
2008-05-03
【仿百度文库】FlexPaper显示swf出现层叠问题请教~~
2012-06-07
TA创建的收藏夹 TA关注的收藏夹
TA关注的人