javaweb JDBC 数据库连接mysql 配置代码 (直接可用)

javaweb项目用JDBC操作mysql数据库-增删改查 文章目录一、数据表二、项目结构三、JDBC操作步骤四、代码5、运行结果 一、数据表 -- 创建数据库 create database book; use book; -- 创建图书信息表 create table bookinfo( book_id int primary key auto_increment, book_name varchar(20) not null, price floa... 阅读详情

1、加入Mysql 的JDBC架包
百度网盘下载链接 : mysql JDBC架包


2、数据库配置文件 db.properties

username=root
userpwd=123456
dbtype=mysql
dburl=jdbc:mysql://localhost:3306/gj
dbdriver=com.mysql.jdbc.Driver

3、数据库配置文件读取ReadProperties.java

package conndb;
import java.io.IOException;
import java.io.InputStream;
import java.util.Properties;
//读取数据库配置文件
public class ReadProperties {
private String username;
private String userpwd;
private String dbtype;
private String dburl;
private String dbdriver;
private static ReadProperties readproperties = null;
// 单例
private ReadProperties() {
readpropertiesfile();
}
// 锁防止同时进入,只new一次,只读一次配置文件
public static synchronized ReadProperties instance() {
if (readproperties == null) {
readproperties = new ReadProperties();
}
return readproperties;
}
// 读取文件
private void readpropertiesfile() {
Properties properties = new Properties();
try {
// 获取配置文件的二进制流
InputStream inStream = getClass().getResourceAsStream(
"/db.properties");
// 加载
properties.load(inStream);
// 依次读取
username = properties.getProperty("username");
userpwd = properties.getProperty("userpwd");
dbtype = properties.getProperty("dbtype");
dburl = properties.getProperty("dburl");
dbdriver = properties.getProperty("dbdriver");
} catch (IOException e) {
e.printStackTrace();
}
}
public String getUsername() {
return username;
}
public void setUsername(String username) {
this.username = username;
}
public String getUserpwd() {
return userpwd;
}
public void setUserpwd(String userpwd) {
this.userpwd = userpwd;
}
public String getDbtype() {
return dbtype;
}
public void setDbtype(String dbtype) {
this.dbtype = dbtype;
}
public String getDburl() {
return dburl;
}
public void setDburl(String dburl) {
this.dburl = dburl;
}
public String getDbdriver() {
return dbdriver;
}
public void setDbdriver(String dbdriver) {
this.dbdriver = dbdriver;
}
public static ReadProperties getReadproperties() {
return readproperties;
}
public static void setReadproperties(ReadProperties readproperties) {
ReadProperties.readproperties = readproperties;
}
}

4、数据库连接工厂类 ConnectionFactory.java

package conndb;
import java.sql.Connection;
import java.sql.DriverManager;
//数据库连接工厂,封装数据库从读取配置文件到连接方法
public class ConnectionFactory {
private static final ConnectionFactory factory = new ConnectionFactory();
Connection conn;
private ConnectionFactory() {
}
public static ConnectionFactory getInstance() {
return factory;
}
// 数据库连接方法
public Connection makeConnection() {
ReadProperties rp = ReadProperties.instance();
try {
Class.forName(rp.getDbdriver());
conn = DriverManager.getConnection(rp.getDburl(), rp.getUsername(),
rp.getUserpwd());
} catch (Exception e) {
e.printStackTrace();
}
return conn;
}
}

5、数据基础操作封装 BaseDao.java
一共封装成两个方法
1. num(sql,param) :只进行增删改操作 ,用的是 executeUpdate(),返回值为影响的记录条数int
2. rs(sql,param) :只进行查询操作,用的是executeQuery(),返回值为结果集ResultSet

package conndb;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
//basedao封装了对数据库操作可以返回的两种值,一个是有具体数据集合的,一种是直接判断有没有成功操作的,这样可以节约很多冗余代码
public class BaseDao {
Connection conn = null;
PreparedStatement ps;
// 返回值为结果集的数据库操作方法rs
public ResultSet rs(String sql, String[] param) {
conn = ConnectionFactory.getInstance().makeConnection();
try {
if (conn == null) {
throw new SQLException("conn is null");
}
ps = conn.prepareStatement(sql);
if (param != null) {
for (int i = 0; i < param.length; i++) {
ps.setString(i + 1, param[i]);
}
}
return ps.executeQuery();
} catch (Exception e) {
e.printStackTrace();
try {
conn.rollback();// 数据库事务回滚
} catch (Exception e2) {
e2.printStackTrace();
}
}
return null;
}
// 不存在返回具体值的数据库操作,用int做返回值判断影响数据的的行数,即做增改删操作影响的行数
// 用于执行 INSERT、UPDATE 或 DELETE 语句以及 SQL DDL(数据定义语言)语句
public int num(String sql, String[] param) {
try {
conn = ConnectionFactory.getInstance().makeConnection();
if (conn == null) {
throw new SQLException("conn is null");
}
ps = conn.prepareStatement(sql);
if (param != null) {
for (int i = 0; i < param.length; i++) {
ps.setString(i + 1, param[i]);
}
}
return ps.executeUpdate();
} catch (Exception e) {
e.printStackTrace();
try {
conn.rollback();// 数据库事务回滚
} catch (Exception e2) {
e2.printStackTrace();
}
}
return -1;
}
// 关闭数据库连接
public void closeall() {
try {
if (ps != null) {
ps.close();
ps = null;
}
if (conn != null) {
conn.close();
conn = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}

(本代码来自一些教程学习后自己进行的总结整理,直接可用)

JavaWeb中JDBC连接MySQL数据库实战详解 JDBC(Java Database Connectivity)是Java平台中用于执行SQL语句的标准API,它为数据库访问提供了统一的接口,屏蔽了不同数据库厂商之间的差异。其核心由四大组件构成:Driver接口DriverManager类Connection接口Statement接口和ResultSet接口,它们协同完成驱动注册、连接建立、SQL执行与结果处理的完整流程。// JDBC工作流程典型代码片段。 阅读详情

相关推荐

嵌入式硬件实战:RC、LC与RL滤波电路的设计与选型指南

本文深入探讨了嵌入式系统中RC、LC与RL滤波电路的设计与选型策略。通过生活化比喻和实战案例,详细解析了三种滤波电路的工作原理、应用场景及工程注意事项,帮助工程师根据电流大小、频率特征和成本预算选择最优方案,提升嵌入式硬件设计的稳定性和抗干扰能力。

kiwi8的博客 284

Intellij快速入门之JavaWeb项目的mysql连接池的基本配置以及所需文件资源的安装

MySQL安装简单并且免费,对于中小型项目来说完全够用,对于我们平时学习或者跟自己的朋友一起做些小项目来说很是友好。并且还有附带图形化操作界面,对于数据库学习的新手或者学的很浅,操作起来也很简单。下面让我们来看看如何在项目中配置吧。 首先先下载jar依赖包 1.javaweb依赖包 百度网盘:链接:https://pan.baidu.com/s/1vlgufQEdi7y8kieEACL5WA?pwd=abcd 提取码:abcd 2...

qq_40796430的博客 763

避开模板匹配的坑:OpenCVSharp中边缘梯度算法的优化实践

本文深入探讨了OpenCVSharp中边缘梯度算法在模板匹配中的优化实践,解决了传统方法在尺度变化、角度旋转和光照差异下的局限性。通过Sobel算子提取边缘梯度特征,结合轮廓检测和多尺度匹配策略,显著提升了匹配的鲁棒性和准确性。文章还分享了并行计算、内存访问优化等实战技巧,适用于工业检测和自动化识别场景。

http9protocoller的博客 198

MySQL-properties文件的创建和编写

开发中获得连接的四个参数(uri,端口号,用户名,密码)通常到存在配置文件中,方便后期维护,程序如果需要更换数据库,只需要更改配置文件就行, 在src目录下新建文件,后缀名为properties,文件名随意. 一行一组数据,格式为"key=value".文本注释信息可以用"#"来注释。 例:data.properties   driverClass=com.mysql.jdbc.Driv...

迷失的星星的博客 2564

【软件使用】Calibre部分提参的实战技巧与常见问题解析

本文深入解析Calibre部分提参(Partial Extraction)的实战技巧与常见问题,涵盖PEX、hcell和xcell文件的高级应用。通过实际案例展示如何提升电路仿真效率,解决时钟信号失真等复杂问题,并提供版图设计中的防坑指南,助力芯片设计工程师优化工作流程。

weixin_28717431的博客 162

CS5511芯片实战:如何用DP转LVDS驱动高刷显示器(附配置代码)

本文详细解析了CS5511芯片在DP转LVDS高刷显示器驱动方案中的应用,包括核心架构、寄存器配置、时序优化及典型问题排查。通过实战案例和配置代码,帮助开发者快速实现120Hz高刷新率显示,特别适合医疗影像和工业HMI等严苛场景。

m3n5b7v8c9x的博客 1075

JBDC中mysql.properties的创建和使用方法

JDBC中使用mysql.properties是为了便于项目中数据库的用户名密码等数据的更改和维护 。 1.创建mysql.properties文件 在项目中创建目录config,config中新建一个文件: mysql.properties,名字随意,但后缀必须是properties。 2.创建好后在里面写入数据库连接数据: driver = com.mysql.cj.jdbc.Driver url = jdbc:mysql://localhost:3306/temp?useUnicode=

weixin_50826529的博客 1815

LeRobot — 基于 PyTorch 的真实世界机器人学习框架(一)- 核心框架模块解析

LeRobot 是一个开源的机器人学习框架,由 Hugging Face 开发,旨在降低机器人学的准入门槛。该框架提供完整的机器学习流程支持,包括数据采集、训练、评估和部署。核心模块涵盖数据集标准化、策略算法、硬件抽象和强化学习组件,采用模块化设计实现灵活扩展。通过集成 Hugging Face Hub,用户可以轻松共享数据集和预训练模型。LeRobot 特别注重真实世界的机器人应用,支持多种前沿算法如模仿学习、视觉语言动作模型等,并提供统一的硬件接口和仿真环境适配。

熊猫小妖的AI世界 171

mysql web访问配置文件_Java读取WEB-INF目录下的properties配置文件

如何在Java代码中读取WEB-INF目录下的properties配置文件,下文给出了一个解决方案。我们习惯将一些配置信息写在配置文件中,比如将数据库的配置信息URL、User和Password写在配置文件中,这样部署系统的时候,不需要修改代码,而只需要修改配置文件即可。我将配置文件放在MyEClipse工程文件夹下的WEB-INF目录,在Java代码中读取配置文件的代码是这样的:String p...

weixin_29745919的博客 466

2024-12月js逆向案例-sensor-data之vmp字段之akamai_2/3.0-(下)

akamai2/3的vmp字段逆向分析

十一姐的博客 3145

python代码实现了一个基于图注意力网络(GAT)和长短期记忆网络(LSTM)的股票成交量预测模型

自定义数据集类:定义了类,继承自。该类用于生成股票数据的时间序列样本,每个样本包含一个长度为seq_length的时间序列和对应的目标成交量。数据加载器:使用DataLoader对数据集进行批量加载,设置批量大小为 64,并开启数据打乱功能。GAT - LSTM 模型:定义了GAT_LSTM类,继承自。该模型结合了 GAT 和 LSTM 两种神经网络:GAT 部分:使用GATConv处理全局图特征,捕获股票之间的相互关系。LSTM 部分:使用nn.LSTM处理时间序列数据,捕捉时间序列的动态变化。

huanghm88的专栏 424

Java Web项目中使用Java代码连接数据库(MySQL)教程

使用IDEA在Java Web项目中使用Java代码连接数据库(MySQL)是JavaWeb中最基础的操作。

qq_63055262的博客 6831

PyTorch实战(12)——图神经网络(Graph Neural Network,GNN)

在本节中,我们首先简要概述了图神经网络 (Graph Neural Network, GNN) 的核心概念与应用,GNN 通过构建计算图分层聚合节点特征,解决了传统神经网络处理图数据时的四大局限:信息深度不足、节点顺序敏感、动态扩展困难和特征稀疏性问题。了解了不同类型的图学习任务(包括节点级、边级和图级三大类)。接着我们研究了几种流行的 GNN 模型,包括:GCN (通过权重共享实现图卷积)、GAT (引入注意力机制区分邻居重要性)和 GraphSAGE (采用随机采样应对大规模图)。

盼小辉丶的博客 3653

javaweb项目用JDBC连接mysql数据库

文章目录一、需求二、项目结构三、步骤1、创建数据库、数据表,插入数据2、创建javaweb项目3、下载驱动包4、导入驱动包5、创建包,创建类6、程序7、运行结果 一、需求 创建一个javaweb项目,读取bookinfo表中的数据,并输出到控制台 二、项目结构 JDBC.java用来写主程序 mysql-connector-java-5.1.47.jar是java连接mysql需要导入的jar包...

龟的小号的博客 6万+

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

JavaWeb连接MySQL数据库最细图解

JavaWeb连接MySQL数据库的方式有很多,首先我们讲解JDBC的配置方法 一、JDBC的配置方法 1、什么是JDBC 什么是JDBC嘞?JDBC代表Java数据库连接(JavaDatabaseConnectivity),它是用于Java编程语言和数据库之间的数据库无关连接的标准Java API, 换句话说:JDBC是用于在Java语言编程中与数据库连接的API。 JDBC库包括通常与数据库使用相关,如下面提到的每个任务的API - 连接到数据库 创建SQL或MySQL语句 在数据库..

m0_67261762的博客 3万+

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

在eclipse环境下javaweb连接mysql数据库

一、javaweb连接mysql数据库的准备工作 1.下载jdbc驱动程序: 在jdk中没有包含数据库的驱动程序,所以使用jdbc操作数据库时,需要下载数据库厂商提供的驱动程序,并导入到开发环境中。我们采用的是j连接mysql数据库。 1)jdbc驱动程序下载地址:https://dev.mysql.com.downloads/connector/j/ 2)导入到开发程序中 本人使用的jdbc驱动程序是:mysql-connector-java-5.0.5-bin.jar,首先将jdbc驱动程序粘贴复制到T

一个不知名的程序员 1万+

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

零基础入门JAVAweb——数据库连接MySQL篇

🧑作者简介 📮首页:​​​​​​小罗のdiary的博客_优快云博客-单片机原理,java基本常识领域博主 🕴职业:👨‍🎓在校大学生 😍爱好:📝写博客,🎧听歌,🔌学习单片机,💻java,🏃跑步 🏆擅长:单片机的基本原理,java基本原理 🎉🎉欢迎来首页阅读我的博客🎉🎉 📖主要内容 💦💦💦💦💦💦💦💦💦💦💦 💦💦了解JDBC的概念及常用接口,掌💦💦 💦💦握利用JDBC连接MySQL的能力,💦💦 💦💦学会数据库与JAVAweb的基本应用💦💦 💦💦💦💦💦💦💦💦💦💦💦 📖目录 ❤..

m0_57209839的博客 1万+

JavaWeb | JDBC概述及IDEA连接MySQL

JDBC概述以及IDEA连接MySQL数据库

Alita233_的博客 2513

使用IDEA配置Tomcat和连接MySQL数据库(JDBC)详细步骤

IDEA配置Tomcat 1,点击Run—EDit Configurations… 2.点击左侧“+”号,找到Tomcat Server—Local(若是没有找到Tomcat Server 可以点击最后一行 34 items more) 3.在Tomcat Server -> local-> Server -> Application server项目下,点击 Configuration ,找到本地 Tomcat 服务器,再点击 OK按钮。 至此,IntelliJ IDEA配置Tom

yxmoar的博客 1万+

JavaWeb:用JDBC操作数据库

JDBC系列阅读 JavaWeb:用JDBC操作数据库 JavaWeb:JDBC之事务 JavaWeb:JDBC之数据库连接池 1. 什么是JDBCJDBC的全称是Java数据库连接(Java Database Connectivity),它是一套用于执行SQL语句的Java API。应用程序可通过这套API连接到关系型数据库,并使用SQL语句来完成对数据库中数据的查询、新增、更新和删除等操作。说白

JackChan 2万+

JavaWeb JSP通过JDBC访问数据库(MySQL为例)

文章目录1、JDBC概述1)JDBC简介2)JDBC包含的包3)JDBC执行一般过程4)JDBC与数据库的连接方式2、连接MySQL数据库1)导入jar包2)注册驱动3)获取数据库连接对象4)Connection类讲解5)Statement 类:执行 sql 对象6)ResultSet类:结果集对象7)释放相关资源8)实例呈现数据库准备新建JavaWeb工程jsp连接MySQL代码运行结果3、连接...

