weblogic下JNDI及JDBC连接测试(weblogic环境)
JNDI的专业解释,大家自行去网络搜索吧,这里就不啰嗦了。
单纯从使用角度看,可以简称把它看成一个key-value的“哈希资源”容器。给定一个string类型的key,可以把任何类型的value,放入这个容器(通过bind/rebind方法);其它地方需要使用该资源时,根据key就能取出该资源(通过lookup方法)
JNDI使用示例:
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
|
package jmyang.weblogic; /** * <p>Title:JNDI示例(WebLogic环境) </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2012</p> * <p>Company:cnblogs </p> * @菩提下的杨过 * @version 1.0 */ import javax.naming.*; import java.util.Hashtable; public class JNDITest { static Context ctx = null; public static void test() { String key = "jmyang"; //先绑定 bind(key, "杨俊明"); //再取出来 String value = (String) lookUp(key); System.out.print(key + "=" + value); } /* *绑定 */ public static void bind(String name, String object) { Hashtable ht = new Hashtable(); ht.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory"); try { ctx = new InitialContext(ht); ctx.rebind(name, object); } catch (NamingException e) { e.printStackTrace(); } finally { try { ctx.close(); } catch (Exception e) { e.printStackTrace(); } } } /* * */ public static Object lookUp(String name) { Hashtable ht = new Hashtable(); ht.put(Context.INITIAL_CONTEXT_FACTORY, "weblogic.jndi.WLInitialContextFactory"); try { ctx = new InitialContext(ht); Object object = ctx.lookup(name); return object; } catch (Exception e) {} finally { try { ctx.close(); } catch (Exception e) { e.printStackTrace(); } } return null; } } |
上述代码执行完以后,也可能通过weblogic控制台,查看jndi树来验证:


JDBC数据源,实际上,也是使用JNDI服务来访问的,下面是JDBC示例代码:(必须先在weblogic中创建数据源)
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
package jmyang.weblogic; /** * <p>Title:JDBC示例(WebLogic环境) </p> * <p>Description: </p> * <p>Copyright: Copyright (c) 2012</p> * <p>Company:cnblogs </p> * @菩提下的杨过 * @version 1.0 */import java.sql.*; import javax.naming.*; import javax.sql.*; import java.util.Hashtable; public class JDBCTest { static final String webLogicINDIStr = "weblogic.jndi.WLInitialContextFactory"; public static void test() { Connection myConn = null; DataSource ds = null; Context ctx = null; Hashtable ht = new Hashtable(); ht.put(Context.INITIAL_CONTEXT_FACTORY, webLogicINDIStr); ht.put(Context.PROVIDER_URL, webLogicServer); try { ctx = new InitialContext(ht); ds = (javax.sql.DataSource) ctx.lookup("infoskysso"); //取得名为infoskysso的数据源(注:infoskysso要在weblogic中设置数据源) } catch (NamingException e) { e.printStackTrace(); } Statement myStatement = null; ResultSet myResultSet = null; try { myConn = ds.getConnection();//建立连接 myStatement = myConn.createStatement(); myResultSet = myStatement.executeQuery( "Select DEPTNO From DEPT where rownum<=10"); while (myResultSet.next()) { System.out.println("DEPTNO=" + myResultSet.getInt("DEPTNO")); } myResultSet.close(); } catch (SQLException e) { System.out.println("Error code = " + e.getErrorCode()); System.out.println("Error message = " + e.getMessage()); } finally { //关闭查询 if (myStatement != null) { try { myStatement.close(); } catch (SQLException e) { System.out.println("Error code = " + e.getErrorCode()); System.out.println("Error message = " + e.getMessage()); } } //关闭连接 if (myConn != null) { try { myConn.close(); } catch (SQLException e) { System.out.println("Error code = " + e.getErrorCode()); System.out.println("Error message = " + e.getMessage()); } } } } } |
附: weblogic中创建jdbc数据源的方法






weblogic下JNDI及JDBC连接测试(weblogic环境)的更多相关文章
- 在 windows 下搭建 IDEA + Spark 连接 Hive 的环境
为了开发测试方便,想直接在 IDEA 里运行 Spark 程序,可以连接 Hive,需不是打好包后,放到集群上去运行.主要配置工作如下: 1. 把集群环境中的 hive-core.xml, hdfs- ...
- 大数据系列之数据仓库Hive命令使用及JDBC连接
Hive系列博文,持续更新~~~ 大数据系列之数据仓库Hive原理 大数据系列之数据仓库Hive安装 大数据系列之数据仓库Hive中分区Partition如何使用 大数据系列之数据仓库Hive命令使用 ...
- jdbc:mysql:/// jdbc连接数据url简写方式
正常情况下我们写jdbc连接本地mysql数据库的时候通常是这样写 jdbc:mysql:localhost:3306/数据库名 下面就是要提到的简单的方法 jdbc:mysql:///数据库名
- linux环境下使用jmeter进行压力测试
linux环境下使用jmeter进行压力测试 linux环境下使用就meter进行压力测试: linux环境部署: 在Linux服务器先安装jdk: 2.以jdk-8u172-linux-x64.ta ...
- 帆软报表FineReport中数据连接之Weblogic配置JNDI连接
1. 制作报表的原理 在帆软报表FineReport设计器中先用JDBC连接到数据库,建立数据库连接,然后用SQL或者其他方法创建数据集,使用数据集制作报表,然后把建立的数据库连接从JDBC连接改成J ...
- J2EE 关于WebLogic下应用使用URL.openConnection获取连接返回 HttpsURLConnection与SOAPHttpsURLConnection的问题
J2EE 关于WebLogic下应用使用URL.openConnection获取连接返回 HttpsURLConnection与SOAPHttpsURLConnection的问题 2012年03月09 ...
- 测试jdbc连接下,mysql和mycat的吞吐性能
最近一个项目需要数据库有较大的吞吐量,因为项目要求的访问量和数据量较大,决定采用一个数据库中间件来对数据库进行管理.经过一番查询,决定使用阿里的一个开源项目-mycat.因为mycat基于mysql, ...
- WebLogic使用总结(三)——WebLogic配置JNDI数据源
一.在WebLogic新建针对Oracle数据库的JNDI数据源 进入weblogic管理控制台,此处是远程访问:http://192.168.1.144:7001/console 点击左侧[ 域结构 ...
- WebLogic配置JNDI数据源
一.什么是jndi数据源 JNDI是Java命名与目录接口(Java Naming and Directory Interface),在J2EE规范中是重要的规范之一. 我们平时开发web程序的时候, ...
随机推荐
- PHP 好用第三方库
PHP 好用第三方库 whoops 更好的php错误报告库 [github]:https://github.com/filp/whoops Whoops是一个易于处理和调试错误的PHP库 .它提供基于 ...
- 使用JSTL的taglib做if判断
背景:使用springmvc做RESTful风格的CRUD时 问题:使用JSTL的taglib做if判断,未能呈现判断后想要的内容 排查过程: 1.先确定了转发到了正确的jsp文件(在jsp页面中增加 ...
- ACM--移动桌子--贪心--HDOJ 1050--Moving Tables
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Problem Descript ...
- 20155217 2016-2017-2《java程序设计》第一周学习总结
20155217 2016-2017-2<java程序设计>第一周学习总结 浏览教材,根据自己的理解每章提出一个问题 java平台和java编程语言的区别? 怎样使用IDE来管理原始码与位 ...
- # 第二周课堂实践以及MyOD
第二周课堂实践以及MyOD 之前使用的虚拟机出现问题被我删掉了,开始学着使用Mac系统自带的终端.在课堂上出现了问题,询问王雄老师也没有解决,课下先使用了实验楼环境进行实验,后来又在Mac重新进行了尝 ...
- 20155301 《Java程序设计》实验一(Java开发环境的熟悉)实验报告
20155301 <Java程序设计>实验一(Java开发环境的熟悉)实验报告 一.实验内容及步骤 (一)使用JDK编译.运行简单的java程序 命令行下的程序开发 步骤:打开cmd,建立 ...
- 20155308 《Java程序设计》实验五 网络编程与安全
20155308 <Java程序设计>实验五 网络编程与安全 实验内容 任务一 两人一组结对编程: 参考http://www.cnblogs.com/rocedu/p/6766748.ht ...
- 20145207李祉昂《网络对抗技术》可选实验 shellcode注入与Return-to-libc攻击实验
1.0 实践内容 Return-to-libc攻击是一种特殊的缓冲区溢出攻击,通常用于攻击有“栈不可执行”保护措施的目标系统.本实验中我们放弃了让漏洞程序执行堆栈中的shellcode,将用syste ...
- 在windows上搭建redis集群(redis-cluster)(转载)
一 所需软件:Redis.Ruby语言运行环境.Redis的Ruby驱动redis-xxxx.gem.创建Redis集群的工具redis-trib.rb 二 安装配置redis redis下载地址 ...
- 《Flutter实战》开源电子书
<Flutter实战>开源电子书 <Flutter实战> 开源了,本书为 Flutter中文网开源电子书项目,本书系统介绍了Flutter技术的各个方面,本书属于原创书籍(并非 ...