怎么用jdbc连接mysql?

HITZXL 2003-03-31 08:26:29
我的设置是:win2000+tomcat+mysql,我想在jsp中连接mysql数据库,可不会,下载jdbc驱动程序,配置了classpath路径,但是不知道怎么测试,我想知道怎么算连上了,怎么测试?最好能给个小例子,一步步,详细些!1
...全文
232 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
HITZXL 2003-04-04
  • 打赏
  • 举报
回复
终于解决问题了,经过和身边还有网上各位高人得讨论,我终于解决这个问题了,是因为mysql的环境因为本机器有网卡在局域网中,因此Local host Name 为:(你自己电脑的名字),Local IP Address为你在局域网中的ip地址。因此在以上的例子中:String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1" 将变成:
String url ="jdbc:mysql://你的计算机名或者你的ip/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
这样问题就解决了
:)
爽!!
tchatcha 2003-04-03
  • 打赏
  • 举报
回复
帮你顶
HITZXL 2003-04-03
  • 打赏
  • 举报
回复
是呀,我用的就是和bombshell(水中鱼) 老兄一样的例子,出来那样的结果!!
郁闷
poordever 2003-04-03
  • 打赏
  • 举报
回复
个人觉得mysql jdbc 3.0.* stable 的版本有问题,还没2.*的好。
有访问错误的情况。
bombshell 2003-04-03
  • 打赏
  • 举报
回复
jsp连接MySQL数据库
testmysql.jsp如下:
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/softforum?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//testDB为你的数据库名
Connection conn= DriverManager.getConnection(url);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
HITZXL 2003-04-02
  • 打赏
  • 举报
回复
我的错误如下:怎么回事呀?


HTTP Status 500 -

--------------------------------------------------------------------------------

type Exception report

message

description The server encountered an internal error () that prevented it from fulfilling this request.

exception

org.apache.jasper.JasperException: org.gjt.mm.mysql.Driver
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:248)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
at java.lang.Thread.run(Thread.java:536)


root cause

javax.servlet.ServletException: org.gjt.mm.mysql.Driver
at org.apache.jasper.runtime.PageContextImpl.handlePageException(PageContextImpl.java:533)
at org.apache.jsp.TMPt62ycpsbx_jsp._jspService(TMPt62ycpsbx_jsp.java:78)
at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:137)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.jasper.servlet.JspServletWrapper.service(JspServletWrapper.java:204)
at org.apache.jasper.servlet.JspServlet.serviceJspFile(JspServlet.java:295)
at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:241)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:247)
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:193)
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:260)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:493)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2415)
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:180)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.java:170)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:172)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:641)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:174)
at org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invokeNext(StandardPipeline.java:643)
at org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:480)
at org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:995)
at org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:223)
at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:432)
at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConnection(Http11Protocol.java:386)
at org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:534)
at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:530)
at java.lang.Thread.run(Thread.java:536)



--------------------------------------------------------------------------------

Apache Tomcat/4.1.18
mdxk 2003-03-31
  • 打赏
  • 举报
回复
package jm.cn.comm.dbapc;
import java.util.*;
import java.sql.*;

import jm.cn.soft.cost.CodeInfo;
import jm.cn.comm.mesg.MesgBox;
import jm.cn.comm.unil.*;
import jm.cn.comm.Item;
import org.gjt.mm.mysql.Driver;

