jsp连接数据库的两种方式以及java.lang.ClassNotFoundException: com.mysql.jdbc.Driver异常解决方法(web项目中数据库的配置)

一、java.lang.ClassNotFoundException: com.mysql.jdbc.Driver异常解决方法

  • 由于在web项目中配置数据库和配置一般项目的数据库是不同的,所以导致一直是抛出异常或者是驱动异常。
  • 一般项目的数据库配置的位置如下图
    在这里插入图片描述
    如果在web项目中使用这样的配置是不行的。
  • web项目中的数据库配置
    1.找到自己的数据库驱动,我的是如下图:
    在这里插入图片描述
    2.将如上图的驱动复制,然后在粘贴到Tomcat的 lib 文件目录下,如下图:
    在这里插入图片描述
    这样web项目的数据库配置结束了,下边是两种jsp连接数据库并显示的样例。

二、介绍jsp两种连接数据库的例子(前提是有创建的数据库和表)
(1)使用类的形式连接到数据库

  • 创建一个类
package com.ll;

public class Furniture {
    private int id;
    private String name;
    private int price;
    private int num;
    private String dates;
    private String style;
    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getPrice() {
        return price;
    }

    public void setPrice(int price) {
        this.price = price;
    }

    public int  getNum() {
        return num;
    }

    public void setNum(int num) {
        this.num = num;
    }

    public String getDates() {
        return dates;
    }

    public void setDates(String dates) {
        this.dates = dates;
    }

    public String getStyle() {
        return style;
    }

    public void setStyle(String style) {
        this.style = style;
    }
}


  • 创建dao层连接数据库
package dao;
import com.Furniture;

import java.sql.*;
import java.util.ArrayList;

public class FurnitureDao {
    public ArrayList queryAllFurniture() throws Exception {
        //实现数据库的访问
        Connection connection=null;
        ArrayList fu=new ArrayList();
        //创建连接
        try {
            Class.forName("com.mysql.jdbc.Driver");
        }
        catch (ClassNotFoundException e)
        {
            System.out.println("1111驱动异常1111");
            e.printStackTrace();
        }
        //加载驱动
        String conStr="jdbc:mysql://localhost:3306/java12?characterEncoding=utf8&useSSL=false; DatabaseName=java12";
        //配置连接字符串
        String user="root";
        //配置用户名
        String password="root";
        //配置用户的访问密码
        connection= DriverManager.getConnection(conStr,user,password);
        //创建数据库连接对象
        //查询语句
        String sql = "select * from furnitures; ";
        Statement statement=connection.createStatement();
        //返回结果集
        ResultSet resultSet=statement.executeQuery(sql);
        while(resultSet.next())
        {
            Furniture furniture= new Furniture();
            furniture.setId(resultSet.getInt(1));
            furniture.setName(resultSet.getString(2));

            furniture.setPrice(resultSet.getInt(3));
            furniture.setNum(resultSet.getInt(4));
            furniture.setDates(resultSet.getString(5));
            furniture.setStyle(resultSet.getString(6));
            fu.add(furniture);
        }
        resultSet.close();
        statement.close();
        connection.close();
        return fu;
    }

}



  • 重写index.jsp

<%@ page contentType="text/html;charset=GB2312" language="java" %>
<%@page import="dao.FurnitureDao" %>
<%@ page import="java.util.ArrayList" %>
<%@ page import="com.Furniture" %>
<%@ page import="com.Furniture" %>
<html>
<head>
    <title>数据库连接显示界面</title>
    <style type="text/css">
        #body {
            background-color: #FFD2BD;
        }
    </style>
</head>
<body id="body">
<h1>家具信息如下图所示:</h1>
<%

    FurnitureDao furnDao = new FurnitureDao();
    ArrayList furn = furnDao.queryAllFurniture();
%>
<table border="1">
    <tr>
        <td>编号</td>
        <td>名称</td>
        <td>价格</td>
        <td>数量</td>
        <td>日期</td>
        <td>风格</td>
    </tr>

    <%
        for(int i=0;i<furn.size();i++) {
            Furniture f1 = (Furniture) furn.get(i);
    %>
    <tr>
        <td><%=f1.getId()%></td>
        <td><%=f1.getName()%></td>
        <td><%=f1.getPrice()%></td>
        <td><%=f1.getNum()%></td>
        <td><%=f1.getDates()%></td>
        <td><%=f1.getStyle()%></td>
    </tr>
    <%
        }
    %>
</table>
</body>
</html>
</body>
</html>
  • 页面显示
    在这里插入图片描述

(2)直接在index.jsp文件中连接数据库

  • 在jsp文件中直接连接数据库并且显示在页面上,文件可以写成下边这种形式:


<%@page import="java.sql.ResultSet"%>
<%@page import="java.sql.DriverManager"%>
<%@page import="java.sql.Statement"%>
 <%@page import="java.sql.Connection"%>
 <%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
 <html>
   <head>
         <meta http-equiv="Content-Type" content="text/html;charset=utf-8">
         <title>我的JSP index1.jsp开始页面</title>
       </head>

   <body>
    <%
     String drvStr="com.mysql.jdbc.Driver";
     String dataStr="jdbc:mysql://localhost:3306/java12?characterEncoding=utf8&amp;useSSL=false; DatabaseName=java12";
     String usernameStr="root";
     String passwordStr="root";
     String sqlStr="select * from furnitures";
     Connection conn=null;
     Statement stat=null;

     try{
         Class.forName(drvStr);
         conn=DriverManager.getConnection(dataStr,usernameStr,passwordStr);
         stat=conn.createStatement();
         ResultSet rs=stat.executeQuery(sqlStr);
         while(rs.next()){
         int rID=rs.getInt(1);
         String rUserName=rs.getString(2);
         int rPassWord=rs.getInt(3);
             out.print("ID:"+rID+" 名称:"+rUserName+" 价格:"+rPassWord+"<br>");
         }
     }catch(Exception e){
         out.print("读取失败");
         e.printStackTrace();
     }finally{
         if(stat!=null){
             stat.close();
         }
         if(conn!=null){
             conn.close();
         }
     }
     %>
 </body>
 </html>

  • 页面显示如下:
    在这里插入图片描述
  • 0
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值