JDBC学习

JDBC基本:加载驱动,执行sql,增删改

package jdbc;

import java.sql.DriverManager;
import java.sql.SQLException;
import java.sql.Statement;

import com.mysql.jdbc.Connection;

public class helloJDBC {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		java.sql.Connection c = null;
		Statement statement=null;
		try {
			Class.forName("com.mysql.jdbc.Driver");//加载驱动
			c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8","root","755757");//数据库基本信息 how2java是数据库的名字
			statement = c.createStatement();
			
			String sql = "insert into hero values(null,'提莫',313.0,50)  ";
			for(int i=0;i<50;i++) {
				statement.execute(sql);	
			}
			System.out.println("obj is"+ sql);
		} catch (ClassNotFoundException e) {
			e.printStackTrace();
		} catch (SQLException e) {
			e.printStackTrace();
		}finally {
			if(statement!=null)
				try {
					statement.close();
				} catch (SQLException e2) {
					// TODO: handle exception
					e2.printStackTrace();
				}
			else if(c!=null) {
				try {
					c.close();
				} catch (SQLException e2) {
					// TODO: handle exception
					e2.printStackTrace();
				}
			}
		}
	}

}

基本框架是这样的,不同的是修改sql语句:
增加:

insert into hero values(null,'提莫',313.0,50)

删除

delete from hero where id = 5

修改

update hero set name = 'name 5' where id = 3

标题JDBC:Preparestatement

String sql = "insert into hero values(null,?,?,?)";
try (Connection c = DriverManager.getConnection("jdbc:mysql://127.0.0.1:3306/how2java?characterEncoding=UTF-8","root", "admin");
            // 根据sql语句创建PreparedStatement
            PreparedStatement ps = c.prepareStatement(sql);
        ) {
             
            // 设置参数
            ps.setString(1, "提莫");
            ps.setFloat(2, 313.0f);
            ps.setInt(3, 50);
            // 执行
            ps.execute();
  
        } 

创建ps之后,设置不同的参数,setString,setFloat.

标题execute与executeUpdate的区别

不同1:
execute可以执行查询语句
然后通过getResultSet,把结果集取出来
executeUpdate不能执行查询语句
不同2:
execute返回boolean类型,true表示执行的是查询语句,false表示执行的是insert,delete,update等等
executeUpdate返回的是int,表示有多少条数据受到了影响

获取元数据

		DatabaseMetaData dbmd = c.getMetaData();
		
        // 获取数据库服务器产品名称
        System.out.println("数据库产品名称:\t"+dbmd.getDatabaseProductName());
        // 获取数据库服务器产品版本号
        System.out.println("数据库产品版本:\t"+dbmd.getDatabaseProductVersion());
        // 获取数据库服务器用作类别和表名之间的分隔符 如test.user
        System.out.println("数据库和表分隔符:\t"+dbmd.getCatalogSeparator());
        // 获取驱动版本
        System.out.println("驱动版本:\t"+dbmd.getDriverVersion());

        System.out.println("可用的数据库列表:");
        // 获取数据库名称
        ResultSet rs = dbmd.getCatalogs();

        while (rs.next()) {
            System.out.println("数据库名称:\t"+rs.getString(1));
        }

事务

将connection关闭自动提交,使用手动提交,便会自动使用事务
c.setAutoCommit(false);
statement执行完sql之后:
c.commit();
要么都成功,要么都失败。

ORM=Object Relationship Database Mapping
对象和关系数据库的映射

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的体育馆管理系统,源码+数据库+毕业论文+视频演示 现代经济快节奏发展以及不断完善升级的信息化技术,让传统数据信息的管理升级为软件存储,归纳,集中处理数据信息的管理方式。本体育馆管理系统就是在这样的大环境下诞生,其可以帮助管理者在短时间内处理完毕庞大的数据信息,使用这种软件工具可以帮助管理人员提高事务处理效率,达到事半功倍的效果。此体育馆管理系统利用当下成熟完善的SpringBoot框架,使用跨平台的可开发大型商业网站的Java语言,以及最受欢迎的RDBMS应用软件之一的Mysql数据库进行程序开发。实现了用户在线选择试题并完成答题,在线查看考核分数。管理员管理收货地址管理、购物车管理、场地管理、场地订单管理、字典管理、赛事管理、赛事收藏管理、赛事评价管理、赛事订单管理、商品管理、商品收藏管理、商品评价管理、商品订单管理、用户管理、管理员管理等功能。体育馆管理系统的开发根据操作人员需要设计的界面简洁美观,在功能模块布局上跟同类型网站保持一致,程序在实现基本要求功能时,也为数据信息面临的安全问题提供了一些实用的解决方案。可以说该程序在帮助管理者高效率地处理工作事务的同时,也实现了数据信息的整体化,规范化与自动化。 关键词:体育馆管理系统;SpringBoot框架;Mysql;自动化
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值