我觉得是不是oracle的配置有问题,

解决方案 »

  1.   

    可是可以登陆到ORACLE上去的,请问怎么配置,本人不会用ORACLE。谢谢
      

  2.   

    1.
    拷贝 C:\oracle\ora90\jdbc\lib\classes12.jar 到 C:\Program Files\Apache Software Foundation\Tomcat 5.5\common\lib
    2.
    <%@ page contentType="text/html;charset=gb2312"%>
    <%@ page import="java.sql.*"%>
    <html>
    <body>
    <%
    Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
    String url="jdbc:oracle:thin:@localhost:1521:emirp";
    String user="system";
    String password="manager";
    Connection conn = DriverManager.getConnection(url,user,password);
    Statement stmt = conn.createStatement();
    sql = "select * from admin.test";
    ResultSet rs = stmt.executeQuery(sql);while (rs.next()) {%>
      第一个字段内容为:<%=rs.getString(1) %>
      第二个字段内容为:<%=rs.getString(2) %>
      <br>
    <%}%>
    <%out.print("数据库操作成功");%>
    <%rs.close();
      stmt.close();
      conn.close();
    %>
    </body>
    </html>
      

  3.   

    不好意思还是报错:
    javax.servlet.ServletException: Io 异常: The Network Adapter could not establish the connection
    org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
    org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
    org.apache.jsp._222_jsp._jspService(_222_jsp.java:105)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    root cause java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
    oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:180)
    oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:222)
    oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:335)
    oracle.jdbc.driver.OracleConnection.<init>(OracleConnection.java:361)
    oracle.jdbc.driver.OracleDriver.getConnectionInstance(OracleDriver.java:442)
    oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:321)
    java.sql.DriverManager.getConnection(DriverManager.java:512)
    java.sql.DriverManager.getConnection(DriverManager.java:171)
    org.apache.jsp._222_jsp._jspService(_222_jsp.java:62)
    org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:94)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802)
    org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:324)
    org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:292)
    org.apache.jasper.servlet.JspServlet.service(JspServlet.java:236)
    javax.servlet.http.HttpServlet.service(HttpServlet.java:802
      

  4.   

    不能连接到oracle,是通的么?用Pl/Sql能不能连?
      

  5.   

    快给分吧:是你的监听没有启来,或数据库没有起来c:lsnrctl
      start.........c:svrmgrl
    svrmgrl:connect internal/oracle
    svrmgrl:startup    
      

  6.   

    可能是Tomcat的端口8080和Oracle的监听端口冲突的问题,你把Tomcat的端口改为其它的试试。
    例如:server.xml中把端口改为8088或其它
    <Connector port="8088" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" connectionTimeout="20000" disableUploadTimeout="true" /> 
      

  7.   

    1.Connection conn = DriverManager.getConnection(url,user,password);
    可能url写错了
    2.可能监听没有启动
      

  8.   

    import java.io.*;
    import javax.servlet.*;
    import javax.servlet.http.*;import java.sql.*;
    import java.util.*;import javax.sql.*;
    import javax.naming.*;/**
     * @version  1.0
     * @author
     */
    public class Servlet01 extends HttpServlet {
    public void service(HttpServletRequest req, HttpServletResponse resp)
    throws ServletException, IOException{
    resp.setContentType("text/html");
    PrintWriter out = new PrintWriter(resp.getOutputStream());
    out.println("<html>");
    out.println("<head><title>dbServlet Output</title></head>");
    out.println("<body>");

    Connection conn = null;
    try
    {
       InitialContext ctx = new InitialContext();
       DataSource ds = (DataSource)ctx.lookup("jdbc/myweb");
        conn = ds.getConnection();
      
       Statement stmt = conn.createStatement();
       String sql = "select * from myweb.test";
       ResultSet rs = stmt.executeQuery(sql);
      
       out.println("<table border='1'>");
       out.println("<tr>");
       out.println("<td>");
       out.println("姓名");
       out.println("</td>");
       out.println("<td>");
      out.println("密码");
       out.println("</td>");
    out.println("<td>");
    out.println("电子邮件");
    out.println("</td>");
       out.println("</tr>");    while (rs.next()){

    out.println("<tr>");
    out.println("<td>");
    out.println(rs.getString(1));
    out.println("</td>");
    out.println("<td>");
    out.println(rs.getString(2));
    out.println("</td>");
    out.println("<td>");
    out.println(rs.getString(3));
    out.println("</td>");
    out.println("</tr>");
       }

    catch (Exception e) {
    out.println(e.getMessage());
    }
    out.println("</BODY>");
    out.println("</HTML>");
    out.close();
    }}
      

  9.   

    import java.io.PrintStream;
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    import java.util.Hashtable;
    import java.util.PropertyResourceBundle;
    import javax.naming.Context;
    import javax.naming.InitialContext;
    import javax.naming.NamingException;
    import javax.sql.DataSource;
    /**
     * 
     * 设置若干连接数据库的连接代码,创建并返回相应的连接.
     * <pre>
     * 调用方式:Connection conn = DBManager.getConnection();
     * 
     * 可提供的连接方式:
     *   1.字符串连接
     *   2.数据库连接池连接
     * 
     * 可根据需要调整CONNECTION_TYPE的值来选择获得所需连接.
     *</pre>
     * @author 马骥
     * @version 1.0 
     */
    public class DBManager
    { /**
     * 调用连接的类型(范围:1,2,3).
     * <br>1.通过字符串创建连接
     * <br>2.通过数据源创建连接
     * <br>3.通过连接池创建连接
     */
    private static final int CONNECTION_TYPE = 5; /**
     * 获取创建的连接.
     * @return Connection 连接
     */
    public static Connection getConnection()
    {
    switch (CONNECTION_TYPE)
    {
    case 1 :
    return getConnectionFromString();
    case 2 :
    return getConnectionFromSource();
    case 3 :
    return getConnectionFromLocale();
    case 4:
    return getConnectionFromExcel();
    case 5:
    return getConnectionFromMysql();
    default :
    return null;
    }
    } /**
     * 获取通过字符串创建的连接
     * @return Connection 连接
     */
    public static Connection getConnectionFromString()
    { /**此处根据字符串设置与数据库的连接*/
    String sUrl = "jdbc:oracle:thin:@120.0.0.1:1521:orcl2";
    String sUser = "EXAM_ADMIN";
    String sPwd = "oracleadmin"; try
    {
    Class.forName("oracle.jdbc.driver.OracleDriver");
    }
    catch (ClassNotFoundException e)
    {
    e.printStackTrace();
    System.err.println("Can't find database driver!");
    } try
    {
    Connection con = DriverManager.getConnection(sUrl, sUser, sPwd);
    return con;
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    System.err.println("Can't connection db!");
    } /**如果创建失败,则返回空连接*/
    return null;
    } /**
     * 获取通过连接池创建的连接
     * @return Connection 连接
     */
    public static Connection getConnectionFromSource()
    {
    try
    {
    InitialContext oCtx = new InitialContext(); /**此处根据上下文设置数据源*/
    DataSource oDS = (DataSource) oCtx.lookup("jdbc/exam"); return oDS.getConnection(); }
    catch (NamingException e)
    {
    System.out.println("数据源配置错误!");
    e.printStackTrace();
    }
    catch (SQLException e)
    {
    System.out.println("数据源配置错误!");
    e.printStackTrace();
    }
    /**如果创建失败,则返回空连接*/
    return null;
    }
    /**
     * 获取通过字符串创建的本地连接
     * @return Connection 连接
     */
    public static Connection getConnectionFromLocale()
    { /**此处根据字符串设置与数据库的连接*/
    String sUrl = "jdbc:oracle:thin:@120.0.0.49:1521:mawencai";
    String sUser = "SCOTT";
    String sPwd = "tiger"; try
    {
    Class.forName("oracle.jdbc.driver.OracleDriver");
    }
    catch (ClassNotFoundException e)
    {
    e.printStackTrace();
    System.err.println("Can't find database driver!");
    } try
    {
    Connection con = DriverManager.getConnection(sUrl, sUser, sPwd);
    return con;
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    System.err.println("Can't connection db!");
    } /**如果创建失败,则返回空连接*/
    return null;
    }

    /**
     * 从mysql获取连接
     * @return Connection
     */
    public static Connection getConnectionFromMysql()
    { /**此处根据字符串设置与数据库的连接*/
    String sUrl = "jdbc:mysql://localhost/exam?useUnicode=true&characterEncoding=utf-8";
    String sUser = "root";
    String sPwd = "123456"; try
    {
    Class.forName("org.gjt.mm.mysql.Driver");
    }
    catch (ClassNotFoundException e)
    {
    e.printStackTrace();
    System.err.println("Can't find database driver!");
    } try
    {
    Connection con = DriverManager.getConnection(sUrl, sUser, sPwd);
    return con;
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    System.err.println("Can't connection db!");
    } /**如果创建失败,则返回空连接*/
    return null;
    }

    /**
     * 获得Excel的数据
     * @return
     */
    public static Connection getConnectionFromExcel()
    {

    String url = "D:\\title.xls";
    try
    {
    Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
    }
    catch (ClassNotFoundException e)
    {
    e.printStackTrace();
    return null;
    }
    try
    {
    Connection con =
    DriverManager.getConnection(
    "jdbc:odbc:driver={Microsoft Excel Driver (*.xls)};DBQ="
    + url,
    "",
    "");
    return con;
    }
    catch (SQLException e)
    {
    e.printStackTrace();
    }

    return null;
    }
    }