废人一枚的博客 6615

eclipse下javaweb连接mysql数据库-以用户登陆为例——javaweb系列(三)

eclipse下javaweb连接mysql数据库-以用户登陆为例

qq_23858785的博客 1万+

Java EE系列(九)——Java EE连接Mysql数据库(JDBC保姆级教学)

最近几天,peter xiao所在的项目小组也逐渐开始进行做最后的Java web课程大作业了,我们组所做的是运动会报名服务系统,其中涉及到很多数据的增删查改,所以需要依靠Mysql数据库来解决这些问题了。因此peter xiao这两天也在尝试研究如何Java EE连接Mysql。本篇博客将带你从0开始,一步一步地完成JDBC的连接工作。(干货满满哦~~~) 目录 一、MySQL的安装与配置 二、Navicat的安装与配置 三、navicat连接mysql操作 四、JDBC的下载和安装 ​...

m0_51914382的博客 6574

JavaWeb连接(JDBC)数据库实现增删改查

(2)、创建SourceManageDAOByJDBCImpl实现类。(2)、SourceManageDAOByJDBCImpl类实现。(2)、SourceManageDAOByJDBCImpl类实现。(2)、SourceManageDAOByJDBCImpl类实现。(2)、SourceManageDAOByJDBCImpl类实现。(2)、SourceManageDAOByJDBCImpl类实现。(1)、SourceManageDAOByJDBC接口实现。(1)、创建数据库(source_db)

