程序验证
编写如下servlet,然后把项目部署到GlassFish 上。
package com.gbase.glassfish;
import java.io.IOException;
GBase 8a 程序员手册JDBC 篇
南大通用数据技术股份有限公司
- 99 -
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.sql.DataSource;
public class TestServlet extends HttpServlet {
/**
*
*/
private static final long serialVersionUID = 1L;
/**
* The doGet method of the servlet.
*
*
This
method
is
called
when
a
form
has
its
tag
value
method
equals
to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
GBase 8a 程序员手册JDBC 篇
- 100 -
南大通用数据技术股份有限公司
Connection conn = null;
ResultSet rs = null;
Statement st = null;
try {
Context ctx = new InitialContext();
DataSource ds = (DataSource) ctx.lookup("gbase2");
conn = ds.getConnection();
st = conn.createStatement();
rs = st.executeQuery("select id,name,age,department
from emp");
while(rs.next()){
System.out.println("员工id:"+rs.getInt(1)+" 员
工姓名:"+rs.getString(2)+" 员工年龄:"+rs.getInt(3)+" 员工部门:
"+rs.getString(4));
}
} catch (Exception e) {
e.printStackTrace();
}finally{
if(rs != null){
try {
rs.close();
rs = null;
} catch (SQLException e) {
e.printStackTrace();
}
if(st != null){
try {
st.close();
st = null;
} catch (SQLException e) {
e.printStackTrace();
}
if(conn != null){
try {
conn.close();
conn = null;
} catch (SQLException e) {
GBase 8a 程序员手册JDBC 篇
南大通用数据技术股份有限公司
- 101 -
e.printStackTrace();
}
}
}
}
}
}
/**
* The doPost method of the servlet.
*
*
This
method
is
called
when
a
form
has
its
tag
value
method
equals
to post.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doPost(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
this.doGet(request, response);
}
}
web.xml 文件如下:
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
GBase 8a 程序员手册JDBC 篇
- 102 -
南大通用数据技术股份有限公司
component
component
部署成功后,启动glassfish 服务器,访问如下url:
http://localhost:8088/TestGBase/TestServlet
该测试用例会打印出数据库为test 表为emp 中的内容。
GBase 8a 程序员手册JDBC 篇
南大通用数据技术股份有限公司
- 103 -
6 第三方持久层使用