2009年06月30日

转载 hibernate QBC检索方式查询


Hibernate提供了一套符合Java编程习惯的API,即QBC(Query By Creteria)检索方式,
主要邮Criteria接口,Criterion接口和Expression类组成.优点是支持动态查询,在编译时就进行解析,容易排除错误;缺点是没有HQL功能强大.
Hibernate.java
package mrgf;
import java.util.List;
import org.hibernate.cfg.Configuration;
import org.hibernate.SessionFactory;
import org.hibernate.Session;
import org.hibernate.Transaction;
import org.hibernate.Criteria;
import org.hibernate.criterion.Criterion;
import org.hibernate.criterion.Exp阅读全文>

发表于 @ 2009年06月30日 23:58:00|评论(loading...)|举报|收藏

2009年06月27日

转载 Spring2.5的新特性


简介
从诞生之初,Spring框架就坚守它的宗旨:简化企业级应用开发,同时给复杂问题提供强大的、非侵入性解决方案。一年前发布的Spring2.0就把这些主题推到了一个新的高度。XML Schema的支持和自定义命名空间的使用大大减少了基于XML的配置。使用Java5及更新版本java的开发人员如今可以利用植入了像泛型(generic)和注解等新语言特性的Spring库。最近,和AspectJ表达式语言的紧密集成,使得以非侵入方式添加跨越定义良好的Spring管理对象分组的行为成为可能。
新发布的Spring2.5继续坚持了这个发展趋向,特别是为那些使用Java 5或更新版本java的开发人员提供了进一步简化而强大的新特性。这些新特性包括:注解驱动的依赖性注入(annotation-driven dependency injection),使用注解而非XML元数据来自动侦测classpath上的Spring组件,注解对生命周期方法的支持,一个新的web控制器模型将请求映射到加注解的方法上,在测试框架中支持Junit4,Spring XML命名空间的新增内容阅读全文>

发表于 @ 2009年06月27日 23:12:00|评论(loading...)|举报|收藏

2009年06月24日

