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

达梦数据库应用开发_JDBC接口介绍_yxy

达梦数据库应用开发_JDBC接口介绍

  • 1 JDBC是什么?
  • 2 JDBC主要类或接口介绍
    • 2.1 建立与 DM 数据库的连接
    • 2.2 转接发送 SQL 语句到数据库
    • 2.3 处理并返回语句执行结果
  • 3 JDBC基本使用
    • 3.1 前期准备
    • 3.2 增删改查代码示例
    • 3.3 绑定变量操作示例
    • 3.4 大字段操作示例

1 JDBC是什么?

JDBC 全称为 Java Database Connectivity,也就是 Java 数据库连接,是 Java 应用程序与数据库的接口规范,旨在让各数据库开发商为 Java 程序员提供标准的数据库应用程序编程接口 (API) 。JDBC 定义了一个跨数据库、跨平台的通用 SQL 数据库 API。

JDBC 驱动程序的主要功能包括:

1.建立与 DM 数据库的连接。
2.转接发送 SQL 语句到数据库。
3.处理并返回语句执行结果。

2 JDBC主要类或接口介绍

2.1 建立与 DM 数据库的连接

java.sql.DriverManager:
用于管理驱动程序、并可与数据库建立连接。其类中的方法均为静态方法。
java.sql.Connection:
数据库连接类,作用是管理执行数据库的连接,可用于提交和回滚事务、创建Statement对象等操作

2.2 转接发送 SQL 语句到数据库

java.sql.Statement
运行简答sql语句,无需指定参数

java.sql.PreparedStatement
运行包含(或者不包含)IN类型参数的预编译SQL语句

java.sql.CallableStatement
运行存储过程


以上三种执行器,因为PreparedStatement包含已编译的sql,执行速度要快于Statement

2.3 处理并返回语句执行结果

java.sql.ResultSet
结果集对象,主要用于查询结果访问
执行SOL语句后数据库返回结果被JDBC处理成结果集对象

3 JDBC基本使用

四个核心基础参数,访问数据库的JAVA框架都需要

jdbc.driver=dm.jdbc.driver.DmDriver
jdbc.url=jdbc:dm://localhost:5236
idbc.username=test_yxy
jdbc.password=Test_yxy

3.1 前期准备

1.找到正确的数据库驱动
DM JDBC 驱动 jar 包在 DM 安装目录 /dmdbms/drivers/jdbc(/home/dmdba/dmdbms/drivers/jdbc)

驱动后缀跟JAVA版本对应,比如 DmJdbcDriver18.jar 对应 java 1.8

2.创建测试类进行测试
在这里插入图片描述

3.2 增删改查代码示例

package dm_01;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class TEST01 {// 定义 DM JDBC 驱动串static String jdbcString = "dm.jdbc.driver.DmDriver";// 定义 DM URL 连接串static String urlString = "jdbc:dm://localhost:5236";// 定义连接用户名static String userName = "SYSDBA";// 定义连接用户口令static String password = "SYSDBA";// 定义连接对象static Connection conn = null;// 定义 SQL 语句执行对象static Statement state = null;// 定义结果集对象static ResultSet rs = null;public static void main(String[] args) {try {//--------------------------前提条件---------------------------------------------------   	//1.加载 JDBC 驱动程序System.out.println("Loading JDBC Driver...");Class.forName(jdbcString);//2.连接 DM 数据库System.out.println("Connecting to DM Server...");conn = DriverManager.getConnection(urlString, userName, password);//3.通过连接对象创建 java.sql.Statement 对象state = conn.createStatement();//---------------------------进行增删改查操作--------------------------------------------------//增加String sql_insert = "insert into SYSDBA.TEST01 " + "(ID,DATE)values('1','2024-01-01 00:00:00'),('2','2025-01-01 00:00:00'),('3','2026-01-01 00:00:00')";//执行添加的 SQL 语句state.execute(sql_insert);//删除String sql_delete = "delete from SYSDBA.TEST01 "+"where ID = '3'";//执行删除的 SQL 语句state.execute(sql_delete);//修改String sql_update = "update SYSDBA.TEST01 set "+"ID = '11' where ID = '1'";state.executeUpdate(sql_update);//查询//定义查询 SQLString sql_selectAll = "select * from SYSDBA.TEST01";//执行查询的 SQL 语句rs = state.executeQuery(sql_selectAll);displayResultSet(rs);} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();} finally {try {//关闭资源rs.close();state.close();conn.close();} catch (SQLException e) {e.printStackTrace();}}}//显示结果集public static void displayResultSet(ResultSet rs) throws SQLException{while (rs.next()) {int i=1;Object id = rs.getObject(i++);Object name = rs.getObject(i++);System.out.println(id+"  "+name);}}
}

