接上一篇:JDBC(一)基础.
用JDBC的API来做一些常规的练习。

本文目录

  • 1.连接工具类
  • 2.基本操作
    • 使用DDL语句
    • CURD
  • 3.常见操作
    • 处理二进制和大文本数据
    • 批量处理SQL
    • 获取自动增长主键列
    • 数据库元数据
    • 封装查询结果集

1.连接工具类

  资源配置文件(src目录下):jdbc.properties,里面定义了四行数据,分别对应着JDBC连接所需要的几个参数(注:Properties底层为一个Hashtable,配置文件中“=”之前的代表Map中的键,之后的代表相应键所对应的值)

url=jdbc:mysql://localhost:3306/db1?useSSL=false&characterEncoding=UTF-8
user=root
password=201703457
driver=com.mysql.jdbc.Driver

连接MySQL数据库的工具类:
JDBCUtils.java

import java.io.FileReader;
import java.io.IOException;
import java.net.URL;
import java.sql.*;
import java.util.Properties;/*** JDBC工具类*/
public class JDBCUtils {//声明用到参数对应的成员变量private static String url;private static String user;private static String password;private static String driver;/*** 配置文件的读取,只需要读取一次即可拿到这些值。使用静态代码块* 在程序编译的时候执行*/static {//读取资源文件,获取值。try {//1.创建Properties集合类。Properties pro = new Properties();//2.动态获取src路径下的文件的方式--->使用ClassLoader类:类加载器ClassLoader classLoader = JDBCUtils.class.getClassLoader();//获取ClassLoader对象URL res = classLoader.getResource("jdbc.properties");//定位jdbc.properties绝对路径资源String path = res.getPath();//获取资源的字符串路径//System.out.println(path);//打印一下资源路径//3.加载路径对应的文件pro.load(new FileReader(path));//4.获取数据,传值url = pro.getProperty("url");user = pro.getProperty("user");password = pro.getProperty("password");driver = pro.getProperty("driver");//5.注册驱动Class.forName(driver);} catch (IOException e) {e.printStackTrace();} catch (ClassNotFoundException e) {e.printStackTrace();}}/*** 获取连接* @return 连接对象*/public static Connection getConnection() throws SQLException {return DriverManager.getConnection(url, user, password);}/*** 释放资源* @param stmt* @param conn*/public static void close(Statement stmt, Connection conn) {close(null,stmt,conn);}/*** 释放资源* @param stmt* @param conn* @param rs*/public static void close(ResultSet rs, Statement stmt, Connection conn) {if (rs != null) {//避免出现空指针异常,为了程序健壮try {rs.close();//释放资源} catch (SQLException e) {e.printStackTrace();}}if (stmt != null) {try {stmt.close();} catch (SQLException e) {e.printStackTrace();}}if (conn != null) {try {conn.close();} catch (SQLException e) {e.printStackTrace();}}}}

2.基本操作

使用DDL语句

   在java中使用DDL语句(用的很少),操作数据库,表,列等。关键字:create, drop,alter 等。

/*** JDBC操作* java中使用DDL语句(创建数据库、表...)*/
public class JDCBDemo_DDL {public static void main(String[] args) {Connection conn=null;PreparedStatement pstetm=null;try {//1.获取连接对象conn= JDBCUtils.getConnection();//2.定义sqlString sql="create database person";//创建数据库//String sql="create table student";//创建表//3.获取执行sql的对象pstetm=conn.prepareStatement(sql);//4.执行sql语句//判读是否成功if (pstetm.execute()){System.out.println("创建成功!");}else{System.out.println("创建失败!");}} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(pstetm,conn);}}
}

CURD

对连接对象的数据库表中的数据增删改查。

/*** JDBC练习* CURD*/
public class JDBCDemo5 {/*** 插入操作*/@Testpublic void insert(){Connection conn=null;PreparedStatement pstatm=null;try {conn= JDBCUtils.getConnection();String sql="insert into user values(null,?,?)";pstatm=conn.prepareStatement(sql);pstatm.setString(1,"dong");pstatm.setString(2,"123456");int count=pstatm.executeUpdate();if (count>0){System.out.println("执行成功!");}else {System.out.println("插入失败!");}} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(pstatm,conn);}}/*** 删除操作*/@Testpublic void delete(){Connection conn=null;PreparedStatement pstatm=null;try {conn=JDBCUtils.getConnection();String sql="delete from user where id=?";pstatm=conn.prepareStatement(sql);pstatm.setInt(1,3);int count=pstatm.executeUpdate();if (count>0){System.out.println("删除成功!");}else {System.out.println("失败!");}} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(pstatm,conn);}}/*** 更新操作*/@Testpublic void update(){Connection conn=null;PreparedStatement pstatm=null;try {conn=JDBCUtils.getConnection();String sql="update user set NAME=?,password=? where id=?";pstatm=conn.prepareStatement(sql);pstatm.setString(1,"Liang");pstatm.setString(2,"888888");pstatm.setInt(3,4);int count=pstatm.executeUpdate();if (count>0){System.out.println("更新成功!");}else {System.out.println("失败!");}} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(pstatm,conn);}}/*** 查询操作*/@Testpublic void query(){Connection conn=null;PreparedStatement pstatm=null;ResultSet rs=null;try {conn=JDBCUtils.getConnection();String sql="select * from user where id=?";pstatm=conn.prepareStatement(sql);pstatm.setInt(1,1);rs=pstatm.executeQuery();if (rs.next()){int id=rs.getInt(1);String name=rs.getString("NAME");String password=rs.getString(3);System.out.println(id+"-----"+name+"----"+password);}} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(pstatm,conn);}}
}

3.常见操作

处理二进制和大文本数据

存取文本文件(.txt文件)

-- 数据库表
create table testclob(id int primary key auto_increment,txtfile text
);

Java程序

