当前位置: 首页 > news >正文

自己在公司上班做网站宣传 侵权吗国家新闻最新消息今天

自己在公司上班做网站宣传 侵权吗,国家新闻最新消息今天,怎么让做的网站赚钱吗,河南建设教育协会网站引言 在现代应用开发中,与数据库交互是不可或缺的一部分。Java提供了JDBC(Java Database Connectivity) API,允许开发者方便地连接到数据库并执行SQL操作。本文将详细介绍Java数据库编程的基础知识,包括JDBC的基本概念…

引言

在现代应用开发中,与数据库交互是不可或缺的一部分。Java提供了JDBC(Java Database Connectivity) API,允许开发者方便地连接到数据库并执行SQL操作。本文将详细介绍Java数据库编程的基础知识,包括JDBC的基本概念、数据库连接与操作、事务处理、以及使用ORM框架如Hibernate,并通过表格进行总结和示范。

JDBC基础

什么是JDBC?

JDBC是Java数据库连接的标准API,允许Java应用与数据库进行交互。JDBC API提供了与数据库连接、执行SQL查询、更新数据库和处理结果集的方法。

JDBC体系结构

组件描述
DriverManager管理一组JDBC驱动程序,实现数据库连接
Driver用于与数据库通信的JDBC驱动程序
Connection表示与特定数据库的连接,用于执行SQL语句
Statement用于执行SQL查询和更新
ResultSet表示SQL查询的结果,允许迭代和处理结果集
SQLException指示数据库访问错误的异常类

JDBC四大步骤

  1. 加载并注册数据库驱动
  2. 建立数据库连接
  3. 创建并执行SQL语句
  4. 处理结果与关闭资源

数据库连接与操作

连接数据库

使用DriverManager获取数据库连接。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;public class DatabaseConnection {public static void main(String[] args) {String url = "jdbc:mysql://localhost:3306/mydatabase";String username = "root";String password = "password";try (Connection connection = DriverManager.getConnection(url, username, password)) {System.out.println("Database connected!");} catch (SQLException e) {e.printStackTrace();}}
}

执行SQL查询

使用Statement执行SQL查询并处理结果集。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;public class SelectQueryExample {public static void main(String[] args) {String url = "jdbc:mysql://localhost:3306/mydatabase";String username = "root";String password = "password";try (Connection connection = DriverManager.getConnection(url, username, password);Statement statement = connection.createStatement()) {String query = "SELECT * FROM users";ResultSet resultSet = statement.executeQuery(query);while (resultSet.next()) {int id = resultSet.getInt("id");String name = resultSet.getString("name");String email = resultSet.getString("email");System.out.println("ID: " + id + ", Name: " + name + ", Email: " + email);}} catch (SQLException e) {e.printStackTrace();}}
}

更新数据库

使用PreparedStatement执行SQL更新操作。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;public class UpdateQueryExample {public static void main(String[] args) {String url = "jdbc:mysql://localhost:3306/mydatabase";String username = "root";String password = "password";try (Connection connection = DriverManager.getConnection(url, username, password);PreparedStatement statement = connection.prepareStatement("UPDATE users SET email = ? WHERE id = ?")) {statement.setString(1, "newemail@example.com");statement.setInt(2, 1);int rowsAffected = statement.executeUpdate();System.out.println("Rows affected: " + rowsAffected);} catch (SQLException e) {e.printStackTrace();}}
}

JDBC常用类与方法表

类/接口方法描述
DriverManagergetConnection(String, String, String)获取数据库连接
ConnectioncreateStatement()创建Statement实例
prepareStatement(String)创建PreparedStatement实例
close()关闭数据库连接
StatementexecuteQuery(String)执行SQL查询并返回ResultSet
executeUpdate(String)执行SQL更新并返回受影响行数
close()关闭Statement
PreparedStatementsetString(int, String)设置SQL参数值
setInt(int, int)设置SQL参数值
executeUpdate()执行SQL更新并返回受影响行数
executeQuery()执行SQL查询并返回ResultSet
close()关闭PreparedStatement
ResultSetnext()移动到下一行数据
getInt(String)获取当前行指定列的整数值
getString(String)获取当前行指定列的字符串值
close()关闭ResultSet
SQLExceptiongetMessage()获取异常消息
printStackTrace()打印异常堆栈轨迹

