精华内容
参与话题
问答
  • Java数据库开发之JDBC

    千人学习 2019-12-20 10:19:32
    本课程是Java数据库开发JDBC,课程内容包括:MySQL、JDBC 连接、处理语句、预处理语句、结果集和DAO设计模式。
  • java数据库调用

    千次阅读 2019-08-27 15:13:54
    1.概念:Java Database Connectivity java数据库连接 ​ 本质:其实是官方(SUN公司)提供的一套操作所有关系型数据库的规则(接口),各个数据库厂商会去实现这套接口,产生数据库驱动(Jar包),我们可以使用这套接口...

    1.概念:Java Database Connectivity java数据库连接

    本质:其实是官方(SUN公司)提供的一套操作所有关系型数据库的规则(接口),各个数据库厂商会去实现这套接口,产生数据库驱动(Jar包),我们可以使用这套接口(JDBC)编程,真正执行的代码驱动包里的实现类。

    2.快速入门

    ​ 1.导入jar包 mysql-connector-java-5.1.37-bin.jar

    ​ 1.复制mysql-connector-java-5.1.37-bin.jar到项目的libs目录下

    ​ 2.右键–Add as Library

    ​ 2.注册驱动

    DriverManager对象

    ​ 功能

    ​ 注册驱动:告诉程序使用哪一个数据库驱动

    ​ 源码调用了静态代码块,也就是说驱动注册随着类的加载而加载

    ​ 获取数据库连接

    ​ url:指定连接的路径

    ​ jdbc:mysql://localhost:3306/db4

    ​ 语法 jdbc:mysql://ip地址(域名):3306/数据库名称

    如果连接本地的sql服务器,可省略 jdbc:mysql:///db4

    ​ user:用户名

    ​ password:密码

    Connection对象

    ​ 数据库连接对象

    ​ 功能:

    ​ 1.获取执行sql的对象(Statement)

    ​ 2.管理事务

    ​ 3.获取Connection对象

    ​ 4.定义sql

    ​ 5.获取执行sql语句的对象 Statement

    Statement对象 执行sql的对象

    ​ 功能

    ​ 1.执行sql

    ​ boolean execute():可以执行所有sql语句

    ​ int executeUpdate():执行DML(insert,update,delete)语句和DDL(create,alter,drop)语句

    ​ 返回值是影响的行数

    ​ int executeQuery():DQL(select)语句

    ​ 6.执行sql,接受返回结果

    ​ 7.处理结果

    ​ 8.释放资源

    展开全文
  • MinerDB.java 数据库工具类

    万次阅读 2019-09-20 15:59:27
    MinerDB.java 数据库工具类 package com.iteye.injavawetrust.miner; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql....

    MinerDB.java 数据库工具类

    package com.iteye.injavawetrust.miner;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.sql.Statement;
    import java.util.UUID;
    
    import org.apache.commons.logging.Log;
    import org.apache.commons.logging.LogFactory;
    
    /**
     * 数据库工具类
     * @author InJavaWeTrust
     *
     */
    public class MinerDB {
    	
    	private static final Log LOG = LogFactory.getLog(MinerDB.class);
    	
    	private static Connection conn = null;
    	private static Statement st = null;
    	private static ResultSet rs = null;
    
    	private MinerDB() {
    
    	}
    
    	private static final MinerDB instance = new MinerDB();
    
    	public static MinerDB getInstance() {
    		return instance;
    	}
    
    	/**
    	 * 连接数据库
    	 * 
    	 * @return
    	 */
    	public Connection connection() {
    		try {
    			Class.forName(MinerConstanits.DRIVER);
    		} catch (ClassNotFoundException e1) {
    			e1.printStackTrace();
    		}
    		try {
    			conn = DriverManager.getConnection(MinerConstanits.DBURL,
    					MinerConstanits.USER, MinerConstanits.PASSWORD);
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    		return conn;
    	}
    
    	/**
    	 * 关闭连接
    	 * 
    	 * @param rs
    	 * @param st
    	 * @param conn
    	 */
    	public void release(ResultSet rs, Statement st, Connection conn) {
    		try {
    			try {
    				if (null != rs) {
    					rs.close();
    				}
    			} catch (Exception e) {
    				rs = null;
    			}
    			try {
    				if (null != st) {
    					st.close();
    				}
    			} catch (Exception e) {
    				st = null;
    			}
    			try {
    				if (null != conn) {
    					conn.close();
    				}
    			} catch (Exception e) {
    				conn = null;
    			}
    		} finally {
    			rs = null;
    			st = null;
    			conn = null;
    		}
    	}
    	
    	/**
    	 * 得到UUID
    	 * @return 32位UUID
    	 */
    	public String getUUID() {
    		String s = UUID.randomUUID().toString();
    		return s.substring(0, 8) + s.substring(9, 13) + s.substring(14, 18)
    				+ s.substring(19, 23) + s.substring(24);
    	}
    	
    	/**
    	 * insert sql
    	 * @param bean MinerBean obj
    	 * @return insert sql
    	 */
    	public synchronized String getInsertSql(MinerBean bean) {
    		return "insert into miner (id, batchNo, filePath, fileName, getDate) values ('"
    				+ bean.getId()
    				+ "','"
    				+ bean.getBatchNo()
    				+ "','"
    				+ bean.getFilePath() 
    				+ "','" 
    				+ bean.getFileName() 
    				+ "',NOW())";
    	}
    	
    	/**
    	 * 插入
    	 * @param sql
    	 */
    	public synchronized void insert(String sql){
    		try{
    			MinerDB.getInstance().connection();
    			st = conn.createStatement();
    			st.execute(sql);
    			MinerDB.getInstance().release(rs, st, conn);
    		}catch(Exception e){
    			LOG.info("database error[" + sql + "]");
    			LOG.info("insert 异常信息[" + e.getMessage() + "]");
    		}
    	}
    
    }
    

     

    返回列表

     

    展开全文
  • MinerBean.java 数据库表 miner bean

    万次阅读 2019-09-20 15:59:27
    MinerBean.java 数据库表 miner bean package com.iteye.injavawetrust.miner; import java.util.Date; /** * 数据库表 miner bean * @author InJavaWeTrust * */ public class MinerBean { /** * uuid ...

    MinerBean.java 数据库表 miner bean

    package com.iteye.injavawetrust.miner;
    
    import java.util.Date;
    
    /**
     * 数据库表 miner bean
     * @author InJavaWeTrust
     *
     */
    public class MinerBean {
    	/**
    	 * uuid
    	 */
    	private String id;
    	/**
    	 * 爬取批次号
    	 */
    	private String batchNo;
    	/**
    	 * 文件路径
    	 */
    	private String filePath;
    	/**
    	 * 文件名
    	 */
    	private String fileName;
    	/**
    	 * 爬取日期
    	 */
    	private Date getDate;
    	
    	public String getId() {
    		return id;
    	}
    	public void setId(String id) {
    		this.id = id;
    	}
    	public String getBatchNo() {
    		return batchNo;
    	}
    	public void setBatchNo(String batchNo) {
    		this.batchNo = batchNo;
    	}
    	public String getFilePath() {
    		return filePath;
    	}
    	public void setFilePath(String filePath) {
    		this.filePath = filePath;
    	}
    	public String getFileName() {
    		return fileName;
    	}
    	public void setFileName(String fileName) {
    		this.fileName = fileName;
    	}
    	public Date getGetDate() {
    		return getDate;
    	}
    	public void setGetDate(Date getDate) {
    		this.getDate = getDate;
    	}
    	
    
    }
    

     

    返回列表

     

    展开全文
  • Java数据库面试题

    千次阅读 2017-10-29 15:52:13
    jdbc:叫做Java数据库连接 jdbc接口及相关类在Java.sql包和javax.sql包中, jdbc接口让Java程序和jdbc驱动实现了松耦合,是的切换不同的额数据库变得更加简单。jdbc时如何实现Java程序和jdbc驱动的松耦合? jdbc...

    事务的四大特性:原子性 一致性 持久性 隔离性
    jdbc:叫做Java数据库连接
    jdbc接口及相关类在Java.sql包和javax.sql包中,
    jdbc接口让Java程序和jdbc驱动实现了松耦合,是的切换不同的额数据库变得更加简单。

    jdbc时如何实现Java程序和jdbc驱动的松耦合?
    jdbcapi使用Java的反射机制来实现Java程序和jdbc驱动的松耦合。
    驱动只有通过Class.forName()反射机制来加载的时候才会出现。

    连接池:
    dbcp 没有回收机制 c3p0由回收机制(hibernate和spring那边也是用这个,是jdbc实现jndi和数据源绑定的)

    jdbc连接数据库的步骤:

    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    
    /*
     * 连接数据库
     */
    public class jdbc {
    
        Connection conn=null;
        PreparedStatement psmt=null;
        ResultSet rs=null;
        public Connection getConnections(){
            String username="wang";
            String password="wang";
            String dirver="oracle.jdbc.driver.OracleDriver";
            String url="jdbc:oracle:thin:@localhost:1521:orcl";
    
    
            try {
                Class.forName(dirver);
                conn=DriverManager.getConnection(url, username, password);
                String sql="";
                psmt=conn.prepareStatement(sql);
                rs=psmt.executeQuery();
                while(rs.next()){
                    System.out.println();
                }
            } catch (ClassNotFoundException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            } catch (SQLException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
    
            r
    
    
    
    et
    ur
    n conn;
        }
    
    }
    
    oracle数据库的隔离级别属于提交读取,保证不会脏读取,但会出现幻读和非重复提交。
    数据库中的锁:
       乐观锁——只有当更新数据的时候才会锁定记录。 悲观锁——从查询到更新和提交整个过程都会对数据记录进行加锁
    
    

    数据库的函数存储过程有什么不同?
    存储过程是用户定义的一系列sql语句的集合,涉及特定表挥着其他对象的任务,用户可以调用存储过程,而函数同城是书库已定义的方法,他接受的参数并返回某种类型的值并且不涉及特定用户表。还有就是村属过程没有返回值,函数由返回值,处理sql语句的时候比较使用。
    数据库的隔离级别:五种
    “`
    第一种化不支持事务
    第二种:未提交读,说明在提交事务前一个 事务可以看到另一个事务的变化。这样读取“脏数据”,不可重复读取护着虚读都是允许的。
    第三种:已提交读,说明读取未提交的数据是不允同的数据不失败,但徐读回出现,

    ,事务的最高境界,防止读脏

    五种:序列化,是事务的最高境界
    `这里写代防止读 数据,不可重复读取,和幻读。

    DDL和DML是什么?DML是数据库操作语句如select delete等由据的 DDL是数据库定义模式,如drop create等没有返回值的。
    “`

    展开全文
  • 1.JDBC(Java Database Connectivity:Java数据库连接)内容概览1.JDBC全称:Java DataBase Connectivity,SUN公司提供的一套操作数据库的标准规范;2.JDBC代表Java数据库链接,与数据库驱动的关系就如接口与实现的...
  •  java数据库连接技术(Java Database Connection,JDBC)是由java提供的一组与平台无关的数据库的操作标准,其本身由一类与接口组成,并且在操作中将按照严格的顺序执行。由于数据库属于资源操作,所以所有的数据库...
  • JDBC Java数据库编程

    千次阅读 2011-09-15 15:37:49
    JDBC Java数据库编程 JDBC是实心Java同各种数据库连接的关键,他提供了将Java和数据库连接起来的程序接口,使用户可以以sql的形式编写访问请求,然后将信息传给数据库,得到的结果再由该接口返回 从而实现 Java...
  • Java数据库连接实例(JDBC)

    千次阅读 2017-05-28 19:23:23
    1.JDBC是 Java Database Connectivity(Java数据库连接)的缩写,使用JDBC可以实现对数据库的访问。   2.Java是跨操作系统平台的,而通过JDBC可以实现跨数据库平台,JDBC只是一个抽象的编程接口,通过加载不同的...
  • java数据库连接技术(JDBC)

    千次阅读 多人点赞 2020-07-17 22:37:19
    import java.sql.Statement; import javax.naming.spi.DirStateFactory.Result; import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; public...
  • Java数据库异常

    千次阅读 2019-02-11 18:27:19
    java.sql.SQLIntegrityConstraintViolationException:是什么错误 ...说的是因为有一个唯一的键值重复了,可能是你插入了两条主键一样的数据,数据库里的主键是不能重复的; java.sql.SQLSyntaxErr...
  • JDBC (Java DB Connection)---Java数据库连接

    千次阅读 2016-09-06 16:15:50
    JDBC (Java DB Connection)---Java数据库连接 JDBC是一种可用于执行SQL语句的JAVA API(ApplicationProgramming Interface应用程序设计接口)。它由一些Java语言编写的类和界面组成。 JDBC为数据库应用开发...
  • 学习JDK内置纯JAVA数据库Derby

    千次阅读 2016-07-03 01:59:26
    JDK内置纯JAVA数据库Derby从学习JAVA到现在好多年了,不过中间有很长一段时间没怎么用JAVA和相关技术了,都不清楚原来JDK本身内置了Derby数据库。Derby数据库特点1.纯JAVA编写2.极其小巧,核心只有2M左右3.JDK内置...
  • Java 数据库基本操作

    千次阅读 多人点赞 2018-07-15 15:43:37
    连接数据库要访问数据库,首先要加载数据库的驱动程序(只需要在第一次访问数据库时加载一次),然后每次访问数据时创建一个Connection对象,之后执行操作数据库的SQL语句,最后在完成数据库操作后销毁前面创建的...
  • Java数据库连接class.forName()的原因

    千次阅读 2016-11-17 21:46:37
    Java数据库连接class.forName()的原因说明Java中的数据库驱动程序: 数据库的驱动程序是指实现java数据库连接的相关方法。Java提供数据库连接的相关标准(各种接口类),然后比如mysql,orical来实现Java连接数据库的...
  • Java数据库连接池几种方式及其特点

    万次阅读 2018-05-07 10:37:23
    主流的数据库连接池 ...DBCP:由Apache开发的一个Java数据库连接池项目, Jakarta commons-pool对象池机制,Tomcat使用的连接池组件就是DBCP。单独使用dbcp需要3个包:common-dbcp.jar,common-pool.jar,com...
  • Java数据库更新

    千次阅读 2019-06-19 21:59:51
    数据库更新操作包括数据表创建、删除、以及数据表记录的增加、删除、修改等操作。如果利用数据 SQL命令实现,则利用Statement对旬的executeUpdate()方法,执行SQL的update语句,实现数据表的修改;执行SQL的insert...
  • 步骤二:项目管理必备及MyBatis入门 工厂模式 ...Java数据库初识试卷 JDBC案例——留言板 JDBC入门 JUnit入门 MySQL基础之数据管理与常用函数 MySQL基础之数据类型与表的管理下载地址:百度网盘 ...
  • Java数据库的介绍和使用

    千次阅读 2019-09-19 11:29:28
    数据库管理系统(DataBase Management System,DBMS):指一种操作和管理数据库的大型软件,用于建立、使用和维护数据库,对数据库进行统一管理和控制,以保证数据库的安全性和完整性。用户通过数据库管理系统访问...
  • Java数据库连接池(一)

    千次阅读 2012-03-01 17:33:41
    Java数据库连接池(一) 几个概念  JDBC:Java Data Base Connectivity,java数据库连接,提供使用 JavaTM 编程语言访问并处理存储在数据源(通常是一个关系数据库)中的数据的行业标准。此 API ...
  • java 数据库 触发器

    千次阅读 2017-08-27 21:41:19
    写一个最简单的触发器 分类 insert(before,after) 触发器 update(before,after) 触发器 delete(before,after) 触发器 举个例子 delete after 触发器 ...删
  • Java 数据库操作

    万次阅读 2012-09-11 23:27:32
    JDBC是Java应用与数据库管理系统进行交互的标准API,包括两个包:核心API---java.sql和扩展的API---javax.sql。应用程序通过核心API的接口实现数据库连接和数据处理,其主要接口如下: 接口名称 ...
  • 赵雅智_java 数据库编程(1)

    千次阅读 2012-09-12 20:34:14
    JDBC全称为:Java Data Base Connectivity(java数据库连接),它主要由接口组成。由一些接口和类构成的API组成JDBC的2个包: java.sqljavax.sql 开发JDBC应用需要以上2个包的支持外,还需要导入相应JDBC
  • 一、Java数据库连接池总结  数据库连接池的实现及原理   内容摘要: 对于一个复杂的数据库应用,频繁的建立、关闭连接,会极大的减低系统的性能,因为对于连接的使用成了系统性能的瓶颈。  有一个很著名的设计...
  • Java数据库数据比较问题

    千次阅读 2017-06-23 20:47:59
    Java连接数据库,并比较数据库中两张表的数据是否相同, 相同打印true, 不相同打印false。 请大神们教小白, 万分感谢!!!!!!!
  • Java数据库连接池(二)

    千次阅读 2012-03-20 09:31:25
    Java数据库连接池(二)   连接池需要解决的问题  连接池在Java应用中扮演着重要的角色,J2EE已经将连接池作为Java的一项基本规范纳入到JDBC4.0中,可见连接池的重要性。作为所有的连接池都...
  • Java数据库连接池实现原理

    万次阅读 多人点赞 2016-05-29 16:33:02
    一般来说,Java应用程序访问数据库的过程是:  ①装载数据库驱动程序;  ②通过jdbc建立数据库连接;  ③访问数据库,执行sql语句;  ④断开数据库连接。 public class DBConnection { private Connection ...
  • Java 数据库的视图

    千次阅读 2012-06-04 16:03:39
    数据库的视图 视图概念 前面已经提到过视图(View),这一节专门讨论视图的概念、定义和操作。 视图是从一个或多个表(或视图)导出的表。视图是数据库的用户使用数据库的观点。例如,对于一个学校,其学生的情况...
  • java数据库系统开发案例精选

    千次阅读 2008-01-24 09:14:00
    中文名称:java数据库系统开发案例精选资源类型:ISO版本:随书光盘发行时间:2007年03月地区:大陆语言:普通话简介:明日科技 王国辉 吕海涛 李钟尉 编著 人民邮电出版社《java数据库系统开发案例精选》 随书光盘...
  • ![图片说明](https://img-ask.csdn.net/upload/201603/09/1457491220_970032.png) 我写了这段代码。为什么数据库那边数据没更新呢。

空空如也

1 2 3 4 5 ... 20
收藏数 196,805
精华内容 78,722
关键字:

java数据库

java 订阅