/*** 处理大数据* 存取文本文件(.txt文件)** 存:必须使用PreparedStatement接口中的方法。将指定输入流写入数据库文本字段* void setCharacterStream(int parameterIndex, InputStream x, int length)** 取:通过ResultSet接口的getCharacterStream(字段索引)方法读取字节流*/
public class JDBCDemo6 {/*** 将txt文件写入到数据表的字段中*/@Testpublic void add() {Connection conn = null;PreparedStatement pstmt = null;try {conn = JDBCUtils.getConnection();String sql = "insert into testclob(txtfile) values(?)";pstmt = conn.prepareStatement(sql);ClassLoader Cl=JDBCDemo6.class.getClassLoader();URL res=Cl.getResource("liang.txt");String path=res.getPath();//String path = JDBCDemo6.class.getClassLoader().getResource("liang.txt").getPath();//System.out.println(path);File file = new File(path);pstmt.setCharacterStream(1, new FileReader(file), (int) file.length());int count = pstmt.executeUpdate();if (count > 0) {System.out.println("存入成功!");} else {System.out.println("失败!");}} catch (SQLException e) {e.printStackTrace();} catch (FileNotFoundException e) {e.printStackTrace();} finally {JDBCUtils.close(pstmt, conn);}}/*** 读取数据库中的文件*/@Testpublic void read(){Connection conn = null;PreparedStatement pstmt = null;ResultSet rs=null;try {conn=JDBCUtils.getConnection();String sql="select txtfile from testclob where id =?";pstmt=conn.prepareStatement(sql);pstmt.setInt(1,1);rs=pstmt.executeQuery();if (rs.next()){System.out.println("读取到的文件内容:");Reader reader=rs.getCharacterStream("txtfile");BufferedReader bufferedReader=new BufferedReader(reader);String s=null;while ((s=bufferedReader.readLine())!=null){System.out.println(s);}reader.close();}} catch (SQLException e) {e.printStackTrace();} catch (IOException e) {e.printStackTrace();}finally {JDBCUtils.close(rs,pstmt,conn);}}
}

存取二进制文件(图片,视频)

-- 数据库表
create table testblob(id int primary key auto_increment,image LONGBLOB
);

Java程序

/*** 处理大数据* 存取二进制文件(图片,视频)**存:必须使用PreparedStatement接口中的方法。将二进制输入流数据写入二进制字段中* void setBinaryStream(int parameterIndex, InputStream x, int length)** 取:通过ResultSet接口的getBinaryStream(二进制字段索引)方法读取字节流*/
public class JDBCDemo7 {/*** 将图片写入到数据表的字段中*/@Testpublic void add(){Connection conn=null;PreparedStatement pstetm=null;try {conn= JDBCUtils.getConnection();String sql="insert into testblob(image) values(?)";pstetm=conn.prepareStatement(sql);String path=JDBCDemo7.class.getClassLoader().getResource("1.png").getPath();pstetm.setBinaryStream(1,new FileInputStream(path),(int)new File(path).length());int count=pstetm.executeUpdate();if (count>0){System.out.println("添加成功!");}else {System.out.println("失败!");}} catch (SQLException e) {e.printStackTrace();} catch (FileNotFoundException e) {e.printStackTrace();}finally {JDBCUtils.close(pstetm,conn);}}/*** 从数据表中读取图片*/@Testpublic void read(){Connection coon=null;PreparedStatement pstatm=null;ResultSet rs=null;try {coon=JDBCUtils.getConnection();String sql="select image from testblob where id=?";pstatm=coon.prepareStatement(sql);pstatm.setInt(1,1);rs=pstatm.executeQuery();if (rs.next()){InputStream in=rs.getBinaryStream("image");int len=0;byte []bytes=new byte[1024];FileOutputStream out=new FileOutputStream("E:\\1.png");while ((len=in.read(bytes))!=-1){out.write(bytes,0,len);}in.close();out.close();System.out.println("读取成功!");}} catch (Exception e) {e.printStackTrace();}finally {JDBCUtils.close(rs,pstatm,coon);}}
}

批量处理SQL

-- 数据库表
create table testBatch(id int primary key auto_increment,name VARCHAR(20)
);

Java程序

/*** 批量处理sql语句*/
public class JDBCDemo8 {/*** 通过Statement对象实现*/@Testpublic void testBatch1(){Connection conn=null;Statement statm=null;try {conn= JDBCUtils.getConnection();String sql1="insert into testBatch(id,name) values(1,'dong')";String sql2="insert into testBatch(id,name) values(2,'liang')";String sql3="update testBatch set name='aaa' where id=1";statm=conn.createStatement();statm.addBatch(sql1);statm.addBatch(sql2);statm.addBatch(sql3);statm.executeBatch();statm.clearBatch();System.out.println("批量处理成功!");} catch (SQLException e) {e.printStackTrace();System.out.println("失败!");}finally {JDBCUtils.close(statm,conn);}}/*** 通过PreparedStatement对象实现*/@Testpublic void testBatch2(){long starTime=System.currentTimeMillis();Connection conn=null;PreparedStatement pstatm=null;try {conn= JDBCUtils.getConnection();String sql="insert into testBatch(name) values(?)";pstatm=conn.prepareStatement(sql);for (int i = 0; i <500; i++) {pstatm.setString(1,"D"+i);pstatm.addBatch();}pstatm.executeBatch();System.out.println("批量处理成功!");} catch (SQLException e) {e.printStackTrace();System.out.println("失败!");}finally {JDBCUtils.close(pstatm,conn);}long endTime=System.currentTimeMillis();System.out.println("程序运行时间:"+(endTime-starTime)/1000+"秒!");}
}

获取自动增长主键列

-- 数据库表
create table test(id int primary key auto_increment,name VARCHAR(20)
);

Java程序

/*** 获取自动生成的主键* 通过PreparedStatement对象getGeneratedKeys方法得到主键列*/
public class JDBCDemo9 {public static void main(String[] args) {Connection conn=null;PreparedStatement pstatm=null;ResultSet rs=null;try {conn= JDBCUtils.getConnection();String sql="insert into test(name) values(?)";//在插入name时,自动生成idpstatm=conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);//需要给定参数Statement.RETURN_GENERATED_KEYSpstatm.setString(1,"dong");pstatm.executeUpdate();rs=pstatm.getGeneratedKeys();//获取自动增长的主键列if (rs.next()){System.out.println(rs.getInt(1));}System.out.println("执行成功!");} catch (SQLException e) {e.printStackTrace();System.out.println("失败!");}finally {JDBCUtils.close(rs,pstatm,conn);}}
}

数据库元数据

