爪蛙技术
文章平均质量分 77
digua007
这个作者很懒,什么都没留下…
展开
-
性能监控与性能问题定位之:Java篇
http://hi.baidu.com/higkoo/blog/item/f2583266e90e032aab184caf.html原创 2012-04-09 15:50:48 · 151 阅读 · 0 评论 -
svn 中tag branch trunk 的用法
在SVN中Branch/tag在一个功能选项中,在使用中也往往产生混淆。在实现上,branch和tag,对于svn都是使用copy实现的,所以他们在默认的权限上和一般的目录没有区别。至于何时用tag,何时用branch,完全由人主观的根据规范和需要来选择,而不是强制的(比如cvs)。一般情况下,tag,是用来做一个milestone的,不管是不是release,都是一个可用的版本。这里,应该是只读...原创 2010-05-19 15:54:30 · 138 阅读 · 0 评论 -
jsp的url中文参数解决办法
1.页面头部添加<%@ page contentType="text/html;charset=gb2312" %>或者<%@ page contentType="text/html;charset=GBK" %>或者<%@ page contentType="text/html;charset=UTF-8" %>2.传递参数时候需要编码..原创 2009-06-23 18:38:31 · 121 阅读 · 0 评论 -
[zt]Linux下整合Apache+Tomcat+MySQL+PHP
环境与资源下载操作系统:Linux fedora4 下载地址:http://fedoraproject.orgJDK: jdk-1_5_0_14-linux-i586.rpm 下载地址:http://java.sun.com/javase/downloads/index.jspTomcat: apache-tomcat-5....2008-05-22 14:52:45 · 234 阅读 · 0 评论 -
漫谈权限系统之结尾篇(开源产品、个人观点、知识体系)
一. 开源产品对开源的产品了解不多,所以也只能大概的谈谈,开源的产品中比较知名的有poweracl、acegi,poweracl从名字就可以看出其是基于ACL模型的,不怎么了解所以在此也不去评价了。Acegi作为JAVA界知名的权限系统,从其文档看来是能满足上述的权限系统的所有需求,其reference文档也对权限系统进行了系统的归纳,非常的不错,建议去看看。在Acegi中授权模型以及资...2008-05-19 16:25:04 · 108 阅读 · 0 评论 -
漫谈权限系统之基于ACL的实现
基于ACL的实现ACL介绍 ACL全称Access Control List,在ACL中,包含用户(User)、资源(Resource)、资源操作(Operation)三个关键要素。通过将资源以及资源操作授权给用户而使用户获取对资源进行操作的权限,模型如下图所示: 图表 1 ACL模型实现方案 通过上面对ACL模型的介绍,可以看出ACL是个简单的模型,但其并未...2008-05-19 16:21:48 · 92 阅读 · 0 评论 -
漫谈权限系统之技术策略以及基于RBAC的实现
根据上面的需求描述以及对需求的分析,我们得知通常的一个中小型系统对于权限系统所需实现的功能以及非功能性的需求,在下面我们将根据需求从技术角度上分析实现的策略以及基于目前两种比较流行的权限设计思想来讨论关于权限系统的实现。1.1. 技术策略l 身份认证在B/S的系统中,为识别用户身份,通常使用的技术策略为将用户的身份记录在Session中,也就是当用户登录时即获取...2008-05-19 14:05:28 · 102 阅读 · 0 评论 -
漫谈权限系统系列之概述、目的和需求
一. 概述本文根据对中小型应用系统的权限系统的需求进行阐述,并对通常用于实现权限系统的两种思想、技术策略以及技术实现方案进行描述,比较其优缺点,同时对开源类型的产品进行介绍,最后结合自己的实际经验介绍自己的实现方案以及碰到的难点。本文并不是什么理论化的文章,完全是实战型的总结和实战的讨论,至于理论请大家去参考更为专业的文章。二. 目的此文的编写作为自己对于权限系统进行系统化的整理,毕...2008-05-19 13:05:53 · 386 阅读 · 0 评论 -
[zt] 漫谈权限系统 I
从权限系统谈起,我想只要工作了几年的一般都会对这个有接触,特别是做项目的,^_^,可能很多都自己做过权限系统,一般来说权限系统主要需要做到以下几种情况的控制:1、身份认证。主要是控制访问系统的用户的身份,以确定用户是否有足够的身份进行操作。2、系统菜单、按钮的控制。需要根据权限显示相应的菜单和按钮,这种主要是控制显示级别的以及用户正常访问系统操作。3、系统操作的控制。需要根据权限来控制用户是否有权...2008-05-19 13:05:03 · 87 阅读 · 0 评论 -
PO/VO/DAO/BO/POJO是什么(JAVA几种对象的解释)
java的几种对象(PO,VO,DAO,BO,POJO)解释 一、PO:persistant object 持久对象,可以看成是与数据库中的表相映射的java对象。最简单的PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不包含任何对数据库的操作。 二、VO:value object值对象。通常用于业务层之间的数据传递,和PO一样也是仅仅包含数据而已。但应...原创 2010-08-31 00:17:47 · 86 阅读 · 0 评论 -
中文乱码问题解决,过滤器配置,get post提交乱码,filter,struts乱码,jsp乱码
Xml代码 <filter> <filter-name>encoding</filter-name> <filter-class> filter.FilterEncoding </filter-class> <init-param> &...原创 2010-09-14 15:19:41 · 117 阅读 · 0 评论 -
synergy quicksynergy 共享ubuntu 和 windows 7
1. 在windows 7 下 安装 synergy 2. 在ubuntu安装 quicksynergy 或者 synergy 3. 保证互相可以ping通4. 保证在同一工作组中(在网络中可以看到彼此) ubuntu 下 “位置 ” ->“网络”中windows 网络邻居中如果看不到需要安装samba启动samba后sudo apt- 执行:sudo g...2011-01-21 19:27:17 · 127 阅读 · 0 评论 -
BeanUtils.copyProperties 日期转字符 日期转Long
建立自己的日期转换类import org.apache.commons.beanutils.ConversionException;import org.apache.commons.beanutils.Converter;import org.apache.commons.lang.time.DateUtils;public class DateConverter imple...原创 2012-03-15 11:05:25 · 981 阅读 · 0 评论 -
java 正则
http://edu.yesky.com/edupxpt/18/2143018.shtml原创 2011-11-18 13:27:26 · 80 阅读 · 0 评论 -
apache common 工具
common-lang (2.1)ArrayUtils常量中包含了基本类型(及其相对应类)的空数组。提供向数组增加元素(包括增加单个元素或是整个数组),删除元素,翻转元素排列次序克隆数组(基本类型)查找数组中的元素(是否包含,返回索引)获得数组长度(null安全,返回为0)...原创 2011-11-03 16:24:52 · 78 阅读 · 0 评论 -
git branch
http://f2e.us/wiki/git-branch.html#!/理解分支git在创建分支的时候,实际上是从整个提交历史里的某个起点开始(该起点被记录为分支的祖先,标识分支的起始位置),创建提交历史树的枝干。由于git每次提交的时候均会记录当次提交的校检和,配合将数据打包存储,记录当前仓库相对于前一版本的变化。所以git的分支,实际上只是一串包含对象校...原创 2011-10-26 16:04:07 · 182 阅读 · 0 评论 -
TortoiseSVN svn:external 设置外部svn目录的属性
项目开发时,各个人员之间都会使用公共项目中的文件。可以在自己项目中svn:external你需要的部分到自己的项目如果使用TortoiseSVN的话可以如下操作: 例如你的项目在d:\project\下想引用http://svn.lab.xxxx.com/svn/static/tlds下面的tld文件夹里面的文件。 1、在d:\project 文件...2011-02-17 14:57:29 · 409 阅读 · 0 评论 -
浅析VO、DTO、DO、PO的概念、区别和用处
概念:VO(View Object):视图对象,用于展示层,它的作用是把某个指定页面(或组件)的所有数据封装起来。DTO(Data Transfer Object):数据传输对象,这个概念来源于J2EE的设计模式,原来的目的是为了EJB的分布式应用提供粗粒度的数据实体,以减少分布式调用的次数,从而提...原创 2010-10-18 16:03:03 · 199 阅读 · 0 评论 -
详细解析Java中抽象类和接口的区别
抽象类和接口 抽象类仅提供一个类的部分实现。抽象类可以有实例变量、以及一个或多个构造函数。抽象类可以同时又抽象方法和具体方法。 一个抽象类不会有实例,它的构造函数不能被客户端用来创建实例。一个抽象类的构造函数可以被其子类调用,从而使一个抽象类的所有子类可以有一些共同的实现,而不同的子类可以在此基础上有不同的实现。接口比抽象类更为抽象所以有线使用接口声明抽...原创 2010-10-12 15:25:53 · 93 阅读 · 0 评论 -
文件操作
FileFile 类 只操作文件,不对文件中的内容进行操作。File文件包括文件夹、文件。File f =new File("d:/temp/thomas.txt");如果d:下没有temp文件夹if (!f.exists()){ f.getParentFile().mkdirs(); //getParentFile()是取thomas.txt文件的路径,不加此句的...原创 2010-09-25 20:56:12 · 94 阅读 · 0 评论 -
基于角色管理(RBAC)的权限系统
基于角色管理(RBAC)的权限系统 这里的权限系统要区分2个概念: 粗粒度:表示类(model)别级,即仅考虑对象的类别(the type of object),不考虑对象的某个特定的实例。比如,对合同这个类别(contract)的管理中,创建、删除等操作,对所有的用户都一视同仁,并不区分具体的对象实例(销售合同,生产合同)。 细粒度:表示实例(instance)级别,即需要考虑...2008-05-19 10:34:14 · 90 阅读 · 0 评论 -
Spring对log4j的增强
log4j,可以有如下的cream: 1. 动态的改变记录级别和策略,不需要重启Web应用,如《Effective Enterprise Java》所说。 2. 把log文件定在 /WEB-INF/logs/ 而不需要写绝对路径。 3. 可以把log4j.properties和其他properties一起放在/WEB-INF/ ,而不是Class-Path。 在web.xml 添...2008-05-16 15:15:47 · 94 阅读 · 0 评论 -
通用权限管理系统设计篇(一)
一.引言 因为做过的一些系统的权限管理的功能虽然在逐步完善,但总有些不尽人意的地方,总想抽个时间来更好的思考一下权限系统的设计。 权限系统一直以来是我们应用系统不可缺少的一个部分,若每个应用系统都重新对系统的权限进行设计,以满足不同系统用户的需求,将会浪费我们不少宝贵时间,所以花时间来设计一个相对通用的权限系统是很有意义的。二.设计目标 设计一个灵活、通用、方...2008-01-03 13:40:52 · 384 阅读 · 0 评论 -
getAttribute和getParameter的区别
getAttribute和getParameter的区别JSP中getParameter与getAttribute有何区别?——getParameter得到的都是String类型的。或者是http://a.jsp?id=123中的123,或者是某个表单提交过去的数据。——getAttribute则可以是对象。——getParameter()是获取POST/GET传递的参数值;——getA...原创 2008-07-18 10:00:55 · 88 阅读 · 0 评论 -
JSP编程进度条设计
许多Web应用、企业应用涉及到长时间的操作,例如复杂的数据库查询或繁重的XML处理等,虽然这些任务主要由数据库系统或中间件完成,但任务执行的结果仍旧要借助JSP才能发送给用户。本文介绍了一种通过改进前端表现层来改善用户感觉、减轻服务器负载的办法。 当JSP调用一个必须长时间运行的操作,且该操作的结果不能(在服务器端)缓冲,用户每次请求该页面时都必须长时间等待。很多时候,用户会失去耐心,接着尝试点...原创 2008-07-14 10:42:55 · 136 阅读 · 0 评论 -
[zt]JDBC DAO设计
Connection的含义 Connection表示了一个和数据库的链接,底层需要有操作系统的Socket支持,所以Connection是一种资源,既然是一种资源,就需要按照建立,打开,使用,关闭的顺序合理的使用。 Connection是Java数据库操作的基础,是进行一系列操作的基础,所有的派生的操作,例如Statement,PreparedStatement,ResultSet等都...原创 2008-07-08 13:48:58 · 133 阅读 · 0 评论 -
Linux下内存释放问题相关知识
细心的朋友会注意到,当你在Linux下频繁存取文件后,物理内存会很快被用光,当程序结束后,内存不会被正常释放,而是一直作为caching.这个问题,貌似有不少人在问,不过都没有看到有什么很好解决的办法.那么我来谈谈这个问题.先来说说free命令[root@server ~]# free -mtotal used free shared buffers cachedM...2008-07-03 15:20:17 · 132 阅读 · 0 评论 -
hashtable和hashmap的区别
HashTable的应用非常广泛,HashMap是新框架中用来代替HashTable的类,也就是说建议使用HashMap,不要使用HashTable。可能你觉得HashTable很好用,为什么不用呢?这里简单分析他们的区别。 1.HashTable的方法是同步的,HashMap未经同步,所以在多线程场合要手动同步HashMap这个区别就像Vector和ArrayList一样。 2.HashTabl...2008-06-12 10:48:24 · 58 阅读 · 0 评论 -
Collection List Set Map 区别记忆
这些都代表了Java中的集合,这里主要从其元素是否有序,是否可重复来进行区别记忆,以便恰当地使用,当然还存在同步方面的差异,见上一篇相关文章。 有序否允许元素重复否Collection否是List是是SetAbstractSet否否HashSetTreeSet是(用二叉树排序...2008-06-12 10:47:00 · 101 阅读 · 0 评论 -
JAVA中的指针,引用及对象的clone
Java语言的一个优点就是取消了指针的概念,但也导致了许多程序员在编程中常常忽略了对象与引用的区别,本文会试图澄清这一概念。并且由于Java不能通过简单的赋值来解决对象复制的问题,在开发过程中,也常常要要应用clone()方法来复制对象。本文会让你了解什么是影子clone与深度clone,认识它们的区别、优点及缺点。 看到这个标题,是不是有点困惑:Java语言明确说明取消了指针,因为指针往往是在带...2008-06-11 14:32:55 · 88 阅读 · 0 评论 -
通用权限管理设计篇(二)——数据库设计
理清了对象关系之后,让我们接着来进行数据库的设计。在数据库建模时,对于N对N的关系,一般需要加入一个关联表来表示关联的两者的关系。初步估计一下,本系统至少需要十张表,分别为:权限表、用户表、角色表、组表、用户权限关联表、用户角色关联表、角色权限关联表、组权限关联表、组角色关联表、用户属组关联表。当然还可能引出一些相关的表。下面让我们在PowerDesigner中画出各表吧。 各表及其关...2008-01-03 14:14:51 · 164 阅读 · 0 评论 -
JAD反编译的使用
jad集成在ECLIPSE没有成功。不过使用MS-DOS运行后批量反编译真的很爽~~~哈哈jad的下载地址:http://www.kpdus.com/jad.html#download (注意版本问题)把jad.exe程序放在要反编译的package一级的目录下,将MS-DOS也进入到这个路径执行以下命令jad -o -r -sjava -d src com/**/**/*.classsrc编译...2008-01-08 11:11:43 · 116 阅读 · 0 评论 -
java 权限控制的算法
这里笔者介绍一种很常用,也比较专业的权限控制思路。这里用java语言描述,其实都差不多的。要换成其他的语言主,自己转一下就可以了。为了方便起见,我们这里定义a^b为:a的b次方。这里,我们为每一个操作设定一个唯一的整数值,比如: 删除A---0修改A---1添加A---2删除B---3修改B---4添加B---5…… 理论上可以有N个操作,这取决于你用于储存用户权限值的数据类型了。 这样,如果...2008-02-22 16:09:12 · 112 阅读 · 0 评论 -
JDBC与JNDI的区别
程序员开发时,知道要开发访问MySQL数据库的应用,于是将一个对 MySQL JDBC 驱动程序类的引用进行了编码,并通过使用适当的 JDBC URL 连接到数据库。 就像以下代码这样: Connection conn=null;try ...{Class.forName("com.mysql.jdbc.Driver", true, Thread.currentThread().get...2008-05-16 15:13:55 · 140 阅读 · 0 评论 -
LOG4J开发
第一部分讲解如何配置log4j,第二部分为对log4j.properties配置文件中的各个属性的讲解,第三部分为对log4j的详细讲解,如果只想配置上log4j,那么只需要看前两个部分就可以,如果想对log4j深入了解,则还需看第三部分。一、Log4j配置第一步:加入log4j-1.2.8.jar到lib下。第二步:在CLASSPATH下建立log4j.properties。内容如下:1...2008-05-16 15:04:04 · 110 阅读 · 0 评论 -
转发和重定向的区别
先是看上去不同,他们的调用分别如下:request.getRequestDispatcher("apage.jsp").forward(request, response);//转发到apage.jspresponse.sendRedirect("apage.jsp");//重定向到apage.jsp在jsp页面中你也会看到通过下面的方式实现转发:<jsp:forward page="apa...2008-03-09 18:28:31 · 75 阅读 · 0 评论 -
Java中对字符串进行加密和解密(转)
1.引言在实际工作中我们常常会遇到对数据进行加密解密的工作(如对密码数据的保护或者对网络传输的数据进行保护),因为数据加密解密需要非常复杂、高效的算法,所以通常对于一般的程序员是无法完成的工作,即使对于一些公开的加密算法进行编程都是一件非常艰巨的任务(少数智商及高的程序员除外)。幸运的是现在有很多加解密算法有现成的API,我们只要了解一些加解密的工作原理,能够使用一些加解密API来完成数据保护的工...2008-03-06 09:04:47 · 160 阅读 · 0 评论 -
Listener Servlet的应用
Listener是Servlet的监听器,它可以监听客户端的请求、服务端的操作等。通过监听器,可以自动激发一些操作,比如监听在线的用户的数量。当增加一个HttpSession时,就激发sessionCreated(HttpSessionEvent se)方法,这样就可以给在线人数加1。常用的监听接口有以下几个: ServletContextAttributeListener监听对Servl...2008-03-04 15:09:49 · 75 阅读 · 0 评论 -
权限系统设计
权限系统(1)--基本模式在系统中发生的事情,抽象的说都是某个主体(subject)在某个资源(resource)上执行了某个操作(operation)。subject --[operation]--> resource 所谓权限管理,就是在这条信息传递路径中加上一些限制性控制。主体试图去做的 limited by 系统允许主体去做的 = 主体实际做的。可以看到,权限控制基本对应于filte...2008-02-22 16:14:41 · 119 阅读 · 0 评论 -
B/S系统权限控制的一种简单方法
看了网上一些关于权限控制的帖子,越看越迷糊,什么用AOP(ASPect Oriented Programming,面向方面编程),用容器,RBAC(基于角色的访问控制方法),SSO,Jive的Proxy模式等等等等,且又是role又是group,真是头都大了,先写个简单的实现方法,以后再研究高深的。 此方法不依靠容器 框架,适用于小系统(主要jsp页面要少于100,因为是硬编码到JSP),适...2008-02-22 16:12:44 · 98 阅读 · 0 评论