DBUtils.java import java.sql.Connection;import javax.naming.Context;import javax.naming.InitialContext;import javax.sql.DataSource;import javax.transaction.UserTransaction;public class DBUtils...{ private static final String DATASOURCE_JNDI_NAME = "DataSourceName"; private static final String USER_TRANSACTION_JNDI_NAME = "javax.transaction.UserTransaction"; public static DataSource getDataSource() throws Exception ...{ Context ctx = getContext(); return (DataSource) ctx.lookup(DATASOURCE_JNDI_NAME); } public static UserTransaction getUserTransaction() throws Exception ...{ Context ctx = getContext(); return (UserTransaction) ctx.lookup(USER_TRANSACTION_JNDI_NAME); } public static Context getContext() throws Exception ...{ return new InitialContext(); } public static Connection getConnection() throws Exception ...{ return getDataSource().getConnection(); }} 使用时 import java.sql.Connection;import java.sql.PreparedStatement;import java.sql.ResultSet;public void idTypeToDesc(int idType) /**//*将客户证件号码转换成中文描述,和数据库中对应*/ ...{ Connection cn = null; PreparedStatement st = null; ResultSet rset = null; String sqlstr; idType=100; try ...{ cn = DBUtils.getConnection(); st = cn.prepareStatement("select desc from TYPEDESC where desc_no=?"); st.setBigDecimal(1, idType); rset = st.executeQuery(); if ( rset.next() == true ) ...{ this.setIdTypeDesc(rset.getString("desc")); } else ...{ /**//*报错误*/ } } catch (Exception e) ...{ e.printStackTrace(); } finally ...{ try ...{ if ( rset!=null) rset.close(); }catch (Exception e)...{ } try ...{ if ( st!=null) st.close(); }catch (Exception e)...{ } try ...{ if ( cn!=null) cn.close(); }catch (Exception e)...{ } } } (在使用时还应根据需要修改方可实现,比如还要加入setIdTypeDesc()方法等)