在一个拥有单独业务层的应用中,业务层必须在返回之前,为web层“准备”好其所需的数据集合。这就意味着 业务层应该载入所有表现层/web层所需的数据,并将这些已实例化完毕的数据返回。通常,应用程序应该 为web层所需的每个集合调用Hibernate.initialize()(这个调用必须发生咱session关闭之前); 或者使用带有FETCH从句,或FetchMode.JOIN的Hibernate查询, 事先取得所有的数据集合。如果你在应用中使用了Command模式,代替Session Facade , 那么这项任务将会变得简单的多。
你也可以通过merge()或lock()方法,在访 ...
了解如何通过支持 OSGi 命令 install、ss、start、stop、headers、active、update 和 uninstall 弥补 IBM® Rational® Functional Tester 和基于 Eclipse 的产品的控制台之间的不足。本解决方案提供了一种有效的方法,用于当 Eclipse-AutoStart 头部(header)的清单文件(manifest)被升级到 Eclipse-LazyStart 时提供自动测试用例支持。本文展示了一些测试场景,以验证这种包管理机制是可行的。
当我们的测试团队升级到 Eclipse V3.2 后,我们很快发现在我们的测试 ...
C# 提供了 DataSet,可以将数据源中的数据读取到内存中,进行离线操作,然后再同步到数据源。同样,在 Java 中也提供了类似的实现,即 RowSet。javax.sql.rowset 包下,定义了五个不同的 RowSet 接口,供不同的场合使用。本文将分别对这五个 RowSet 的使用场合以及详尽用法进行介绍,并且描述使用中可能出现的问题,以提醒读者在实际使用时绕开这些问题。
RowSet 简介
javax.sql.rowset 自 JDK 1.4 引入,从 JDK 5.0 开始提供了参考实现。它主要包括 CachedRowSet,WebRowSet,FilteredRowSet,J ...
Javascript里的类构造;以前不是很常用到,Javascript1.5有更多特性,可惜IE不支持。自定义类:
//constructor;
function Alerter(aMsg,aTimes)
{
//properties;
this.mMsg=aMsg;
this.mTimes=aTimes;
//methods;
this.start=AlerterStart;
}
function AlerterStart()
{
var i;
for(i=0;i<this .mTimes;i++)
{
alert(th ...
- 01:44
- 浏览 (80)
- 评论 (0)
- 分类: JavaScript文章
jdbc程序的性能主要由两个因素决定,一是数据库本身的性质,另一个是与数据库相对独立的jdbc应用程序接口(api)的使用。这里说的是如何正确使用jdbc编程接口,以获得更好的性能。
jdbc主要优化有:
1.选择正确的jdbc驱动程序
2.Connention的优化:使用连接池来管理Connection对象
3.Statement的优化:使用批量更新等
4.Result的优化:正确的从数据库中get数据等
(1)选择正确的jdbc驱动程序:
1、jdbc-odbc 桥
2、本地api-部分 java驱动
3、jdbc网路协议-纯java驱动
4、jdbc本地协议 ...
一、jsp连接Oracle8/8i/9i数据库(用thin模式)
testoracle.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl ...
整理了一些影响性能的代码和优化方法,以后希望能陆续补充和优化
1. 如何使用Exception
Exception降低性能。一个异常抛出首先需要创建一个新的对象。Throwable接口中的构造器调用名为fillInStackTrace()的本地方法。这个方法负责巡检栈的整个框架来收集跟踪信息。这样无论何时有异常抛出,它要求虚拟机装载调用栈,因为一个新的对象在中部被创建。
异常应当仅用于有错误发生时,而不要控制流。
2. 不要两次初始化变量
Java通过调用独特的类构造器默认地初始化变量为一个已知的值。所有的对象被设置成null,integers (byte, short, int, long ...
工作中需要这样的功能,下面是实现代码,比如输入“朋友”,输出/u0b67/ucb53
public class UnicodeByteUtil {
public static void main(String[] args) {
UnicodeByteUtil instance = new UnicodeByteUtil();
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
String line;
try {
while ((line = reader.readLine( ...
用log4j来生成日志。然后将日志类加入到过滤器中。使得当用户访问时JSP或者Servlet时可以生成日志。便于调试。
下面是用log4j来的得到用户访问的地址并写道文件中。
package com.cmmi.tools;
import com.cmmi.tools.Cundate;
import Java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.util.*; // For Date class
import org.apache.log4j.*;
public cla ...
Java程序包含了大量的对象,我们需要了解它们是从哪里被访问的,变量存储于何处对程序的性能有显著的影响--尤其是某些需要被频繁访问的变量。
我们写一个Java类,在其内部方法中定义的局部变量或对象是存储在stack(堆栈)中的,且JVM是一种stack-based的,因此访问和操纵stack中的数据时性能最佳。而Java类的instance变量(这个类的field)和static变量是在constant pool(常量池)中存储和得到访问的。constant pool中保存了所有的符号引用(symbolic references),指向所有型别(types)、值域(field),以及每个型别 ...
- 浏览: 7559 次
- 性别:

- 来自: 武汉

- 详细资料
搜索本博客
我的相册
周星星
共 2 张
共 2 张
最新评论
-
系统管理软件中帐号和账号 ...
当然是帐号了呀! 根据中国文字的特点,“账”是和金钱相关的。 虽然二者现在认为一 ...
-- by yananay -
J2EE中 过滤器应用
-- by kaituozhe6666 -
面试官一道面试题 哲理人 ...
顶,再顶,~~~~。。。值得深思。。。没想到,有时也是思维定式的影响。。。如果把 ...
-- by jasongreen -
J2EE中 过滤器应用
写的很不错嘛。。~!!~
-- by zhanwc -
面试官一道面试题 哲理人 ...
..沉思中.....
-- by houzi






评论排行榜