码字不易,大家的支持就是我坚持下去的动力 2445

JSP通过JDBC连接mysql数据库

前言 最近小白入门java web,想要写一个简单的登录页面,但是首先得连接数据库,所以先学习了jsp连接数据库。 准备 首先要导入JDBC的jar包,发现之前学习java se的时候涉及到过。 https://pan.baidu.com/s/1xweHOuFP3Xw9yVcXjLFJhw 提取码:0wkg 首先将jar包放入我们web项目的lib依赖文件夹下,如下图所示: 然后右键我们的项目选...

阳光大男孩!!!的博客 1万+

javaweb:JDBC连接MYSQL数据库详解,使用JDBC对数据库进行CRUD操作以及DAO模式的介绍

  JDBC简介: JDBC全称为:Java DataBase Connectivity(java数据库连接)。 SUN公司为了简化、统一对数据库的操作,定义了一套Java操作数据库的规范,称之为JDBC。 组成JDBC的2个包: 链接:https://pan.baidu.com/s/1ePw4wDxcsZu9x-3MZHu8FQ  提取码:0g1z  java.sql java...

青红造了个大白之成长记 3092
上一篇: 6.27 目前技术学习视野
下一篇: 2015款mbpr外接移动硬盘装win8.1
idea丁一鸣
博客等级 码龄14年 9粉丝 83原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值