大家好,问题一个,能否请指教:是JSP的 JDBC-ODBC桥连接SQLSERVER的TOMCAT,SQL SERVER2000 FOR JDBC,SQL SERVER2000 SP3都已安装,ODBC设好了,CLASSPATH环境变量也设好了
代码是:
<%@ page import="java.sql.*"%>
<%@ page import="java.text.*"%>
<%@ page import="java.util.*"%>
<html>
<head><title>sdf</title></head>
<body>
sdfasdfadfsdfasdfadfsdfasdfadfsdfasdfadf
<% Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
Connection con=DriverManager.getConnection("jdbc:odbc:ggy","gg","gg");
Statement sql=con.createStatement();
ResultSet rs=sql.executeQuery("SELECT * FROM student");
%><%=rs.getString("sd")%>
<%
con.close();
%>
</body>
</html>但还是出错,提示是:
javax.servlet.ServletException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.text_jsp._jspService(text_jsp.java:160)
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)同样的设置我用驱动连接又成功,驱动代码是:
<%@ page contentType="text/html; charset=GBK" language="java" import="java.sql.*,java.io.*"%>
<html>
<body>
以下是从Ms sql server数据库读取的数据:<hr>
<table border=1>
<tr><td>id</td><td>书名</td><td>出版社</td><td>价格</td></tr>
<%! String trans(String chi)
{
String result = null;
byte temp [];
try
{
temp=chi.getBytes("iso-8859-1");
result = new String(temp);
}
catch(UnsupportedEncodingException e)
{
System.out.println (e.toString());
}
return result;
}
%>
<% Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=MJ","gg","gg");
Statement stmt=con.createStatement();
ResultSet rst=stmt.executeQuery("select * from student;");
while(rst.next())
{
out.println("<tr>");
out.println("<td>"+trans(rst.getString("sd"))+"</td>");
out.println("<td>"+trans(rst.getString("sdf"))+"</td>");
out.println("<td>"+trans(rst.getString("ae"))+"</td>");
out.println("</tr>");
}
rst.close();
stmt.close();
con.close();
%>
</table>
</body>
</html>
代码是:
<%@ page import="java.sql.*"%>
<%@ page import="java.text.*"%>
<%@ page import="java.util.*"%>
<html>
<head><title>sdf</title></head>
<body>
sdfasdfadfsdfasdfadfsdfasdfadfsdfasdfadf
<% Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
Connection con=DriverManager.getConnection("jdbc:odbc:ggy","gg","gg");
Statement sql=con.createStatement();
ResultSet rs=sql.executeQuery("SELECT * FROM student");
%><%=rs.getString("sd")%>
<%
con.close();
%>
</body>
</html>但还是出错,提示是:
javax.servlet.ServletException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
org.apache.jasper.runtime.PageContextImpl.doHandlePageException(PageContextImpl.java:825)
org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:758)
org.apache.jsp.text_jsp._jspService(text_jsp.java:160)
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)同样的设置我用驱动连接又成功,驱动代码是:
<%@ page contentType="text/html; charset=GBK" language="java" import="java.sql.*,java.io.*"%>
<html>
<body>
以下是从Ms sql server数据库读取的数据:<hr>
<table border=1>
<tr><td>id</td><td>书名</td><td>出版社</td><td>价格</td></tr>
<%! String trans(String chi)
{
String result = null;
byte temp [];
try
{
temp=chi.getBytes("iso-8859-1");
result = new String(temp);
}
catch(UnsupportedEncodingException e)
{
System.out.println (e.toString());
}
return result;
}
%>
<% Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
Connection con=java.sql.DriverManager.getConnection("jdbc:microsoft:sqlserver://127.0.0.1:1433;DatabaseName=MJ","gg","gg");
Statement stmt=con.createStatement();
ResultSet rst=stmt.executeQuery("select * from student;");
while(rst.next())
{
out.println("<tr>");
out.println("<td>"+trans(rst.getString("sd"))+"</td>");
out.println("<td>"+trans(rst.getString("sdf"))+"</td>");
out.println("<td>"+trans(rst.getString("ae"))+"</td>");
out.println("</tr>");
}
rst.close();
stmt.close();
con.close();
%>
</table>
</body>
</html>
解决方案 »
- Struts2 2.3.1 token Exception occurred during processing request: null
- [Struts] Cannot find ActionMappings or ActionFormBeans collection
- 简单的html问题
- 运行jsp时出现问题请教各位高手??
- 好急呀,做了快一个星期了都没有做出来:分页显示不出来,显示出了servlet的代码,怎么回事呀?
- 问个简单但是很紧急的jsp下载文件的问题。时间很紧,所以给高分。
- 请大家看看哪里错了,谢谢拉
- 请问赛羊CPU跑JBUILDER速度如何?
- 简单问题,数据格式
- 各位java老大,我是新手情帮忙。
- javabean 编译出错,请问哪里错了?
- 怎样控制用户直接在地址栏输入URL不能进入页面?
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
是两个不同的引包路径,你是把驱动包放在com.microsoft.jdbc.sqlserver下了
第一个当然找不到了