打印出结果为:

Loading JDBC Driver...
Connecting to DM Server...
11  2024-01-01 00:00:00
2  2025-01-01 00:00:00

3.3 绑定变量操作示例

package dm_01;import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;public class jdbc_prepareStatement {// 定义 DM JDBC 驱动串static String jdbcString = "dm.jdbc.driver.DmDriver";// 定义 DM URL 连接串static String urlString = "jdbc:dm://localhost:5236";// 定义连接用户名static String userName = "SYSDBA";// 定义连接用户口令static String password = "SYSDBA";// 定义连接对象static Connection conn = null;// 定义 SQL 语句执行对象static PreparedStatement pstate = null;public static void main(String[] args) {try {//1.加载 JDBC 驱动程序System.out.println("Loading JDBC Driver...");Class.forName(jdbcString);//2.连接 DM 数据库System.out.println("Connecting to DM Server...");conn = DriverManager.getConnection(urlString, userName, password);//绑定操作String sql_updateNameById = "update SYSDBA.TEST01 set "+"ID = ? where ID = ?";//3.通过连接对象和修改语句的模板,创建 java.sql.PreparedStatement 对象pstate = conn.prepareStatement(sql_updateNameById);//4.绑定?对应的参数:理论上有多少个?就要绑定多少个值;pstate.setString(1, "1");pstate.setString(2, "11");//5. 执行 SQL 语句pstate.executeUpdate();} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();} finally {try {pstate.close();conn.close();} catch (SQLException e) {e.printStackTrace();}}}}

打印结果为

Connecting to DM Server...
1  2024-01-01 00:00:00
2  2025-01-01 00:00:00

3.4 大字段操作示例

1.初始化表

CREATE TABLE TEST03
(
"ID" INT IDENTITY(1, 1) NOT NULL,
"PHOTO" IMAGE,
"DESCRIBE" BLOB,
"TXT" CLOB,
NOT CLUSTER PRIMARY KEY("ID"));

2.代码示例

package dm_01;import java.io.BufferedInputStream;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.UnsupportedEncodingException;
import java.sql.Blob;
import java.sql.Clob;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;public class jdbc_operate_bigData {// 定义 DM JDBC 驱动串static String jdbcString = "dm.jdbc.driver.DmDriver";// 定义 DM URL 连接串static String urlString = "jdbc:dm://localhost:5236";// 定义连接用户名static String userName = "SYSDBA";// 定义连接用户口令static String password = "SYSDBA";// 定义连接对象static Connection conn = null;// 定义 SQL 语句执行对象static PreparedStatement pstate = null;//查询大字段// 定义保存结果集的对象static ResultSet rs = null;// 定义输入流对象static InputStream in3 = null;// 定义输出流对象static FileOutputStream fos = null;// 定义输出流对象static FileOutputStream fos2 = null;// 定义高效字符流对象static BufferedReader reader1 = null;public static void main(String[] args) {try {//1.加载 JDBC 驱动程序System.out.println("Loading JDBC Driver...");Class.forName(jdbcString);//2.连接 DM 数据库System.out.println("Connecting to DM Server...");conn = DriverManager.getConnection(urlString, userName, password);//------------------------------插入大字段------------------------------------------------------------------------------------------//1.插入大字段信息:  String sql_insert = "INSERT INTO TEST03 (\"PHOTO\","+ "\"DESCRIBE\",\"TXT\")VALUES(?,?,?);";pstate = conn.prepareStatement(sql_insert);//加载图片为输入流String filePath = "D:\\DM\\java20250217\\photo_test.jpg";File file = new File(filePath);String filePath2 = "D:\\DM\\java20250217\\clob_test.txt";File file2 = new File(filePath2);InputStream in = new BufferedInputStream(new FileInputStream(file));InputStream in2 = new BufferedInputStream(new FileInputStream(file));BufferedReader reader = new BufferedReader(new InputStreamReader(new FileInputStream(file2),"UTF-8"));//1.绑定 stream 流信息到第一个?pstate.setBinaryStream(1, in);//2.绑定 Inputstream 对象到第二个?这里pstate.setBlob(2, in2);//3.绑定 Reader 对象到第三个?pstate.setClob(3, reader);pstate.executeUpdate();//-------------------------------查询大字段-----------------------------------------------------------------------------------------//1.查询大字段信息 SQL 语句String sql_select = "SELECT * FROM TEST03 where ID='1';";pstate = conn.prepareStatement(sql_select);//2.创建 ResultSet 对象保存查询结果集rs  = pstate.executeQuery();//3.解析结果集while(rs.next()) {//获取第一列 id 信息int id = rs.getInt("ID");//获取第二列 photo 图片信息,并把该图片直接写入到 D:\\DM\\java20250217\\id_photo_test.jpg;in3 = rs.getBinaryStream("PHOTO");fos = new FileOutputStream("D:\\DM\\java20250217\\"+id+"_photo_test.jpg");int num = 0;//每次从输入流中读取一个字节数据,如果没读到最后指针向下继续循环while((num=in3.read())!=-1) {//将每次读取的字节数据,写入到输出流中fos.write(num);}//获取第三列的 Blob 大字段信息//Blob 对象处理的是字节型大字段信息例如图片、视频文件等Blob blob = rs.getBlob("DESCRIBE");in3 = blob.getBinaryStream();fos2 = new FileOutputStream("D:\\DM\\java20250217\\"+id+"_Blob_photo_test.jpg");//每次从输入流中读取一个字节数据,如果没读到最后指针向下继续循环while((num=in3.read())!=-1) {//将每次读取的字节数据,写入到输出流中fos2.write(num);}//获取第四列的 Clob 大字段信息//Clob 大字段处理的是字符型大字段信息,文本等数据Clob clob = rs.getClob("txt");reader1 = new BufferedReader(clob.getCharacterStream());String str = null;while((str=reader1.readLine())!=null) {//将每次读取的字节数据System.out.println(str.toString());}}//-----------------------------------------------------------------------------------------------------------------------} catch (ClassNotFoundException e) {e.printStackTrace();} catch (SQLException e) {e.printStackTrace();} catch (FileNotFoundException e) {e.printStackTrace();} catch (UnsupportedEncodingException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();} finally {try {//关闭资源fos.close();in3.close();rs.close();pstate.close();conn.close();} catch (SQLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}}}
}

3.打印结果为
TXT中的内容

Loading JDBC Driver...
Connecting to DM Server...
clob_test.txt文本//1.插入大字段信息:  package java_jdbc;import java.io.BufferedInputStream;import java.io.BufferedReader;import java.io.File;import java.io.FileInputStream;..........

文件夹中的内存
在这里插入图片描述

下一篇
达梦数据库应用开发_Hibernate框架介绍_yxy


更多其他数据库相关专栏:

1.数据库优化
数据库优化基本思路、索引详解、执行计划、统计信息、CBO原理、单表优化、多表优化、分布式优化、子查询等
数据库优化(sql优化)专栏连接

2.达梦分布式数据库:
部署详细步骤(DEM)、备份还原实战、核心特性理解、使用心得、表分区方式详细介绍、表分区最佳实践、DPC架构详解等
达梦分布式DPC专栏连接

相关文章:

达梦数据库应用开发_JDBC接口介绍_yxy

达梦数据库应用开发_JDBC接口介绍 1 JDBC是什么?2 JDBC主要类或接口介绍2.1 建立与 DM 数据库的连接2.2 转接发送 SQL 语句到数据库2.3 处理并返回语句执行结果 3 JDBC基本使用3.1 前期准备3.2 增删改查代码示例3.3 绑定变量操作示例3.4 大字段操作示例 1 JDBC是什么…...

在ubuntu上用Python的openpyxl模块操作Excel的案例

文章目录 安装模块读取Excel数据库取数匹配数据和更新Excel数据 在Ubuntu系统的环境下基本职能借助Python的openpyxl模块实现对Excel数据的操作。 安装模块 本次需要用到的模块需要提前安装(如果没有的话) pip3 install openpyxl pip3 install pymysql在操作前,需…...

RabbitMQ介绍以及基本使用

文章目录 一、什么是消息队列? 二、消息队列的作用(优点) 1、解耦 2、流量削峰 3、异步 4、顺序性 三、RabbitMQ基本结构 四、RabbitMQ队列模式 1、简单队列模式 2、工作队列模式 3、发布/订阅模式 4、路由模式 5、主题模式 6、…...

搭建 Hadoop 3.3.6 伪分布式

搭建 Hadoop 3.3.6 伪分布式 IP 192.168.157.132 初始化操作 更改yum源 # 1_1.安装Wget yum install wget# 1_2.备份CentOS-Base.repo文件 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak# 2.下载阿里yum源配置 wget -O /etc/yum.repos.d/Cen…...

进程控制(靠原语实现)

什么是进程控制? 进程控制的主要功能是:对系统中的所有进程实施有效管理,它具有创建新进程、撤销已有进程、实现进程状态转换等功能。 简化理解:进程控制就是要实现进程状态转换。 知识一览: 如何实现进程控制&#…...

linux5-多任务--进程fork()

一.多任务:让系统具备同时处理多个任务的能力 1.如何实现多任务 1.1进程:操作系统上正在运行的程序,需要消耗内存和CPU 1.1.1 进程的生存周期:创建、调度、消亡 1.1.1.1进程的创建:每个进程被创建时,操作…...

【蓝桥】二分法

1、简介 1.1 定义: 通过将问题的搜索范围一分为二,迭代地缩小搜索范围,直到找到目标或确定目标不存在 1.2 适用: 有序数据集合,且每次迭代可以将搜索范围缩小一半 1.3 本质: 枚举:利用数据结构…...

linux查看程序占用的本地端口

ss是Socket Statistics的缩写,用来替代旧的netstat工具,功能更强大,执行更快。它用于查看系统的网络连接情况,包括TCP、UDP等协议的信息。 一. 命令解析: sudo ss -tulwnpss (Socket Statistics):替代 ne…...

统计函数运行时间的python脚本

这是一个统计函数运行时间的实用脚本,其中用到了函数的嵌套、链式传输参数,以及修饰器。 import time# 定义一个装饰器timer,用于计算被装饰函数的运行时间 def timer(func):print("执行了timer")def wrapper(*args, **kwargs):st…...

百度搜索和文心智能体接入DeepSeek满血版——AI搜索的新纪元

在当今数字化时代,搜索引擎作为互联网信息获取的核心工具,正经历着前所未有的变革。据悉,2025年2月16日,百度搜索和文心智能体平台宣布全面接入DeepSeek和文心大模型的最新深度搜索功能,搜索用户可免费使用DeepSeek和文…...

快速入门Springboot+vue——MybatisPlus快速上手

学习自哔哩哔哩上的“刘老师教编程”,具体学习的网站为:6.MybatisPlus快速上手_哔哩哔哩_bilibili,以下是看课后做的笔记,仅供参考。 第一节 ORM介绍 ORM对象关系映射,为了解决面向对象与关系数据库存在的互补匹配现象…...

在C#中动态访问对象属性时,用表达式树可以获得高效性能

在C#中如何用表达式树动态访问对象属性的问题。用户可能已经知道反射的基本用法,但想用表达式树来提高性能,因为表达式树编译后的委托执行速度比反射快。 首先,表达式树的基本概念。表达式树允许在运行时构建代码,并编译成可执行的…...

性能:React 实战优化技巧 之 函数闭包

子组件使用了 React.memo ,为什么 “prop 值未发生改变”,子组件依然被重新渲染了? 🚧 示例:点击子组件中按钮,获取 input 数据进行提交(常见于表单) index.tsx import Author f…...

蓝桥杯学习大纲

(致酷德与热爱算法、编程的小伙伴们) 在查阅了相当多的资料后,发现没有那篇博客、文章很符合我们备战蓝桥杯的学习路径。所以,干脆自己整理一篇,欢迎大家补充! 一、蓝桥必备高频考点 我们以此为重点学习…...

Windows11切换回Windows10风格右键菜单

参考文章:Win11新版右键菜单用不惯?一键切换回Win10经典版!-CSDN博客 以管理员权限运行命令行cmd 切换为经典旧版右键菜单,执行 reg.exe add “HKCU\Software\Classes\CLSID\{86ca1aa0-34aa-4e8b-a509-50c905bae2a2}\InprocServe…...

Python 爬虫selenium

1.selenium自动化 selenium可以操作浏览器,在浏览器页面上实现:点击、输入、滑动 等操作。 不同于selenium自动化,逆向本质是: 分析请求,例如:请求方法、请求参数、加密方式等。用代码模拟请求去实现同等…...

Linux常用操作

软件安装 CentOS系统使用: yum [install remove search] [-y] 软件名称 install 安装 remove 卸载 search 搜索 -y,自动确认 Ubuntu系统使用 apt [install remove search] [-y] 软件名称 install 安装 remove 卸载 search 搜索 -y,自动确认 yum 和 apt 均需要root权限 syste…...

Note25022001_Excel表格如何在文字的中间或者后边插入当前日期

Excel表格如何在文字的中间或者后边插入当前日期 关键字: EXCEL;当前日期;文字中间 如图所示: 其中一种实现方法如下: 打开表格,在某一个表格中输入: "项目计划管理表(厂内&…...

Django5 实用指南(四)URL路由与视图函数

4.1 Django5的URL路由系统 Django 的 URL 路由系统是其核心组件之一,它负责将用户的 HTTP 请求(即 URL)映射到相应的视图函数上。每当用户在浏览器中访问某个 URL 时,Django 会根据项目的 URL 配置文件(urls.py&#…...

Unity3D 基于 GPU 动画和 Compute Shader 的大批量动画渲染详解

引言 在现代游戏开发中,渲染大量动画角色是一个常见的需求,尤其是在大规模战斗场景、开放世界游戏或 VR/AR 应用中。传统的 CPU 动画计算和渲染方式在面对大批量角色时,往往会遇到性能瓶颈。为了优化性能,开发者可以利用 GPU 的强…...

遥感影像目标检测:从CNN(Faster-RCNN)到Transformer(DETR)

我国高分辨率对地观测系统重大专项已全面启动,高空间、高光谱、高时间分辨率和宽地面覆盖于一体的全球天空地一体化立体对地观测网逐步形成,将成为保障国家安全的基础性和战略性资源。未来10年全球每天获取的观测数据将超过10PB,遥感大数据时…...

什么是DeFi (去中心化金融)

DeFi (去中心化金融) 概述 💰 1. DeFi 基础概念 1.1 什么是 DeFi? DeFi 是建立在区块链上的金融服务生态系统,它: 无需中心化中介开放且透明无需许可即可参与代码即法律 1.2 DeFi 的优势 开放性:任何人都可以参与…...

深入解析 sudo -l 命令的输出内容

在 Linux 系统中,sudo 命令允许普通用户以超级用户(root)权限执行命令。sudo -l 命令用于查看当前用户在 sudoers 配置文件中的权限,以及与 sudo 相关的安全策略。本文将详细解析 sudo -l 输出的各个部分,包括 用户权限…...

DeepSeek 助力 Vue 开发:打造丝滑的瀑布流布局(Masonry Layout)

前言:哈喽,大家好,今天给大家分享一篇文章!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏关注哦 💕 目录 Deep…...

linux学习【7】Sourc Insight 4.0设置+操作

目录 1.Source Insight是什么?2.需要哪些配置?3.怎么新建项目4.一些问题的解决1.中文乱码问题 按照这个设置就可以了,下面的设置会标明设置理由。 1.Source Insight是什么? 阅读源码,编辑源码,不能编译&am…...

OpenCV形态学操作

1.1. 形态学操作介绍 初识: 形态学操作是一种基于图像形状的处理方法,主要用于分析和处理图像中的几何结构。其核心是通过结构元素(卷积核)对图像进行扫描和操作,从而改变图像的形状和特征。例如: 腐蚀&…...

使用Python中的`gensim`库构建LDA(Latent Dirichlet Allocation)模型来分析收集到的评论

下面为你详细介绍如何使用Python中的gensim库构建LDA(Latent Dirichlet Allocation)模型来分析收集到的评论。LDA是一种主题模型,它可以将文档集合中的文本按照主题进行分类。 步骤概述 数据预处理:对收集到的评论进行清洗、分词…...

【STM32】外部时钟|红外反射光电开关

1.外部时钟 单片机如何对外部触发进行计数?先看一下内部时钟,内部时钟是接在APB1和APB2时钟线上的,APB1,APB2来自stm32单片机内部的脉冲信号,也叫内部时钟。我们用来定时。同样我们可以把外部的信号接入单片机,来对其…...

Visual Studio Code 集成 Baidu Comate

文章目录 安装Baidu Comate插件 安装Baidu Comate插件 从左主侧栏中 点击 【扩展】这个图标,然后在上方输入栏中输入 baidu comate —>选中列出的Bai Comate —>点击 【安装】按钮,等待安装完毕…...

数据结构者

数据(data):可被计算机接受处理的符号总称 数据元素(data element):数据的基本单位,常作为一个整体进行考虑和处理 一个数据元素可以由若干个数据项(data item)组成 数…...

论文阅读 DOES END-TO-END AUTONOMOUS DRIVING REALLY NEED PERCEPTION TASKS?

端到端的强势来袭,好久了~~~ 简单翻译:端到端真的需要感知任务嘛? code https://github.com/PeidongLi/SSR. https://arxiv.org/pdf/2409.18341 1. 摘要 端到端自动驾驶(E2EAD)方法通常依赖于监督式感知任务来提取显…...

总结UML类图几种关系画法

最近在公司需要画类图,有些遗忘,于是重新学习并并总结了一下: 继承:实线空心三角箭头。A继承B,A指向B。A是一种B。实现:虚线空心三角箭头。A实现B,A指向B。A实现B接口。关联:实线普…...

python-leetcode 40.二叉树的层序遍历

题目: 给定二叉树的根节点root,返回其节点值得层序遍历(即逐层从左到右访问所有节点) 方法:广度优先搜索 # Definition for a binary tree node. # class TreeNode(object): # def __init__(self, val0, leftNone, rightNon…...

安利:外文文献翻译插件

沉浸式翻译 好用吹爆!!!!!!!! 任务 2.谷歌学术 复制外文的标题搜索 3.进入文献所在,登录对应机构 4.可以看到都翻译好了 5.然后复制到文档,改改格式巴…...

Python——生成AIGC图像

文章目录 一、背景介绍 二、效果图展示 三、完整代码 四、分步解释 五、实用建议 1)提示词技巧 2)性能优化 3)常见问题处理 4)扩展功能建议 六、注意事项 1. 硬件要求 2. 法律合规 3. 模型安全 一、背景介绍 AIGC&a…...

