Tomcat连接池出错:java.sql.SQLException: Cannot load JDBC driver class 'null'---

JCJC错别字检测-田春峰 JCJC错别字检测-田春峰 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
可以成功初始化Context,但是getConnection出错

java.sql.SQLException: Cannot load JDBC driver class 'null'

我的代码如下:

package SunShineSCM;

import javax.naming.*;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.sql.DataSource;
import javax.sql.*;
import java.sql.*;

public class Users{
String foo = "Not Connected";
int bar = -1;
public void init() {
foo += " 1";
try{
foo += " 2";
Context initCtx = new InitialContext();
Context ctx = (Context) initCtx.lookup("java:comp/env");
foo += " 3-----------------";
if(ctx == null )
{
foo += " 4------------ ";
throw new Exception(" the Context initialize is failure Boom - No Context");
}
// ds = (DataSource)envCtx.lookup("jdbc/EmployeeDB");
// con = ds.getConnection();
// DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/JNDISunShineSCM");
DataSource ds = (DataSource)ctx.lookup("jdbc/JNDISunShineSCM");

foo += " Begin Get DataSource ";
if (ds != null) {
foo = " the Context initialize is success ";
foo = "Begin get connection ";
Connection conn = ds.getConnection();
foo = "End get connection";
if(conn != null) {
foo = "Got Connection "+conn.toString();
Statement stmt = conn.createStatement();
ResultSet rst = stmt.executeQuery( "select * from users");
if(rst.next()) {
foo=rst.getString(1);
bar=rst.getInt(2);
}
conn.close();
foo =" Get DataSource Sucessed ";
}
}
}catch(Exception e) {
foo += " catch -----------------error = "+ e.toString() +"-----" + e.getMessage() ;
e.printStackTrace();
}
}
public String getFoo() { return foo; }
public int getBar() { return bar;}
}
请大家帮忙
...全文

相关推荐

基于Java+MySQL的学生学籍管理系统开发实践

在Java Web开发中,管理信息系统是最典型的应用场景之一。实现一个合格的学生学籍管理系统,需要从数据库设计到前端交互全链路思考。MySQL作为轻量级关系型数据库,与Java技术栈结合能够高效支撑学生信息、学籍异动、用户权限等核心数据的管理。系统采用Servlet+JSP+JDBC三层架构,通过规范的表结构设计和事务控制,保障数据一致性与查询效率。这类系统广泛应用于高校教务管理、毕业设计及课程设计,也是面试中Java基础、SQL优化与权限控制等高频考点的实战载体。本文从零拆解学籍管理系统的功能边界、数据库

weixin_34034670

VSCode配置JavaWeb开发环境:从零搭建轻量级IDE实战指南

Java Web开发是构建企业级应用的核心技术栈,其原理基于Servlet规范,通过处理HTTP请求与响应实现动态网页功能。这项技术的价值在于能够创建稳定、可扩展的服务器端应用程序,广泛应用于电商平台、内容管理系统和企业内部系统等场景。在开发工具选择上,Visual Studio Code凭借其轻量化和强大的插件生态,正成为传统IDE之外的高效替代方案。本指南将围绕**VSCode**和**JavaWeb**开发,详细讲解如何集成JDK、Maven、Tomcat和MySQL等关键组件,配置必要的扩展插件,并

weixin_30271335

JavaWeb成绩管理系统实战:从Servlet到MySQL的完整设计与实现

在Web应用开发领域,MVC架构是分离关注点、提升代码可维护性的经典设计模式。其核心原理是将应用分为模型(Model)、视图(View)和控制器(Controller)三层,模型负责业务逻辑与数据,视图负责展示,控制器负责调度。这一模式的技术价值在于为构建清晰、可扩展的中小型应用提供了坚实基础。在诸如教务管理、在线培训等实际应用场景中,处理学生成绩、课程信息等结构化数据是典型需求,这自然涉及到数据库设计与业务逻辑实现。本文聚焦于一个基于JavaWeb技术栈的成绩管理系统,详细探讨了如何使用Servlet作为

weixin_34268843

Java校友管理系统实战:从源码到答辩的完整教学指南

Java校友管理系统是高校计算机专业典型的教学实践项目,本质是基于Java语言、MVC架构与MySQL数据库构建的轻量级Web应用。其核心原理在于分层解耦——Model封装校友/院系等业务实体与DAO数据操作,View通过JSP或Thymeleaf渲染页面,Controller协调请求流转,从而帮助初学者建立面向对象、请求响应、前后端协作的基础工程认知。该系统虽不追求高并发,但具备真实可运行性,涵盖用户认证(BCrypt密码加密)、分页查询、外键约束、文件上传等关键技术点,广泛应用于《Java程序设计》《W

weixin_34356555

Hibernate SessionFactory 核心原理与生产级配置指南

SessionFactory 是 Hibernate 运行时的元数据中枢,承载映射定义、SQL 方言编译、二级缓存注册与连接适配等关键能力。其本质并非简单对象工厂,而是不可变、线程安全的运行时真相源——所有 Session 均为其影子副本。正确理解 getCurrentSession 与 openSession 的生命周期契约,是规避懒加载异常、连接泄漏和事务不一致的前提;而 openStatelessSession 则代表极致轻量的数据搬运范式。在高并发、微服务与批处理场景下,SessionFactory

AirZH??
评论 3
收藏 已收藏
分享
返回顶部
JCJC错别字检测-田春峰
JCJC错别字检测-田春峰 领域专家: 编程技术技术领域 领域专家: 编程技术技术领域
Web 开发 81,108 成员 341,721 内容