JSP中通过JDBC连接数据库mysql

     MySQL是一个小型关系型数据库管理系统,开发者为瑞典MySQL AB公司。在2008年1月16号被Sun公司收购。而2009年,SUN又被Oracle收购。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内。这样就增加了速度并提高了灵活性。

    今天我写了一个例子,是Java Web 开发实战宝典里的,在JSP页面中通过JDBC连接数据库mysql,并将其中的表数据显示出来。

    过程中遇到了一些麻烦:

           Class.forName("com.mysql.jdbc.Driver").newInstance(); 
           Connection conn=DriverManager.getConnection(url,user,password);

     红红的Error啊,哎。

    后来查了一些资料,解决方法如下

    1. 下载了mysql-connector-java-5.1.18,这个是JDBC驱动包,将其中的mysql-connector-java-3.1.8-bin.jar复制到

     (1)C:\Program Files\Java

     (2)C:\Program Files\Java\jdk1.6.0_10\lib

     (3) D:\apache-tomcat-6.0.33\apache-tomcat-6.0.33\lib

    接着分别配置环境变量,将一些路径加入到classpath中:C:\Program Files\Java\mysql-connector-java-5.1.18.jar;C:\Program Files\Java\jdk1.6.0_10\lib\ mysql-connector-java-5.1.18.jar;

    我不知道为什么要这样做,但我确实这样做了,而且之后没有异样...

      2. 接着在我的JSP工程中build path,引入外部包,也就是刚才的 mysql-connector-java-5.1.18.jar;

    3. 在mysql中创建数据库db_database02,创建表books;

      程序代码为:

    <%@ page language="java" contentType="text/html; charset=GB18030"
    pageEncoding="GB18030"%>
<%@ page import="java.sql.*" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<!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=GB18030">
<title>Insert title here</title>
</head>
<body>
    <table border="1" align="center">
        <tr>
           <th>书号</th>
           <th>书名</th>
           <th>作者</th>
           <th>出版社</th>
           <th>单价</th>
           <th>出版日期</th>
        </tr>
        <%
          String diverName="com.mysql.jdbc.Driver";
          String url="jdbc:mysql://localhost:3306/db_database02";
          String user="root";
          String password="";   
          try{
           Class.forName("com.mysql.jdbc.Driver").newInstance(); 
           Connection conn=DriverManager.getConnection(url,user,password);
           Statement stmt=conn.createStatement();
           String sql="SELECT * FROM books";
           ResultSet rs=stmt.executeQuery(sql);
           while(rs.next()){  
        %> 
        <tr>
            <td><%=rs.getString("ISBN") %></td>
            <td><%=rs.getString("bookname") %></td>
            <td><%=rs.getString("writer") %></td>
            <td><%=rs.getString("publishing") %></td>
            <td><%=rs.getString("price") %></td>
            <td><%=rs.getString("date") %></td>
        </tr>
        <%
           }
          }catch(Exception ex){
           ex.printStackTrace();
          }
        %>
    </table>
</body>
</html>

     OK,弄了半天,虽然是基础,但也学到了一些东西,呵呵

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值