public class DbConntion
{
private static final String CLASS_NAME = "DbConntion";
//DB Driver
private static final String DB_DRIVER = "org.gjt.mm.mysql.Driver";
//Db Url
private static final String DB_URL = "jdbc:mysql://192.72.36.57:3306/mdxk";
//UserName
private static final String DB_USER = "root";
//Password
private static final String DB_PWS = "";

private static Connection Conn = null;
private static Statement Stmt = null;

private static ResultSet reruData = null;
private static String psUSql = null;

public DbConntion()
{
}

public static synchronized FlexFolder mDBaseSelect ( String[] asDbuse )
throws ExceptionReporter
{


// new String(asDbuse[i].getBytes("GB2312"),"ISO-8859-1");

final String sMethod = "DBaseSelect";
String temp = "";
FlexFolder pfDataOut = new FlexFolder();
Flex2DArray pfFlex = new Flex2DArray();
boolean pbresult = true;
try
{
if ( !mDbselU(asDbuse) )
{
pbresult = false;
}
else
{
//data select
if ( !mDbconnSelect(psUSql) )
{
pbresult = false;
}
else
{
while( reruData.next() )
{
for ( int i =1; i <= reruData.getMetaData().getColumnCount(); i ++ )
{
temp = reruData.getString(i);
//System.out.print("\n"+temp+" "+i);
pfFlex.addItem( (reruData.getMetaData().getColumnName(i)
).toUpperCase()
,temp);
// ,new String(temp.getBytes("GB2312"),"ISO-8859-1"));
}
pfFlex.nextRow();
}
if ( !mDbClose() || pfFlex.isEmpty() )
{
pbresult = false;
}
}
}
pfDataOut.addItem(Item.IFKEY_RESULT,pbresult);
pfDataOut.addItem(Item.IFKEY_RETURN,pfFlex);
return pfDataOut;
}
catch (ExceptionReporter ex)
{
// 椺奜傪揱斃偡傞
ex.updateSource(CLASS_NAME + "." + sMethod);
throw ex;
}
catch (Exception ex)
{
// 椺奜傪憲弌偡傞
throw new ExceptionReporter(CLASS_NAME + "." + sMethod, ex);
}
}

public static synchronized FlexFolder mDBaseOthers ( String[] asDbuse )
throws ExceptionReporter
{
final String sMethod = "mDBaseInsert";
FlexFolder pfDataOut = new FlexFolder();
String temp = "";
boolean pbresult = true;
try
{
if ( !mDbselU(asDbuse) )
{
pbresult = false;
}
else
{
int dnresu = mDbothU(psUSql) ;
if ( !mDBcommit() || !mDbClose() )
{
pbresult = false;
}
pfDataOut.addItem(Item.IFKEY_RETURN,dnresu);
}
pfDataOut.addItem(Item.IFKEY_RESULT,pbresult);
}
catch (ExceptionReporter ex)
{
// 椺奜傪揱斃偡傞
ex.updateSource(CLASS_NAME + "." + sMethod);
throw ex;
}
catch (Exception ex)
{
// 椺奜傪憲弌偡傞
throw new ExceptionReporter(CLASS_NAME + "." + sMethod, ex);
}
return pfDataOut;
}


private static synchronized boolean mDbconnSelect( String psSql )
throws Exception
{
try
{
Class.forName(DB_DRIVER).newInstance();
Conn = DriverManager.getConnection(DB_URL,DB_USER,DB_PWS);
Conn.setAutoCommit(false);
Stmt = Conn.createStatement();
reruData = Stmt.executeQuery(psSql);
}
catch (Exception ex)
{
throw ex;
}
return true;
}

private static synchronized int mDbothU( String psSql )
throws Exception
{
try
{
Class.forName(DB_DRIVER).newInstance();
Conn = DriverManager.getConnection(DB_URL,DB_USER,DB_PWS);
Conn.setAutoCommit(false);
Stmt = Conn.createStatement();
return Stmt.executeUpdate(psSql);
}
catch (Exception ex)
{
throw ex;
}
}

private static synchronized boolean mDBcommit()
{
try
{
Conn.commit();
}
catch( SQLException e )
{
return false;
}
return true;
}

private static synchronized boolean mDBrollback()
{
try
{
Conn.rollback();
}
catch( SQLException e )
{
return false;
}
return true;
}

private static synchronized boolean mDbClose()
{
try
{
reruData.close();
Conn.close();
Stmt.close();
}
catch( SQLException e )
{
return false;
}
return true;
}
}

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