基本信息
源码名称:ztree 树形导航例子
源码大小:8.44M
文件格式:.rar
开发语言:Java
更新时间:2015-10-09
友情提示:(无需注册或充值,赞助后即可获取资源下载链接)
嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300
本次赞助数额为: 2 元×
微信扫码支付:2 元
×
请留下您的邮箱,我们将在2小时内将文件发到您的邮箱
源码介绍
package com.test; import java.sql.CallableStatement; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import org.springframework.jdbc.support.nativejdbc.C3P0NativeJdbcExtractor; import oracle.jdbc.driver.OracleConnection; import oracle.jdbc.driver.OracleTypes; import oracle.sql.ARRAY; import oracle.sql.ArrayDescriptor; public class RoleDAO { /* * (non-Javadoc) * * @see com.whu.idao.baseinfo.impl.IRoleDAO#executeQuery(java.lang.String, * java.lang.Object[]) */ private ResultSet rs; private PreparedStatement statement; private CallableStatement cstmt; private Connection connection; private static final String ARRAY_VARCHAR = "ARRAY_VARCHAR"; public Connection getConnection() { try { Class.forName("oracle.jdbc.driver.OracleDriver"); connection = java.sql.DriverManager.getConnection( "jdbc:oracle:thin:@192.168.1.199:1521:orcl", "whufe", "whufe"); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (SQLException e) { e.printStackTrace(); } return connection; } public void closeConnection(Connection conn) { } public ArrayList<RoleModel> executeQuery(String sql) { ArrayList<RoleModel> list = new ArrayList<RoleModel>(); try { connection = this.getConnection(); statement = connection.prepareStatement(sql); rs = statement.executeQuery(); while (rs.next()) { RoleModel role = new RoleModel(); role.setRoleid(rs.getString("roleid")); role.setRolename(rs.getString("rolename")); role.setPerms(rs.getString("perms")); role.setRemark(rs.getString("remark")); list.add(role); } rs.close(); statement.close(); } catch (SQLException e) { e.printStackTrace(); } return list; } public ArrayList<PermModel> executeQueryPerm(String sql) { ArrayList<PermModel> list = new ArrayList<PermModel>(); try { connection = this.getConnection(); statement = connection.prepareStatement(sql); rs = statement.executeQuery(); while (rs.next()) { PermModel perm = new PermModel(); perm.setPermid(rs.getString("permid")); perm.setPermname(rs.getString("permname")); perm.setUrl(rs.getString("url")); perm.setParentid(rs.getString("parentid")); perm.setDescription(rs.getString("description")); perm.setIsdisabled(rs.getString("isdisabled")); list.add(perm); } } catch (SQLException e) { e.printStackTrace(); } return list; } public PermModel executeQueryPermModel(String sql) { PermModel perm = new PermModel(); try { connection = this.getConnection(); statement = connection.prepareStatement(sql); rs = statement.executeQuery(); if (rs.next()) { perm.setPermid(rs.getString("permid")); perm.setPermname(rs.getString("permname")); perm.setUrl(rs.getString("url")); perm.setParentid(rs.getString("parentid")); perm.setDescription(rs.getString("description")); perm.setIsdisabled(rs.getString("isdisabled")); } } catch (SQLException e) { e.printStackTrace(); } return perm; } /** * 获取权限树 JSON串 * * @param procedureName * 存储过程名称 * @param permIds * 传入存储过程的数组参数 * @return */ public String[] executeProcedureInitPermTree(String procName, String[] permIds) { String[] perms = null; connection = this.getConnection(); // 将C3P0连接转成Oracle连接 C3P0NativeJdbcExtractor cp30NativeJdbcExtractor = new C3P0NativeJdbcExtractor(); OracleConnection conn; try { conn = (OracleConnection) cp30NativeJdbcExtractor .getNativeConnection(connection); cstmt = conn.prepareCall(procName); ArrayDescriptor varchar2Desc = oracle.sql.ArrayDescriptor .createDescriptor(ARRAY_VARCHAR, conn); // 将字符串数组转换为oralce能识别的数组 ARRAY vArray = new ARRAY(varchar2Desc, conn, permIds); cstmt = conn.prepareCall(procName); // 返回值在java中是第一个,所以先注册输出参数 cstmt.registerOutParameter(1, OracleTypes.ARRAY, ARRAY_VARCHAR); cstmt.setArray(2, vArray); cstmt.execute(); ARRAY array = (ARRAY) cstmt.getArray(1); perms = (String[]) array.getArray(); cstmt.close(); connection.close(); } catch (SQLException e) { e.printStackTrace(); } return perms; } }