  什么是元数据?描述数据库或其组成部分的数据成为元数据(区别于那些存在数据库中的实际数据)。
通过JDBC可以获得三种元数据,数据库元数据,SQL语句参数元数据,结果集元数据。

-- 数据库表
CREATE TABLE `emp` (`id` int(11) NOT NULL,`name` varchar(255) default NULL,`address` varchar(255) default NULL,`hireDate` datetime default NULL,PRIMARY KEY  (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
ALTER TABLE emp MODIFY id INT(11) auto_increment;
INSERT INTO emp(name,address) VALUES('张三','武汉');
INSERT INTO emp(name,address) VALUES('李四','武汉');
INSERT INTO emp(name,address) VALUES('王五','长沙');
INSERT INTO emp(name,address) VALUES('赵云','北京');
INSERT INTO emp(name,address) VALUES('刘备','深圳');
INSERT INTO emp(name,address) VALUES('曹操','上海');

Java程序

/*** JDBC练习* 元数据:其实就是数据库,表,列的定义信息。* 利用元数据可以对我们的工具类再进行抽象和封装,形成更好的工具类*/
public class JDBCDemo11 {/*** 获取数据库元数据*/@Testpublic void getDatabaseMetData(){Connection conn=null;DatabaseMetaData metaData=null;try {conn= JDBCUtils.getConnection();metaData=conn.getMetaData();//获取数据库名称String DBname=metaData.getDatabaseProductName();System.out.println(DBname);//获取驱动版本String driverNmae=metaData.getDriverName();System.out.println(driverNmae);//获取数据库连接URLString url=metaData.getURL();System.out.println(url);//获取用户名String userName=metaData.getUserName();System.out.println(userName);} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(null,conn);}}/*** 获取SQL执行对象元数据*/@Testpublic void getParameterMetaData(){Connection conn=null;PreparedStatement pstatm=null;ParameterMetaData metaData=null;try {conn=JDBCUtils.getConnection();String sql="insert into emp(id,name,address,hiredate) values(?,?,?,?)";pstatm=conn.prepareStatement(sql);metaData=pstatm.getParameterMetaData();//取到的参数个数int Count=metaData.getParameterCount();System.out.println(Count);} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(pstatm,conn);}}/*** 获取结果集元数据*/@Testpublic void getResultSetMetaData(){Connection conn=null;PreparedStatement pstatm=null;ResultSet rs=null;try {conn=JDBCUtils.getConnection();String sql="select * from emp";pstatm=conn.prepareStatement(sql);rs=pstatm.executeQuery();// 获取结果集元数据ResultSetMetaData resultSetMetaData = rs.getMetaData();// 获取查询出来的总列数int columnCount = resultSetMetaData.getColumnCount();System.out.println("columnCount : " + columnCount);// 获取指定列的类型常量,在java.sql.Types类中可以查找到int columnType = resultSetMetaData.getColumnType(2);System.out.println("columnType : " + columnType);// 获取指定列的类型字符串,如INT,VARCHARString columnTypeName = resultSetMetaData.getColumnTypeName(2);System.out.println("columnTypeName : " + columnTypeName);// 获取指定列的列名,如hiredateString columnName = resultSetMetaData.getColumnName(4);System.out.println("columnName : " + columnName);} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(rs,pstatm,conn);}}
}

封装查询结果集

数据库表以上面的emp表为例子。

/*** 新建实体类Emp*/
public class Emp {private int id;private String name;private String address;private Date hireDate;public Emp(int id, String name, String address, Date hireDate) {this.id = id;this.name = name;this.address = address;this.hireDate = hireDate;}public Emp() {}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 String getAddress() {return address;}public void setAddress(String address) {this.address = address;}public Date getHireDate() {return hireDate;}public void setHireDate(Date hireDate) {this.hireDate = hireDate;}@Overridepublic String toString() {return "Emp{" +"id=" + id +", name='" + name + '\'' +", address='" + address + '\'' +", hireDate=" + hireDate +'}';}
}
/*** JDBC练习* 封装查询结果集* 定义一个方法,查询Emp表的数据将其封装为对象,然后装载集合,返回。*/
public class JDBCDemo12 {public static void main(String[] args) {List<Emp> list=new JDBCDemo12().finAll();//打印list集合System.out.println(list);}/*** 查询所有emp对象* @return*/public List<Emp> finAll(){Connection conn=null;PreparedStatement pstate=null;ResultSet rs=null;List<Emp> list=null;try {conn= JDBCUtils.getConnection();String sql="select * from emp";pstate=conn.prepareStatement(sql);rs=pstate.executeQuery();//遍历结果集,封装对象,装载集合Emp emp=null;list=new ArrayList<Emp>();while (rs.next()){//获取数据int id=rs.getInt("id");String name=rs.getString("name");String address=rs.getString("address");Date hireDate=rs.getDate("hireDate");//创建emp对象,并赋值emp=new Emp();emp.setId(id);emp.setName(name);emp.setAddress(address);emp.setHireDate(hireDate);//装载集合list.add(emp);}} catch (SQLException e) {e.printStackTrace();}finally {JDBCUtils.close(rs,pstate,conn);}return list;}
}
查看全文
如若内容造成侵权/违法违规/事实不符,请联系编程学习网邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

相关文章

  1. 前端学习(1311):请求报文

    //创建网站服务器模板 const http = require(http); //网站服务器对象 const app = http.createServer(); //客户端有请求 app.on(request, (req, res) => {//获取请求方式//console.log(req.method);//获取请求地址//console.log(req.url);if (req.url == /index || req.ur…...

    2024/4/24 9:29:53
  2. Mybatis SqlMapConfig.xml无编辑提示的解决方法

    Mybatis SqlMapConfig.xml无编辑提示的解决方法: 1、先到Mybatis-.jar里面找到 mybatis-3.2.7.jar\org\apache\ibatis\builder\xml的mybatis-3-mapper.dtd,放到指定位置 2、window–》preference–》搜索xml–》选择XML Catalog 然后如下填写即可完成...

    2024/4/24 9:29:45
  3. 对JavaScript继承的理解

    1、原型链继承:以下代码定义了两个类型,Father和Son,每个类型都有其属性和方法,Son通过创建Father实例,并将其赋值给Son.prototype继承了Father。使用原型链继承会共享所有引用类型值,因此很少单独使用原型链继承。function Father(){this.hobby = [read,run]this.proper…...

    2024/4/24 9:29:48
  4. socket编程 - Event扩展的使用(五)信号处理器

    类似于定时器,信号处理器是当前进程收到特定的信号后的事件处理机制。 关于信号操作系统已经为进程的每一个信号设置了默认的处理函数,并且允许应用程序重新设置信号的处理程序。这就是我们要来实现的功能。 1、创建持久的信号处理器 $timer = new Event($eventBase, $signo…...

    2024/4/24 9:29:46
  5. 数据结构之二分查找

    二分查找是一种在每次比较之后将查找空间一分为二的算法。每次需要查找集合中的索引或元素时,都应该考虑二分查找。如果集合是无序的,我们可以总是在应用二分查找之前先对其进行排序。 成功的二分查找的 3 个部分 二分查找一般由三个主要部分组成:预处理 —— 如果集合未排序…...

    2024/4/16 10:59:22
  6. Django rest framework学习之路

    Django rest framework学习之CBV基本使用CBV与FBV 我们在学习Django rest framework之前需要对Django框架有一定知识储备,否则你学起来会很吃力。这里不过多介绍DRF框架,我们直接进入正题。 CBV与FBV 我们在初识Django框架的时候,一个完整的功能如下代码 路由: from django…...

    2024/4/17 0:29:42
  7. 如何管理网络营销渠道冲突?

    如何管理网络营销渠道冲突? 1.识别冲突。冲突发生以后,首先要对冲突的性质及严重程度进行识别和判断,冲突的性质主要取决于当事人的动机。有些冲突源于双方对目标、市场的不同理解所产生的意见不一致及其相应的差异化行为。这种冲突处理得当的话,可以起到建设性的作用。而恶…...

    2024/4/20 17:20:47
  8. 线性回归、逻辑回归-学习笔记整理

    线性回归 线性回归(Linear regression)是利用回归方程(函数)对一个或多个自变量(特征值)和因变量(目标值)之间关系进行建模的一种分析方式。 只有一个自变量的情况称为单变量回归,多于一个自变量情况的叫做多元回归线性回归用矩阵表示举例线性回归的特征与目标的关系 线性关系…...

    2024/4/16 10:59:12
  9. 微信小程序入门(六)常见内置组件 Text组件 Button组件解析 open-type的取值 View组件 Image组件 Input组件 scroll-view组件 共同属性

    目录Text组件Button组件解析open-type的取值View组件Image组件介绍Input组件的介绍scroll-view组件介绍共同属性 Text组件 Text组件用于显示文本, 类似于span标签, 是行内元素<!--pages/text/text.wxml--> <text>Hello world\n</text> <text>你好小程序…...

    2024/4/29 1:01:27
  10. SQL(4)- 过滤数据

    where 过滤数据,条件筛选select prod_price from products where prod_price=199; select prod_price from products where prod_price<199 order by prod_price; order by(排序)要在where(筛选)之后。 select prod_name from products where prod_name!=apple; elec…...

    2024/4/28 6:59:09
  11. cf Educational Codeforces Round 80 B. Yet Another Meme Problem

    原题: B. Yet Another Meme Problem time limit per test 1 second memory limit per test 256 megabytes input standard input output standard output Try guessing the statement from this picture http://tiny.cc/ogyoiz. You are given two integers A and B, calculat…...

    2024/4/27 22:35:03
  12. 苹果手表出现,请在iphone 打开apple watch 应用,前生Passcode,轻点密码重试

    苹果手表出现,请在iphone 打开apple watch 应用,前生Passcode,轻点"重试密码",再试?该如何解决?step1: 将手表充足电量 step2: 开机键 Long Press ,然后出现下面画面step3: 长按滑动关机与SOS中间位置 ,然后会出现step4:这时选择抹掉所有内容和设置step5: 修…...

    2024/4/27 20:18:10
  13. webpack打包报错DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead

    在使用extract-text-webpack-plugin给webpack打包时出现报错是因为这个插件现在不兼容webpack4x版本,可以使用最新的测试版本 下载最新测试版本 npm install extract-text-webpack-plugin@next...

    2024/4/28 5:29:38
  14. 十进制的0.1 为什么不能用二进制很好的表示?

    二进制是计算技术中广泛采用的一种数制。二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。当前的计算机系统使用的基本上是二进制系统,数据在计算机中主要是以补码的形式存储的。…...

    2024/4/29 2:28:59
  15. Echarts数据可视化特效散点图点动态闪烁效果

    效果如下:Echarts数据可视化series-effectscatter特效散点图全解mytextStyle={color:"#333", //文字颜色fontStyle:"normal", //italic斜体 oblique倾斜fontWeight:"normal", //文字粗细bold bolder lighter…...

    2024/4/27 22:29:25
  16. 【JVM】垃圾回收的四大算法

    GC垃圾回收石头文学 https://www.10tou.com JVM大部分时候回收的都是新生代(伊甸区+幸存0区+幸存1区)。按照回收的区域可以分成两种类型:Minor GC和Full GC(MajorGC)。 Minor GC:只针对新生代区域的GC,大多数Java对象的存活率都不高,Minor GC非常频繁,回收速度快。 Fu…...

    2024/4/29 0:20:05
  17. Linux基础指令

    目录linux文件目录结构常用指令目录路径Linux 文件的基本操作新建复制删除移动文件与文件重命名查看文件date 命令使用 yum 命令 linux文件目录结构 Linux 是以树形目录结构的形式来构建整个系统的 命令行输入:/tree 查看常用指令 目录路径 在 Linux 里面使用 . 表示当前目录,…...

    2024/4/28 5:22:54
  18. Java内部类详解

    这篇讲的很好 转载: https://www.cnblogs.com/dolphin0520/p/3811445.html...

    2024/4/29 1:58:01
  19. 7zip移植到arm-linux平台

    1.下载源码 https://sourceforge.net/projects/p7zip/files/p7zip/ 我这里下载的是 p7zip_16.02_src_all.tar.bz2 2.解压修改makefile并完全编译 tar -xvf p7zip_16.02_src_all.tar.bz2解压源码包p7zip_9.20.1_src_all.tar.bz2后,进入源码包,会发现有一个makefile和n多其它平…...

    2024/4/28 17:58:50
  20. 一文带你了解Linux操作系统

    文章目录Linux目录结构介绍Linux用户介绍Linux 常用命令介绍Linux文件操作Linux文件夹操作Linux 查询命令帮助语句 Linux目录结构介绍Linux用户介绍 Linux用户通常分为两类: 1.管理员用户(root); 2.普通用户(类似Windows上的普通用户)。 Linux登录系统后,默认当前所在目录为用…...

    2024/4/28 16:40:18

最新文章

  1. 平台介绍-搭建赛事运营平台(9)

    奋战了40天&#xff0c;赛事平台上线了。能这么短时间上线&#xff0c;除了研发人员的加班加点&#xff0c;主要得益于平台本身的积累。 门户系统&#xff1a;几乎没有修改&#xff0c;原样采用了平台的门户系统&#xff08;当然必要的配置修改是必须的&#xff0c;例如样式、颜…...

    2024/5/5 1:40:06
  2. 梯度消失和梯度爆炸的一些处理方法

    在这里是记录一下梯度消失或梯度爆炸的一些处理技巧。全当学习总结了如有错误还请留言&#xff0c;在此感激不尽。 权重和梯度的更新公式如下&#xff1a; w w − η ⋅ ∇ w w w - \eta \cdot \nabla w ww−η⋅∇w 个人通俗的理解梯度消失就是网络模型在反向求导的时候出…...

    2024/3/20 10:50:27
  3. 技术与安全的交织

    引言 介绍数字化转型对企业出海策略的影响&#xff0c;强调在全球市场中成功的关键因素之一是有效利用网络技术&#xff0c;如SOCKS5代理、代理IP&#xff0c;以及确保网络安全。 第一部分&#xff1a;网络技术的基础 SOCKS5代理 定义和工作原理 SOCKS5代理与网络匿名性的关系…...

    2024/5/4 22:42:26
  4. 实景三维在数字乡村建设中的重要作用

    随着科技的飞速发展&#xff0c;数字乡村建设已成为推动乡村振兴、实现农村现代化的重要途径。实景三维技术作为数字乡村建设的重要支撑&#xff0c;正逐渐在各个领域发挥着不可或缺的作用。本文将从实景三维技术在数字乡村中的应用场景、优势及未来展望等方面进行探讨&#xf…...

    2024/5/1 13:46:14
  5. 【外汇早评】美通胀数据走低,美元调整

    原标题:【外汇早评】美通胀数据走低,美元调整昨日美国方面公布了新一期的核心PCE物价指数数据,同比增长1.6%,低于前值和预期值的1.7%,距离美联储的通胀目标2%继续走低,通胀压力较低,且此前美国一季度GDP初值中的消费部分下滑明显,因此市场对美联储后续更可能降息的政策…...

    2024/5/4 23:54:56
  6. 【原油贵金属周评】原油多头拥挤,价格调整

    原标题:【原油贵金属周评】原油多头拥挤,价格调整本周国际劳动节,我们喜迎四天假期,但是整个金融市场确实流动性充沛,大事频发,各个商品波动剧烈。美国方面,在本周四凌晨公布5月份的利率决议和新闻发布会,维持联邦基金利率在2.25%-2.50%不变,符合市场预期。同时美联储…...

    2024/5/4 23:54:56
  7. 【外汇周评】靓丽非农不及疲软通胀影响

    原标题:【外汇周评】靓丽非农不及疲软通胀影响在刚结束的周五,美国方面公布了新一期的非农就业数据,大幅好于前值和预期,新增就业重新回到20万以上。具体数据: 美国4月非农就业人口变动 26.3万人,预期 19万人,前值 19.6万人。 美国4月失业率 3.6%,预期 3.8%,前值 3…...

    2024/5/4 23:54:56
  8. 【原油贵金属早评】库存继续增加,油价收跌

    原标题:【原油贵金属早评】库存继续增加,油价收跌周三清晨公布美国当周API原油库存数据,上周原油库存增加281万桶至4.692亿桶,增幅超过预期的74.4万桶。且有消息人士称,沙特阿美据悉将于6月向亚洲炼油厂额外出售更多原油,印度炼油商预计将每日获得至多20万桶的额外原油供…...

    2024/5/4 23:55:17
  9. 【外汇早评】日本央行会议纪要不改日元强势

    原标题:【外汇早评】日本央行会议纪要不改日元强势近两日日元大幅走强与近期市场风险情绪上升,避险资金回流日元有关,也与前一段时间的美日贸易谈判给日本缓冲期,日本方面对汇率问题也避免继续贬值有关。虽然今日早间日本央行公布的利率会议纪要仍然是支持宽松政策,但这符…...

    2024/5/4 23:54:56
  10. 【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响

    原标题:【原油贵金属早评】欧佩克稳定市场,填补伊朗问题的影响近日伊朗局势升温,导致市场担忧影响原油供给,油价试图反弹。此时OPEC表态稳定市场。据消息人士透露,沙特6月石油出口料将低于700万桶/日,沙特已经收到石油消费国提出的6月份扩大出口的“适度要求”,沙特将满…...

    2024/5/4 23:55:05
  11. 【外汇早评】美欲与伊朗重谈协议

    原标题:【外汇早评】美欲与伊朗重谈协议美国对伊朗的制裁遭到伊朗的抗议,昨日伊朗方面提出将部分退出伊核协议。而此行为又遭到欧洲方面对伊朗的谴责和警告,伊朗外长昨日回应称,欧洲国家履行它们的义务,伊核协议就能保证存续。据传闻伊朗的导弹已经对准了以色列和美国的航…...

    2024/5/4 23:54:56
  12. 【原油贵金属早评】波动率飙升,市场情绪动荡

    原标题:【原油贵金属早评】波动率飙升,市场情绪动荡因中美贸易谈判不安情绪影响,金融市场各资产品种出现明显的波动。随着美国与中方开启第十一轮谈判之际,美国按照既定计划向中国2000亿商品征收25%的关税,市场情绪有所平复,已经开始接受这一事实。虽然波动率-恐慌指数VI…...

    2024/5/4 23:55:16
  13. 【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试

    原标题:【原油贵金属周评】伊朗局势升温,黄金多头跃跃欲试美国和伊朗的局势继续升温,市场风险情绪上升,避险黄金有向上突破阻力的迹象。原油方面稍显平稳,近期美国和OPEC加大供给及市场需求回落的影响,伊朗局势并未推升油价走强。近期中美贸易谈判摩擦再度升级,美国对中…...

    2024/5/4 23:54:56
  14. 【原油贵金属早评】市场情绪继续恶化,黄金上破

    原标题:【原油贵金属早评】市场情绪继续恶化,黄金上破周初中国针对于美国加征关税的进行的反制措施引发市场情绪的大幅波动,人民币汇率出现大幅的贬值动能,金融市场受到非常明显的冲击。尤其是波动率起来之后,对于股市的表现尤其不安。隔夜美国股市出现明显的下行走势,这…...

    2024/5/4 18:20:48
  15. 【外汇早评】美伊僵持,风险情绪继续升温

    原标题:【外汇早评】美伊僵持,风险情绪继续升温昨日沙特两艘油轮再次发生爆炸事件,导致波斯湾局势进一步恶化,市场担忧美伊可能会出现摩擦生火,避险品种获得支撑,黄金和日元大幅走强。美指受中美贸易问题影响而在低位震荡。继5月12日,四艘商船在阿联酋领海附近的阿曼湾、…...

    2024/5/4 23:54:56
  16. 【原油贵金属早评】贸易冲突导致需求低迷,油价弱势

    原标题:【原油贵金属早评】贸易冲突导致需求低迷,油价弱势近日虽然伊朗局势升温,中东地区几起油船被袭击事件影响,但油价并未走高,而是出于调整结构中。由于市场预期局势失控的可能性较低,而中美贸易问题导致的全球经济衰退风险更大,需求会持续低迷,因此油价调整压力较…...

    2024/5/4 23:55:17
  17. 氧生福地 玩美北湖(上)——为时光守候两千年

    原标题:氧生福地 玩美北湖(上)——为时光守候两千年一次说走就走的旅行,只有一张高铁票的距离~ 所以,湖南郴州,我来了~ 从广州南站出发,一个半小时就到达郴州西站了。在动车上,同时改票的南风兄和我居然被分到了一个车厢,所以一路非常愉快地聊了过来。 挺好,最起…...

    2024/5/4 23:55:06
  18. 氧生福地 玩美北湖(中)——永春梯田里的美与鲜

    原标题:氧生福地 玩美北湖(中)——永春梯田里的美与鲜一觉醒来,因为大家太爱“美”照,在柳毅山庄去寻找龙女而错过了早餐时间。近十点,向导坏坏还是带着饥肠辘辘的我们去吃郴州最富有盛名的“鱼头粉”。说这是“十二分推荐”,到郴州必吃的美食之一。 哇塞!那个味美香甜…...

    2024/5/4 23:54:56
  19. 氧生福地 玩美北湖(下)——奔跑吧骚年!

    原标题:氧生福地 玩美北湖(下)——奔跑吧骚年!让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 让我们红尘做伴 活得潇潇洒洒 策马奔腾共享人世繁华 对酒当歌唱出心中喜悦 轰轰烈烈把握青春年华 啊……啊……啊 两…...

    2024/5/4 23:55:06
  20. 扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!

    原标题:扒开伪装医用面膜,翻六倍价格宰客,小姐姐注意了!扒开伪装医用面膜,翻六倍价格宰客!当行业里的某一品项火爆了,就会有很多商家蹭热度,装逼忽悠,最近火爆朋友圈的医用面膜,被沾上了污点,到底怎么回事呢? “比普通面膜安全、效果好!痘痘、痘印、敏感肌都能用…...

    2024/5/4 2:59:34
  21. 「发现」铁皮石斛仙草之神奇功效用于医用面膜

    原标题:「发现」铁皮石斛仙草之神奇功效用于医用面膜丽彦妆铁皮石斛医用面膜|石斛多糖无菌修护补水贴19大优势: 1、铁皮石斛:自唐宋以来,一直被列为皇室贡品,铁皮石斛生于海拔1600米的悬崖峭壁之上,繁殖力差,产量极低,所以古代仅供皇室、贵族享用 2、铁皮石斛自古民间…...

    2024/5/4 23:55:16
  22. 丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者

    原标题:丽彦妆\医用面膜\冷敷贴轻奢医学护肤引导者【公司简介】 广州华彬企业隶属香港华彬集团有限公司,专注美业21年,其旗下品牌: 「圣茵美」私密荷尔蒙抗衰,产后修复 「圣仪轩」私密荷尔蒙抗衰,产后修复 「花茵莳」私密荷尔蒙抗衰,产后修复 「丽彦妆」专注医学护…...

    2024/5/4 23:54:58
  23. 广州械字号面膜生产厂家OEM/ODM4项须知!

    原标题:广州械字号面膜生产厂家OEM/ODM4项须知!广州械字号面膜生产厂家OEM/ODM流程及注意事项解读: 械字号医用面膜,其实在我国并没有严格的定义,通常我们说的医美面膜指的应该是一种「医用敷料」,也就是说,医用面膜其实算作「医疗器械」的一种,又称「医用冷敷贴」。 …...

    2024/5/4 23:55:01
  24. 械字号医用眼膜缓解用眼过度到底有无作用?

    原标题:械字号医用眼膜缓解用眼过度到底有无作用?医用眼膜/械字号眼膜/医用冷敷眼贴 凝胶层为亲水高分子材料,含70%以上的水分。体表皮肤温度传导到本产品的凝胶层,热量被凝胶内水分子吸收,通过水分的蒸发带走大量的热量,可迅速地降低体表皮肤局部温度,减轻局部皮肤的灼…...

    2024/5/4 23:54:56
  25. 配置失败还原请勿关闭计算机,电脑开机屏幕上面显示,配置失败还原更改 请勿关闭计算机 开不了机 这个问题怎么办...

    解析如下&#xff1a;1、长按电脑电源键直至关机&#xff0c;然后再按一次电源健重启电脑&#xff0c;按F8健进入安全模式2、安全模式下进入Windows系统桌面后&#xff0c;按住“winR”打开运行窗口&#xff0c;输入“services.msc”打开服务设置3、在服务界面&#xff0c;选中…...

    2022/11/19 21:17:18
  26. 错误使用 reshape要执行 RESHAPE,请勿更改元素数目。

    %读入6幅图像&#xff08;每一幅图像的大小是564*564&#xff09; f1 imread(WashingtonDC_Band1_564.tif); subplot(3,2,1),imshow(f1); f2 imread(WashingtonDC_Band2_564.tif); subplot(3,2,2),imshow(f2); f3 imread(WashingtonDC_Band3_564.tif); subplot(3,2,3),imsho…...

    2022/11/19 21:17:16
  27. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机...

    win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”问题的解决方法在win7系统关机时如果有升级系统的或者其他需要会直接进入一个 等待界面&#xff0c;在等待界面中我们需要等待操作结束才能关机&#xff0c;虽然这比较麻烦&#xff0c;但是对系统进行配置和升级…...

    2022/11/19 21:17:15
  28. 台式电脑显示配置100%请勿关闭计算机,“准备配置windows 请勿关闭计算机”的解决方法...

    有不少用户在重装Win7系统或更新系统后会遇到“准备配置windows&#xff0c;请勿关闭计算机”的提示&#xff0c;要过很久才能进入系统&#xff0c;有的用户甚至几个小时也无法进入&#xff0c;下面就教大家这个问题的解决方法。第一种方法&#xff1a;我们首先在左下角的“开始…...

    2022/11/19 21:17:14
  29. win7 正在配置 请勿关闭计算机,怎么办Win7开机显示正在配置Windows Update请勿关机...

    置信有很多用户都跟小编一样遇到过这样的问题&#xff0c;电脑时发现开机屏幕显现“正在配置Windows Update&#xff0c;请勿关机”(如下图所示)&#xff0c;而且还需求等大约5分钟才干进入系统。这是怎样回事呢&#xff1f;一切都是正常操作的&#xff0c;为什么开时机呈现“正…...

    2022/11/19 21:17:13
  30. 准备配置windows 请勿关闭计算机 蓝屏,Win7开机总是出现提示“配置Windows请勿关机”...

    Win7系统开机启动时总是出现“配置Windows请勿关机”的提示&#xff0c;没过几秒后电脑自动重启&#xff0c;每次开机都这样无法进入系统&#xff0c;此时碰到这种现象的用户就可以使用以下5种方法解决问题。方法一&#xff1a;开机按下F8&#xff0c;在出现的Windows高级启动选…...

    2022/11/19 21:17:12
  31. 准备windows请勿关闭计算机要多久,windows10系统提示正在准备windows请勿关闭计算机怎么办...

    有不少windows10系统用户反映说碰到这样一个情况&#xff0c;就是电脑提示正在准备windows请勿关闭计算机&#xff0c;碰到这样的问题该怎么解决呢&#xff0c;现在小编就给大家分享一下windows10系统提示正在准备windows请勿关闭计算机的具体第一种方法&#xff1a;1、2、依次…...

    2022/11/19 21:17:11
  32. 配置 已完成 请勿关闭计算机,win7系统关机提示“配置Windows Update已完成30%请勿关闭计算机”的解决方法...

    今天和大家分享一下win7系统重装了Win7旗舰版系统后&#xff0c;每次关机的时候桌面上都会显示一个“配置Windows Update的界面&#xff0c;提示请勿关闭计算机”&#xff0c;每次停留好几分钟才能正常关机&#xff0c;导致什么情况引起的呢&#xff1f;出现配置Windows Update…...

    2022/11/19 21:17:10
  33. 电脑桌面一直是清理请关闭计算机,windows7一直卡在清理 请勿关闭计算机-win7清理请勿关机,win7配置更新35%不动...

    只能是等着&#xff0c;别无他法。说是卡着如果你看硬盘灯应该在读写。如果从 Win 10 无法正常回滚&#xff0c;只能是考虑备份数据后重装系统了。解决来方案一&#xff1a;管理员运行cmd&#xff1a;net stop WuAuServcd %windir%ren SoftwareDistribution SDoldnet start WuA…...

    2022/11/19 21:17:09
  34. 计算机配置更新不起,电脑提示“配置Windows Update请勿关闭计算机”怎么办?

    原标题&#xff1a;电脑提示“配置Windows Update请勿关闭计算机”怎么办&#xff1f;win7系统中在开机与关闭的时候总是显示“配置windows update请勿关闭计算机”相信有不少朋友都曾遇到过一次两次还能忍但经常遇到就叫人感到心烦了遇到这种问题怎么办呢&#xff1f;一般的方…...

    2022/11/19 21:17:08
  35. 计算机正在配置无法关机,关机提示 windows7 正在配置windows 请勿关闭计算机 ,然后等了一晚上也没有关掉。现在电脑无法正常关机...

    关机提示 windows7 正在配置windows 请勿关闭计算机 &#xff0c;然后等了一晚上也没有关掉。现在电脑无法正常关机以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;关机提示 windows7 正在配…...

    2022/11/19 21:17:05
  36. 钉钉提示请勿通过开发者调试模式_钉钉请勿通过开发者调试模式是真的吗好不好用...

    钉钉请勿通过开发者调试模式是真的吗好不好用 更新时间:2020-04-20 22:24:19 浏览次数:729次 区域: 南阳 > 卧龙 列举网提醒您:为保障您的权益,请不要提前支付任何费用! 虚拟位置外设器!!轨迹模拟&虚拟位置外设神器 专业用于:钉钉,外勤365,红圈通,企业微信和…...

    2022/11/19 21:17:05
  37. 配置失败还原请勿关闭计算机怎么办,win7系统出现“配置windows update失败 还原更改 请勿关闭计算机”,长时间没反应,无法进入系统的解决方案...

    前几天班里有位学生电脑(windows 7系统)出问题了&#xff0c;具体表现是开机时一直停留在“配置windows update失败 还原更改 请勿关闭计算机”这个界面&#xff0c;长时间没反应&#xff0c;无法进入系统。这个问题原来帮其他同学也解决过&#xff0c;网上搜了不少资料&#x…...

    2022/11/19 21:17:04
  38. 一个电脑无法关闭计算机你应该怎么办,电脑显示“清理请勿关闭计算机”怎么办?...

    本文为你提供了3个有效解决电脑显示“清理请勿关闭计算机”问题的方法&#xff0c;并在最后教给你1种保护系统安全的好方法&#xff0c;一起来看看&#xff01;电脑出现“清理请勿关闭计算机”在Windows 7(SP1)和Windows Server 2008 R2 SP1中&#xff0c;添加了1个新功能在“磁…...

    2022/11/19 21:17:03
  39. 请勿关闭计算机还原更改要多久,电脑显示:配置windows更新失败,正在还原更改,请勿关闭计算机怎么办...

    许多用户在长期不使用电脑的时候&#xff0c;开启电脑发现电脑显示&#xff1a;配置windows更新失败&#xff0c;正在还原更改&#xff0c;请勿关闭计算机。。.这要怎么办呢&#xff1f;下面小编就带着大家一起看看吧&#xff01;如果能够正常进入系统&#xff0c;建议您暂时移…...

    2022/11/19 21:17:02
  40. 还原更改请勿关闭计算机 要多久,配置windows update失败 还原更改 请勿关闭计算机,电脑开机后一直显示以...

    配置windows update失败 还原更改 请勿关闭计算机&#xff0c;电脑开机后一直显示以以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容&#xff0c;让我们赶快一起来看一下吧&#xff01;配置windows update失败 还原更改 请勿关闭计算机&#x…...

    2022/11/19 21:17:01
  41. 电脑配置中请勿关闭计算机怎么办,准备配置windows请勿关闭计算机一直显示怎么办【图解】...

    不知道大家有没有遇到过这样的一个问题&#xff0c;就是我们的win7系统在关机的时候&#xff0c;总是喜欢显示“准备配置windows&#xff0c;请勿关机”这样的一个页面&#xff0c;没有什么大碍&#xff0c;但是如果一直等着的话就要两个小时甚至更久都关不了机&#xff0c;非常…...

    2022/11/19 21:17:00
  42. 正在准备配置请勿关闭计算机,正在准备配置windows请勿关闭计算机时间长了解决教程...

    当电脑出现正在准备配置windows请勿关闭计算机时&#xff0c;一般是您正对windows进行升级&#xff0c;但是这个要是长时间没有反应&#xff0c;我们不能再傻等下去了。可能是电脑出了别的问题了&#xff0c;来看看教程的说法。正在准备配置windows请勿关闭计算机时间长了方法一…...

    2022/11/19 21:16:59
  43. 配置失败还原请勿关闭计算机,配置Windows Update失败,还原更改请勿关闭计算机...

    我们使用电脑的过程中有时会遇到这种情况&#xff0c;当我们打开电脑之后&#xff0c;发现一直停留在一个界面&#xff1a;“配置Windows Update失败&#xff0c;还原更改请勿关闭计算机”&#xff0c;等了许久还是无法进入系统。如果我们遇到此类问题应该如何解决呢&#xff0…...

    2022/11/19 21:16:58
  44. 如何在iPhone上关闭“请勿打扰”

    Apple’s “Do Not Disturb While Driving” is a potentially lifesaving iPhone feature, but it doesn’t always turn on automatically at the appropriate time. For example, you might be a passenger in a moving car, but your iPhone may think you’re the one dri…...

    2022/11/19 21:16:57