如题,传说中的JNDI让不少初学JAVA的童鞋望而止步,它有那么神奇吗?
让我们从一个小例子中体会。
Tomcat7.0+MySQL
tomcat\conf\context.xml中如下:
<Resource name="jdbc/spring" auth="Container"
description="Database for System Applications" driverClassName="com.mysql.jdbc.Driver"
url="jdbc:mysql://127.0.0.1:3306/spring" username="root" password="sa"
maxPoolSize="10" minPoolSize="3" acquireIncrement="1" initialPoolSize="3"
numHelperThreads="3" maxStatements="70" maxStatementsPerConnection="10"
type="javax.sql.DataSource" />
web.xml中:
<resource-ref>
<description>dateSource</description>
<res-ref-name>jdbc/spring</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>Container</res-auth>
</resource-ref>
<%@ page language="java" import="javax.naming.*,javax.sql.*,java.sql.*"
contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@taglib prefix="sql" uri="http://java.sun.com/jsp/jstl/sql"%>
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<sql:query var="rs" dataSource="jdbc/spring" sql="select * from person" />
<c:forEach var="r" items="${rs.rows }">
${r.name }
</c:forEach>
</body>
</html>
看起来很有兴趣哈。如此的容易。