OpenGL(2)基于Qt做OpenGL开发

文章目录 一、基于Qt做OpenGL开发1、环境准备2、创建OpenGL窗口3、绘制基本图形 一、基于Qt做OpenGL开发 1、环境准备 确保你已经安装了 Qt 开发环境(包含 Qt Creator),并且支持 OpenGL 开发。在创建 Qt 项目时,选择 “Qt Widget…...

【Windows软件 - HeidiSQL】导出数据库

HeidSQL导出数据库 软件信息 具体操作 示例文件 选项分析 选项(1) 结果(1) -- -------------------------------------------------------- -- 主机: 127.0.0.1 -- 服务器版本: …...

用deepseek学大模型04-模型可视化与数据可视化

deepseek.com: pytorch可视化工具 生成神经网络图 在 PyTorch 中,可视化神经网络结构的常用工具和方法有以下几种,以下将详细介绍它们的用法: 1. TensorBoard (PyTorch 官方集成) PyTorch 通过 torch.utils.tensorboard 支持 TensorBoard&a…...

rust笔记8-Deref与隐式解引用强制转换

Rust 的智能指针和 Deref Trait 是 Rust 中非常重要的概念,它们使得 Rust 的引用和指针操作更加灵活和安全。下面我们将深入介绍 Deref Trait、Deref 与 &、* 运算符的关系,以及 Rust 的隐式解引用强制转换(Deref Coercion)。 1. 智能指针与 Deref Trait 智能指针(如…...

Debian软件包重构

Explore projects GitLab 1. apt-get build-dep <pkg> ## 安装编译依赖包 2. apt source <pkg> ## 下载 <pkg> 包的源码 3. 创建 git &#xff0c;打补丁 4. dpkg-buildpackage -b -uc -us -d ## 重新打包编译 # 解压出包中的文件到 extract 目…...

学习 `@PreDestroy`:Java EE/Jakarta EE 生命周期回调

学习 PreDestroy&#xff1a;Java EE/Jakarta EE 生命周期回调 前言1. 什么是 PreDestroy&#xff1f;2. PreDestroy 的用途3. 使用 PreDestroy 的条件4. 代码示例运行结果&#xff1a; 5. PreDestroy 的调用时机6. 注意事项7. 实际应用场景场景 1&#xff1a;数据库连接管理场…...

JDK最详细安装教程,零基础入门到精通,收藏这篇就够了

目录 一、下载与安装二、配置环境三、验证是否配置成功 一、下载与安装 1、下载地址 http://www.oracle.com/technetwork/java/javase/downloads/index.html 2、选择自己想要的版本下载&#xff0c;并且选择自己电脑对应的版本下载 3、下载完成之后&#xff0c;双击打开然后…...

解决DeepSeek服务器繁忙问题的实用指南

目录 简述 1. 关于服务器繁忙 1.1 服务器负载与资源限制 1.2 会话管理与连接机制 1.3 客户端配置与网络问题 2. 关于DeepSeek服务的备用选项 2.1 纳米AI搜索 2.2 硅基流动 2.3 秘塔AI搜索 2.4 字节跳动火山引擎 2.5 百度云千帆 2.6 英伟达NIM 2.7 Groq 2.8 Firew…...

【一个人的第一年】成都Java日志7

#海纳百川&#xff0c;有容乃大# 1.互联网 互联网是一个服务我的工具而不是绑架任何人的场所&#xff0c;网络不是现实&#xff0c;现实才是生活。 现在越来越多的声音出现在互联网&#xff0c;能轻易地挑起群体情绪。对其他的任何事可以有不同的立场和观点&#xff0c;而不是…...

回调处理器

文章目录 什么是回调处理器回调处理器的工作流程回调处理器的使用自定义链组件中的回调 内置回调处理器自定义回调处理器 在编程领域中&#xff0c;回调是一个非常重要的概念。简而言之&#xff0c;回调是一种特殊的函数或方法&#xff0c;它可以被传递给另一个函数作为参数&am…...

国产编辑器EverEdit -告别东找西找!一键打开当前文件所在目录!

1 文件操作 2 应用场景 在文件编辑过程中&#xff0c;有时需要对文件进行一些操作&#xff0c;比如&#xff1a;在命令窗口输入文件路径、文件名&#xff0c;进入到文件目录&#xff0c;对文件进行压缩等&#xff0c;如果没有直达命令&#xff0c;用户需要通过文件管理器找到目…...

23种设计模式 - 解释器模式

模式定义 解释器模式&#xff08;Interpreter Pattern&#xff09;是一种行为型设计模式&#xff0c;用于为特定语言&#xff08;如数控系统的G代码&#xff09;定义文法规则&#xff0c;并构建解释器来解析和执行该语言的语句。它通过将语法规则分解为多个类&#xff0c;实现…...

深度学习在语音识别中的应用

引言 语音识别技术是人工智能领域中的一个重要分支&#xff0c;它使得机器能够理解和转换人类的语音为文本。深度学习的出现极大地推动了语音识别技术的发展。本文将介绍如何使用深度学习构建一个基本的语音识别系统&#xff0c;并提供一个实践案例。 环境准备 在开始之前&a…...

【相聚青岛】人工智能与材料国际学术会议即将召开

一、大会简介 人工智能与材料国际会议&#xff08;ICAIM 2025&#xff09; 官方网站&#xff1a;www.ic-aim.net 官方邮箱&#xff1a;icaim2025163.com 会议时间&#xff1a;2025年3.21-24 会议地点&#xff1a;中国青岛 会议检索&#xff1a;EI检索 截稿时间&#xff1a;2月…...

PHP会务会议系统小程序源码

&#x1f4c5; 会务会议系统 一款基于ThinkPHPUniapp框架&#xff0c;精心雕琢的会议管理微信小程序&#xff0c;专为各类高端会议场景量身打造。它犹如一把开启智慧殿堂的金钥匙&#xff0c;为会议流程优化、开支精细化管理、数量精准控制、标准严格设定以及供应商严格筛选等…...