gpt4 book ai didi

java - 如何使用scriptlet提高从oracle 10g到jsp页面的数据传输速度

转载 作者:行者123 更新时间:2023-12-01 15:57:39 25 4
gpt4 key购买 nike

我已经将我的 jsp 页面与自动建议功能合并在一起,为了使自动建议发挥作用,它必须使用 scriplet 创建一个要建议的数据数组。

我的问题是,当我从oracle 10G导入数据时,完成数据导入到页面的时间约为20-40秒。

因此,有什么方法可以提高数据传输速度,我已经尝试过索引方法,但它确实有助于节省时间,而且表中的数据量约为 6K 。

oracle高手可以建议一下解决这个问题的方法吗..呵呵=D

这是我的程序示例:-

我的 autosuggest.java 中的函数,用于检索和过滤我的数据库中的数据。

    public List getVendorName() throws Exception
{
List temp=null;
Database db=null;
String tempVar, tempVar2;
boolean tempVar3, tempVar4;
int counter=0;
try {
db = PersistenceHelper.beginTransaction();
JDOQuery queryFund = new JDOQuery(db,Trader.class);
queryFund.setFilter(PersistenceHelper.getOrganizationFilter("organization"));
temp = new ArrayList();
QueryResults results = queryFund.execute();
while(results.hasMore())
{
Trader trader = (Trader) results.next();
tempVar = "\""+trader.getName()+"\"";
tempVar2 = trader.getTraderType();
tempVar3 = trader.getRegTraderStatus();
tempVar4 = trader.getMainTraderStatus();
if(!tempVar2.equalsIgnoreCase("c"))
{
if( (tempVar3 == true) && (tempVar4 == true))
{
tempVar = tempVar.replace("\n", "");
temp.add(counter,tempVar); counter++;
}
}
}
}
catch (Exception e) {
System.out.println(e);
}
finally{
PersistenceHelper.closeTransaction(db, false);
}
return temp;
}

在我的jsp页面中运行。从 autosuggest.java 检索数据;

    function getVendorName()
{
var temp = new Array();
<%
AutoSuggest as = new AutoSuggest();
List tempList = as.getVendorName();
for(int i=0; i<tempList.size(); i++)
{
Strinmg tempVar = (String) tempList.get(i);
%> temp[<%=i%>] = <%=tempVar%>; <%
}
%>
return temp;
}

最佳答案

首先要尝试的是在数据库查询中按交易者类型和状态进行过滤……而不是在 Java 端。您当前执行此操作的方式将需要从数据库中提取大量 Trader 对象。我预计它们中的大多数都会被您的 Java 代码丢弃。

关于java - 如何使用scriptlet提高从oracle 10g到jsp页面的数据传输速度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4789475/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com