原创 jbpm已办任务

 最近研究jbpm 中,过段时间写写jbpm的学习笔记,暂时先凌乱的写点开发过程中,遇到的问题和解决的办法。下面是查找出每个节点已办任务的的方法 TaskMgmtSession taskmgrSession = jbpmContext.getTaskMgmtSession();   List taskInstanceList = taskmgrSession.findTaskInstances(actorId);   List haveDoneTaskInstanceList = new ArrayList();   for (int i=0;taskInstanceList!=null && i阅读全文>

发表于 @ 2009年06月24日 14:04:00|评论(loading...)|举报|收藏

2009年06月22日

转载 JBPM回退功能的实现


1:
我们知道JBPM系统,决定一个流程当前在什么环节的关键是task 和toker。他们在数据库中的表分别是JBPM_TASKINSTANCE,JBPM_TOKEN。我的设计思想是,放弃JBPM自身的API,因为我看了一段时间的JBPM的API,没有找到可以灵活操作taskinstance,和token的方法。于是自己写sql语句自己操作这两张表。
在项目中之所以使用回退功能,主要是可是在流程过程中的某个环节的办理是发生了错误,所有客户要求把流程退回到指定的环节重新办理。
从理论上只要办当前流程中活动的TASK,用我们的程序把它变成已办理的状态,把客户想要回退到的环节的TASK从新激活,最后把TOKEN的节点ID指向到回退后的NODE。
所以只要我们自己操作这两个表就OK了。
JBPM_TASKINSTANCE 表中有三个字段是表示这个任务是办理完了还是没有办理。他们是:END_,ISOPEN_,ISSIGNALLING_,其中END_是一个日期类型表示这个任务什么时候办完,ISOPEN_,ISSIGNALLING_这两个阅读全文>

发表于 @ 2009年06月22日 14:58:00|评论(loading...)|举报|收藏

转载 Hibernate3的配置参数汇总


SQL方言
1、Hibernate JDBC属性

属性名 用途
hibernate.connection.driver_class     jdbc 驱动类
hibernate.connection.url                  jdbc URL
hibernate.connection.username        数据库用户
hibernate.connection.password        数据库用户密码
hibernate.connection.pool_size        连接池容量上限数目

注:使用C3P0的properties样例代码:

hibernate.connection.driver_class = org.postgresql.Driver
hibernate.connection.url = jdbc:postgresql://localhost/mydatabase
hiber阅读全文>

发表于 @ 2009年06月22日 14:50:00|评论(loading...)|举报|收藏

转载 spring+hibernate的配置

第一种方式:hiberante.cfg.xml配置如下:Xml代码 update     org.hibernate.dialect.MySQLDialect     true阅读全文>

发表于 @ 2009年06月22日 13:55:00|评论(loading...)|举报|收藏

2009年06月14日

原创 spring 事务



Spring中的事务隔离级别
l         ISOLATION_DEFAULT 默认隔离级别

l         ISOLATION_READ_UNCOMMITTED 最低隔离级别。允许读事务未提交的数据,会产生脏读、不可重复读和幻象读。

l         ISOLATION_READ_COMMITTED 保证一个事务修改的数据提交后才能被另外一个事务读取。另外一个事务不能读取该事务未提交的数据。这种事务隔离级别可以避免脏读出现,但是可能会出现不可重复读和幻像读。

l         ISOLATION_REPEATABLE_READ 这种事务隔离级别可以防止脏读,不可重复读。但是可能出现幻像读。它除了保证一个事务不能读取另一个事务未提交的数据外,还保证了避免不可重复读。

l         ISOLATION_SERIALIZABLE 这是花费最高代价但是最可靠的事务隔离级别。事务被处理为顺序执行。除了防止脏读,不可重复读外,还避免了幻像读。阅读全文>

发表于 @ 2009年06月14日 12:09:00|评论(loading...)|举报|收藏

原创 java动态代理


使用动态代理不需要为特定对象与方法编写特定的代理对象,可以使得一个处理者服务于多个对象。首先,一个处理者的类设计要实现java.lang.reflect.InvocationHandler接口。
下面先给出一个简单的实现:
首先定义接口Ihello:
public interface IHello {
    void sayHello(String msg);
}
再给出一个这个接口的简单实现类HelloSpker:
public class HelloSpker implements IHello {
    public void sayHello(String msg) {
       System.out.println("this is HelloSpker and Hello "+msg);
    }
}
接下来就要定义一个普通的代理类:
public class CommonHandler implements Invocat阅读全文>

发表于 @ 2009年06月14日 12:03:00|评论(loading...)|举报|收藏

2009年04月10日

转载 Java语言编码规范


目录1 介绍1.1 为什么要有编码规范1.2 版权声明
2 文件名2.1 文件后缀2.2 常用文件名
3 文件组织3.1 Java源文件3.1.1 开头注释3.1.2 包和引入语句3.1.3 类和接口声明
4 缩进排版4.1 行长度4.2 换行
5 注释5.1 实现注释的格式5.1.1 块注释5.1.2 单行注释5.1.3 尾端注释5.1.4 行末注释5.2 文挡注释
6 声明6.1 每行声明变量的数量6.2 初始化6.3 布局6.4 类和接口的声明
7 语句7.1 简单语句7.2 复合语句7.3 返回语句7.4 if,if-else,if else-if else语句7.5 for语句7.6 while语句7.7 do-while语句7.8 switch语句7.9 try-catch语句
8 空白8.1 空行8.2 空格
9 命名规范
10 编程惯例10.1 提供对实例以及类变量的访问控制10.2 引用类变量和类方法10.3 常量10.4 变量赋值10.5 其它惯例10.5.1 圆括阅读全文>

发表于 @ 2009年04月10日 15:52:00|评论(loading...)|举报|收藏

2009年04月09日

转载 用java调用oracle存储过程总结二

用java调用oracle存储过程总结二阅读全文>

发表于 @ 2009年04月09日 13:55:00|评论(loading...)|举报|收藏

转载 用java调用oracle存储过程总结一

用java调用oracle存储过程总结一阅读全文>

发表于 @ 2009年04月09日 13:53:00|评论(loading...)|举报|收藏

转载 Oracle函数列表速查

PL/SQL单行函数和组函数详解阅读全文>

发表于 @ 2009年04月09日 13:45:00|评论(loading...)|举报|收藏

2009年03月05日

转载 PO BO VO DTO POJO DAO概念及其作用(附转换图)


J2EE开发中大量的专业缩略语很是让人迷惑,尤其是跟一些高手讨论问题的时候,三分钟就被人家满口的专业术语喷晕了,PO VO BO DTO POJO DAO,一大堆的就来了(听过老罗对这种现象的批判的朋友会会心一笑)。
    首先声明偶也不是什么高手,以下总结都是自己的体会。不对之处请您多指教。
PO:
persistant object持久对象

最形象的理解就是一个PO就是数据库中的一条记录。
好处是可以把一条记录作为一个对象处理,可以方便的转为其它对象。


BO:
business object业务对象

主要作用是把业务逻辑封装为一个对象。这个对象可以包括一个或多个其它的对象。
比如一个简历,有教育经历、工作经历、社会关系等等。
我们可以把教育经历对应一个PO,工作经历对应一个PO,社会关系对应一个PO。
建立一个对应简历的BO对象处理简历,每个BO包含这些PO。
这样处理业务逻辑时,我们就可以针对BO去阅读全文>

发表于 @ 2009年03月05日 16:57:00|评论(loading...)|举报|收藏

2009年02月27日

原创  最近看的篇文章,年过三十,感触很深


不知我到三十后会不会也有这样的境界



 时光匆匆,太匆匆!         
       年过三十,不再患得患失,知道什么是要追求的,什么是无论如何努力也达不到的,追求应该努力的,放手无法挽回的,在琐碎和平庸里品味幸福和感动;懂得什么是目标,什么是理想,在实现目标的过程中历练,在憧憬理想的梦境里飞扬;无数的快乐就磨琢于这不懈的历练和轻舞的飞扬里;明白什么是风花雪月,什么是柴米油盐,远远的欣赏着风花雪月的浪漫旖旎,静静地细数着柴米油盐的平实安然.忙而不乱中的人生从未有过的踏实和宁静.        
        年过三十, 少了茫然,多了执著;少了冲动,多了从容;少了盲从,多了主动.虽然偶尔也会沉思往事立残阳,但绝不会凄凄然把盏北望,偶尔也会背起行囊走天下,但绝不会把一生寄于飘零,偶尔也会无语泪先流独自惆怅, 但绝不会俨然断肠人任心事成灰.是的,年过三十,多了责任少了放浪,多了知性,少了轻狂,三十岁的人生在细致和淡定里行走.      
        年过三十,依然喜欢纳兰容若的词,阅读全文>

发表于 @ 2009年02月27日 23:23:00|评论(loading...)|举报|收藏

转载 返朴归真,也谈"面向对象编程的几个原则"

面向对象编程的几个原则阅读全文>

发表于 @ 2009年02月27日 11:31:00|评论(loading...)|举报|收藏

2009年02月23日

转载 SpringSide 3 中的 Struts 2


在SpringSide 3 中,使用的MVC框架是Struts 2。Struts 2 向对于Struts 1 来说,具有相当多的优点,有很多人都说,用过Struts 2之后,再也不想看Struts 1了。然而,任何东西都有它的复杂性,Struts 2也不例外,SpringSide 3做了很多工作来简化Struts 2 的使用。

先来说说Struts 2的特点:
1、编写Action变得简单了,Action变成了简单的POJO,再也不用和ActionForm、ActionForward打交道了,返回的时候直接返回字符串即可。如果要访问Servlet API,则直接使用ServletActionContext类的静态方法。
2、Struts 2提供了插件机制,允许我们自己为它编写插件,当然,要我自己写是不现实的,但是面对别人写的琳琅满目的插件,我一样会昏头。再网上随便一搜,就可以发现40多种Struts 2插件。SpringSide 3选择的CodeBehind,就是一种Struts 2插件,它的目的是为了简化配置。
3、St阅读全文>

发表于 @ 2009年02月23日 11:33:00|评论(loading...)|举报|收藏

转载 Struts2的properties配置文件详解


 ### 指定加载struts2配置文件管理器,默认为org.apache.struts2.config.DefaultConfiguration
  ### 开发者可以自定义配置文件管理器,该类要实现Configuration接口,可以自动加载struts2配置文件。
  # struts.configuration=org.apache.struts2.config.DefaultConfiguration
  ### 设置默认的locale和字符编码
  # struts.locale=en_US
  struts.i18n.encoding=UTF-8
  ### 指定struts的工厂类
  # struts.objectFactory = spring
  ### 指定spring框架的装配模式
  ### 装配方式有: name, type, auto, and constructor (name 是默认装配模式)
  struts.objectFactory.阅读全文>

发表于 @ 2009年02月23日 10:48:00|评论(loading...)|举报|收藏

原创 Struts2防止表单重复提交

最近开发中涉及到了表单重复提次的问题,通过研究做个总结。阅读全文>

发表于 @ 2009年02月23日 09:24:00|评论(loading...)|举报|收藏

2009年02月20日

转载 使用hibernate实现树形结构无限级分类


转自 http://together.javaeye.com/blog/29482?page=2

在系统中,经常会用到无限级的树形结构分类,如组织机构管理、商品/地区分类等等。在以前的一个贴子:http://www.javaeye.com/topic/26987“复杂商品分类的表如何建立?”中,讨论过树形无级分类的实现方法。

一般无外采用两种方式,
  一是类似struts-menu(http://struts-menu.sourceforge.net)的XML文件管理方式,配置起来比较方便,但很难与系统中其它应用数据集成;
  二是使用数据库存储,定义父子关系。

在我们现在开发的一个产品中,使用hibernate实现了一套树形结构的处理方法,实现了树的基本操作,上溯、下溯、子节点的添加/移除和递归查找、对象关联等。简介如下:
■适用范围,具有树形特征的所有对象,如树形菜单、组织结构、信息分类、论坛主贴与回复等。
■完整源码下载(内置了hsql数据库及测试阅读全文>

发表于 @ 2009年02月20日 13:34:00|评论(loading...)|举报|收藏

2009年02月18日

原创 [JavaScript]关于div的隐藏

div的visibility可以控制div的显示和隐藏,但是隐藏后页面显示空白style="visibility: hidden;"document.getElementById("typediv1").style.visibility="hidden";//隐藏document.getElementById("typediv1").style.visibility="visible";//显示通过设置display属性可以使div隐藏后释放占用的页面空间,如下style="display: none;"document.getElementById("typediv1").style.display="none";//隐藏document.getElementById("typediv1").style.display="";//显示 阅读全文>

发表于 @ 2009年02月18日 11:03:00|评论(loading...)|举报|收藏

用户操作
[即时聊天] [发私信] [加为好友]
冯宏轩
订阅我的博客
XML聚合  FeedSky
订阅到鲜果
订阅到Google
订阅到抓虾
冯宏轩的公告
文章分类
收藏
JAVA EE
Senton的专栏
开源OA
存档
软件项目交易
Csdn Blog version 3.1a
Copyright © 冯宏轩