事务处理

在数据库操作中,事务用于保证一组操作要么全部成功要么全部失败,确保数据一致性。事务具有四个属性(ACID):原子性、一致性、隔离性和持久性。

使用事务

使用Connection对象的事务控制方法实现数据库事务。

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;public class TransactionExample {public static void main(String[] args) {String url = "jdbc:mysql://localhost:3306/mydatabase";String username = "root";String password = "password";try (Connection connection = DriverManager.getConnection(url, username, password)) {connection.setAutoCommit(false); // 开始事务try (PreparedStatement pst1 = connection.prepareStatement("UPDATE accounts SET balance = balance - ? WHERE id = ?");PreparedStatement pst2 = connection.prepareStatement("UPDATE accounts SET balance = balance + ? WHERE id = ?")) {pst1.setDouble(1, 100.0);pst1.setInt(2, 1);pst1.executeUpdate();pst2.setDouble(1, 100.0);pst2.setInt(2, 2);pst2.executeUpdate();connection.commit(); // 提交事务System.out.println("Transaction committed successfully.");} catch (SQLException e) {connection.rollback(); // 回滚事务System.out.println("Transaction rolled back.");e.printStackTrace();}} catch (SQLException e) {e.printStackTrace();}}
}

事务控制方法表

方法描述示例
setAutoCommit(boolean)设置是否自动提交事务connection.setAutoCommit(false);
commit()提交事务connection.commit();
rollback()回滚事务connection.rollback();

使用ORM框架:Hibernate

Hibernate是Java的一个流行的ORM(对象关系映射)框架,通过将Java对象映射到数据库表,简化了数据库操作并提高了生产力。

Hibernate配置

Hibernate通过hibernate.cfg.xml文件进行配置,包括数据库连接信息和映射文件。

示例:hibernate.cfg.xml

<!DOCTYPE hibernate-configuration PUBLIC"-//Hibernate/Hibernate Configuration DTD 3.0//EN""http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration><session-factory><!-- 数据库连接配置 --><property name="hibernate.connection.driver_class">com.mysql.cj.jdbc.Driver</property><property name="hibernate.connection.url">jdbc:mysql://localhost:3306/mydatabase</property><property name="hibernate.connection.username">root</property><property name="hibernate.connection.password">password</property><property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property><!-- 映射类 --><mapping class="com.example.User"/></session-factory>
</hibernate-configuration>

Hibernate实体类

定义一个实体类,并使用Hibernate注解进行配置。

示例:User实体类

import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;@Entity
@Table(name = "users")
public class User {@Idprivate int id;private String name;private String email;// Getters and setterspublic 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 String getEmail() {return email;}public void setEmail(String email) {this.email = email;}
}

使用Hibernate进行数据库操作

使用Hibernate的SessionTransaction进行CRUD(创建、读取、更新、删除)操作。

示例:Hibernate CRUD操作

import org.hibernate.Session;
import org.hibernate.SessionFactory;
import org.hibernate.Transaction;
import org.hibernate.cfg.Configuration;public class HibernateCRUDExample {public static void main(String[] args) {// 创建SessionFactorySessionFactory sessionFactory = new Configuration().configure().buildSessionFactory();// 创建Sessiontry (Session session = sessionFactory.openSession()) {// 创建TransactionTransaction transaction = session.beginTransaction();// 创建并保存一个新用户User user = new User();user.setId(1);user.setName("John Doe");user.setEmail("john.doe@example.com");session.save(user);System.out.println("User saved!");// 提交事务transaction.commit();} catch (Exception e) {e.printStackTrace();} finally {// 关闭SessionFactorysessionFactory.close();}}
}

Hibernate常用类与方法表

类/接口方法描述
Configurationconfigure()加载Hibernate配置文件
buildSessionFactory()创建SessionFactory实例
SessionFactoryopenSession()打开一个新的Session实例
close()关闭SessionFactory实例
SessionbeginTransaction()开始一个新的事务
save(Object)保存一个对象到数据库
update(Object)更新数据库中的一个对象
delete(Object)从数据库中删除一个对象
get(Class, Serializable)根据标识符从数据库中获取一个对象
Transactioncommit()提交事务
rollback()回滚事务

表格总结

JDBC常用类与方法表

类/接口方法描述
DriverManagergetConnection(String, String, String)获取数据库连接
ConnectioncreateStatement()创建Statement实例
prepareStatement(String)创建PreparedStatement实例
close()关闭数据库连接
StatementexecuteQuery(String)执行SQL查询并返回ResultSet
executeUpdate(String)执行SQL更新并返回受影响行数
close()关闭Statement
PreparedStatementsetString(int, String)设置SQL参数值
setInt(int, int)设置SQL参数值
executeUpdate()执行SQL更新并返回受影响行数
executeQuery()执行SQL查询并返回ResultSet
close()关闭PreparedStatement
ResultSetnext()移动到下一行数据
getInt(String)获取当前行指定列的整数值
getString(String)获取当前行指定列的字符串值
close()关闭ResultSet
SQLExceptiongetMessage()获取异常消息
printStackTrace()打印异常堆栈轨迹

事务控制方法表

方法描述示例
setAutoCommit(boolean)设置是否自动提交事务connection.setAutoCommit(false);
commit()提交事务connection.commit();
rollback()回滚事务connection.rollback();

Hibernate常用类与方法表

类/接口方法描述
Configurationconfigure()加载Hibernate配置文件
buildSessionFactory()创建SessionFactory实例
SessionFactoryopenSession()打开一个新的Session实例
close()关闭SessionFactory实例
SessionbeginTransaction()开始一个新的事务
save(Object)保存一个对象到数据库
update(Object)更新数据库中的一个对象
delete(Object)从数据库中删除一个对象
get(Class, Serializable)根据标识符从数据库中获取一个对象
Transactioncommit()提交事务
rollback()回滚事务

总结

本文详细介绍了Java数据库编程的基础知识,包括JDBC的基本概念、数据库连接与操作、事务处理、以及使用ORM框架如Hibernate。通过示例代码和表格总结,帮助读者更好地理解和应用Java中的数据库编程,提高数据操作的效率和安全性。

http://www.tj-hxxt.cn/news/13127.html

相关文章:

  • 网站开发项目分析模板sem网络推广公司
  • 网站导航条用什么做seo网络营销招聘
  • 网站主题模板下载安装成都网站推广哪家专业
  • 无为网站建设长沙百度关键词推广
  • 网站服务内容合肥网络seo
  • 聊城做wap网站价格东莞推广
  • 创口贴设计网站官网免费发布推广信息的平台
  • 太原市城市建设规划局官方网站合肥网站推广公司排名
  • 公司网站怎么维护seo实战密码第三版pdf下载
  • vue做的web网站本网站三天换一次域名
  • 华亚快印网站开发黑帽seo是什么
  • 济南市商务局官方网站谷歌浏览器安卓下载
  • 网页设计实训体会怎样优化网络
  • 网站可以用中国二字做抬头吗广州疫情防控措施
  • 哪个网站网页做的好看济宁百度推广价格
  • 做网站怎么拿框架的原代码关键信息基础设施安全保护条例
  • 安徽省建设厅网站定制网站开发
  • 深圳建设网站哪里好seo工作内容有哪些
  • 做网站卖狗挣钱吗镇江seo
  • 网页设计实训总结2000字网络优化工程师简历
  • 大连建设工程交易中心东莞seo建站
  • 深圳建设网站制作公司全文搜索引擎有哪些
  • 杨和网站设计百度风云榜各年度小说排行榜
  • 如何使用好单库选品库做网站windows优化大师是病毒吗
  • 网站列表设计互动营销公司
  • 网站的策划方案怎么写百度竞价托管代运营公司
  • 学php到做网站要多久广告投放平台系统
  • 网站建设销售员话术网络营销外包公司
  • 不会代码怎么做网站口碑营销成功案例简短
  • 网站建设推广怎样找客户百度搜索优化平台