scriptor(buildAccountDescriptor());
addDescriptor(buildPhoneDescriptor());
…….
}
基于J2EE的电子商务网站实例解析(4)
时间:2010-12-11 天极 冯杰
·applyLogin方法
它处理客户程序登陆数据,并配置一些存取数据库的参数,比如缓冲池等。 代码示范为:
public void applyLogin() {
//配置数据库访问参数
DatabaseLogin login = new DatabaseLogin();
login.usePlatform(new oracle.toplink.oraclespecific.Oracle9Platform());
login.setDriverClassName("oracle.jdbc.driver.OracleDriver"); login.setConnectionString(ApplicationConfiguration.get (ConfigurationConstants.DB_CON_STR)); login.setUserName (ApplicationConfiguration.get(ConfigurationConstants.DB_USER)); login.setPassword(ApplicationConfiguration.get (ConfigurationConstants.DB_ENCRYPTED_PASSWORD));
// 设置数据库参数
login.setUsesNativeSequencing(true);
login.setSequencePreallocationSize(1);
login.setShouldBindAllParameters(false);
login.setShouldCacheAllStatements(false);
login.setUsesByteArrayBinding(true);
login.setUsesStringBinding(false);
if (login.shouldUseByteArrayBinding()) { // Can only be used with binding.
login.setUsesStreamsForBinding(false);
}
login.setShouldForceFieldNamesToUpperCase(false);
login.setShouldOptimizeDataConversion(true);
login.setShouldTrimStrings(true);
login.setUsesBatchWriting(false);
if (login.shouldUseBatchWriting()) { // Can only be used with batch writing.
login.setUsesJDBCBatchWriting(true);
}
login.setUsesExternalConnectionPooling(false);
login.setUsesExternalTransactionController(false);
setLogin(login);
}
建立映射关系
Toplink通过类似于builXXXDescriptor方法来建立Java对象与数据库表字段 之间的对应关系,示范代码如下:
public Descriptor buildAccountDescriptor() {
Descriptor descriptor = new Descriptor();
descriptor.descriptorIsAggregate();
descriptor.setJavaClass (com.routease.db.vo.user.Account.class);
descriptor.setAlias("Account");
// Mappings.
//建立Account 对象的deposit属性与数据库表的DEPOSIT字段的对应关系
DirectToFieldMapping depositMapping = new DirectToFieldMapping ();
depositMapping.setAttributeName("deposit");
depositMapping.setFieldName("DEPOSIT");
descriptor.addMapping(depositMapping);
…
return descriptor;
}
基于J2EE的电子商务网站实例解析(5)
时间:2010-12-11 天极 冯杰
3.定制后台Action
根据MVC的精神,View和Model设计好之后应该是将开发重点转移到控制器的 开发上。控制器是根据用户行为进行响应的处理模块,比如用户通过首页的搜索 条对服务信息进行检索,这时,web服务中的SearchToTradeEntityAction(对应 SearchToTradeEntityAction.java文件)会对用户这一动作进行处理。以下对这 一Action进行详细分析:
package com.routease.action.totradeentity;
import java.util.Collection;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.PropertyUtils;
import org.apache.commons.lang.StringUtils;
import org.apache.struts.
|