jdbc:java数据库连接
1.导jar包
	四大参数:
		1.加载驱动类:Class.forName("com.mysql.jdbc.Driver");
		2.url:jdbc:mysql://localhost:3306/数据库名 //jdbc:厂商名://子协议/数据库名
#mysql
		#url=jdbc:mysql://localhost:3306/mydb?
			useUnicode=true&characterEncoding=utf8
			&useServerPrepStmts=true
			&cachePrepStmts=true
			&prepStmtCacheSize=50
			&prepStmtCacheSqlLimit=300
		#driverClassName=com.mysql.jdbc.Driver
#mssql
		#driverClassName=com.microsoft.jdbc.sqlserver.SQLServerDriver
		#url=jdbc:sqlserver://127.0.0.1:1433;DatabaseName=mydb
#mssql jtds
		#driverClassName=net.sourceforge.jtds.jdbc.Driver
		#url=jdbc:jtds:sqlserver://127.0.0.1:1433;DatabaseName=mydb
#orcale
		#driverClassName=oracle.jdbc.driver.OracleDriver
		#url=jdbc:oracle:thin:@localhost:1521:mydb
#access
		#driverClassName=sun.jdbc.odbc.JdbcOdbcDriver
		#url=jdbc:odbc:driver={Microsoft Access Driver (*.mdb)};DBQ=mdb\\mydb.mdb
3.username:用户名
		4password:密码
Connection conn = DriverManager.getConnection(url, user, password);
驱动类是java.sql.Driver的实现类
对数据库做增、删、改
	1.通过connection对象创建Statement
	2.Statement语句的发送器,它的功能就是向数据库发送sql语句
	3.调用它的int executeUpdate(String sql),它可以发送DML,DDL,返回的事影响的行数
		Statement st = conn.createStatement();
		String sql = "insert into hasbend values(null,'小明')";
		int r = st.executeUpdate(sql);
执行查询
	1.通过connection对象创建Statement
	2.Statement语句的发送器,它的功能就是向数据库发送sql语句
	3.调用它的int executeQuery(String querysql),返回的是结果集;
		Statement st = conn.createStatement();
		ResultSet rs = st.executeQuery("select * from emp");//得到结果集
		ResultSetMetaData rsmd = rs.getMetaData();//获取此 ResultSet 对象的列的编号、类型和属性。 
		for(int i = 1;i<=rsmd.getColumnCount();i++){// 返回此 ResultSet 对象中的列数。
			System.out.print(rsmd.getColumnName(i)+"|");//获取指定列的名称。
		}
		while(rs.next()){
			for(int i = 1;i<=rsmd.getColumnCount();i++){
				System.out.print(rs.getString(i)+"|");//获取此 ResultSet 对象的当前行中指定列的值
			}
			System.out.println();
		}
	4.关闭资源,倒关
		rs.close();
		st.close();
		conn.close();
规范化
preparedStatement
	Statement的子接口
	强大之处
		防sql攻击
		提高代码的可读性、可维护性
		提高效率
	preparedStatement的用法
		如何得到preparedStatement对象
		1.给出sql模板
		2.调用Connection的preparedStatement(sql)方法;
		3.调用preparedStatement的setXxx系列方法给sql模板中的?赋值
		4.调用preparedStatement的executeQuery();或这executeUpdate()方法,但是它的方法都没有参数;
	预处理的原理
		服务器的工作
			校验sql语句的语法
			编译:一个与函数相似的东西
			执行:调用函数
		preparedStatement
			前提:连接的数据库必须支持预处理,几乎没有不支持的
jdbc:java数据库连接的更多相关文章
- jdbc java数据库连接 11)中大文本类型的处理
		
1. Jdbc中大文本类型的处理 Oracle中大文本数据类型, Clob 长文本类型 (MySQL中不支持,使用的是text) Blob 二进制类型 MySQL数据库, Text ...
 - jdbc java数据库连接 6)类路径读取——JdbcUtil的配置文件
		
之前的代码中,以下代码很多时候并不是固定的: private static String url = "jdbc:mysql://localhost:3306/day1029?useUnic ...
 - jdbc java数据库连接 5)CallableStatement 接口
		
CallableStatement执行存储过程(也是预编译语言) 首先在sql中执行以下带有输入参数的代码: DELIMITER $ CREATE PROCEDURE pro_findById(IN ...
 - jdbc java数据库连接 3)Statement接口之执行DDL和DML语句的简化
		
上一章的代码中,可以发现,jdbc执行DDL和DML有几个步骤都是一样的: 1)执行语句开始时,创建驱动注册对象.获取连接的数据库对象.创建Statement对象 // 创建驱动注册对象 Class. ...
 - jdbc java数据库连接 2)jdbc接口核心的API
		
JDBC接口核心的API java.sql.* 和 javax.sql.*(java2.0以后更新的扩展) |- Driver接口: 表示java驱动程序接口.所有的具体的数据库厂商要来实现此接 ...
 - jdbc java数据库连接  1)jdbc入门
		
之前操作数据 1)通过mysql的客户端工具,登录数据库服务器 (mysql -u root -p 密码) 2)编写sql语句 3)发送sql语句到数据库服务器执行 什么是jdbc? 使用jav ...
 - jdbc java数据库连接 10)批处理
		
批处理 很多时候,需要批量执行sql语句! 需求:批量保存信息! 设计: AdminDao Public void save(List<Admin list){ // 目前用这种方式 ...
 - jdbc java数据库连接 8)防止sql注入
		
回顾下之前jdbc的开发步骤: 1:建项目,引入数据库驱动包 2:加载驱动 Class.forName(..); 3:获取连接对象 4:创建执行sql语句的stmt对象; 写sql 5:执行sql ...
 - jdbc java数据库连接 7)获取插入数据的自增长值
		
我们创建一个sql表,里面的数据往往都会有自增长值. 那么,我们用jdbc插入数据的时候,要想同时获得这个增长值. 代码: /** * * 这是插入一条数据的同时,获取该数据的则增长列的值(该例子的自 ...
 
随机推荐
- Android ——Handler相关
			
layout文件: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:an ...
 - CSS3卡片旋转效果
			
HTML: <div id="rotate"> <div id="rotate_wrap"> <div id="fron ...
 - 论文笔记之:Generative Adversarial Nets
			
Generative Adversarial Nets NIPS 2014 摘要:本文通过对抗过程,提出了一种新的框架来预测产生式模型,我们同时训练两个模型:一个产生式模型 G,该模型可以抓住数据分 ...
 - JSBinding+SharpKit / MonoBehaviour替换成JSComponent原理
			
Unity 是基于组件式的开发,gameObject 身上可以绑定任意个脚本.每个脚本组成 gameObject 的一个部分. 脚本里通过添加预定义好的函数来执行自己的任务.比如Awake,用于初始化 ...
 - MyISAM 和InnoDB区别
			
MyISAM 和InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定.基本的差别为:MyISAM类型不支持事务处理等高级处理 ...
 - 伪类选择器:root的妙用
			
css3的元素旋转功能非常强大,也非常吸引人,但是很多时候因为浏览器使用率的问题,我们必需要想办法兼容一些低版本的浏览器,特别是ie这朵奇葩. 想要实现元素旋转本来很简单的一个属性就能实现,那就是tr ...
 - JavaScript 札记(数据类型和变量、)
			
1. 变量名由:字母.下划线.$.数字组成,只可以字母.下划线.$开头. 2.JavaScript区分大小写! 3.命名规范:匈牙利命名法(不论是变量名还是函数名). 4.基本类型(3种):字符串.数 ...
 - 【C语言模拟实现】浮点数-转-定点数
			
要想超神,就要什么都精! 知识准备: 1. 输出浮点数的十六进制形式?(利用指针输出) 将浮点数指针-转换成-整型指针,以十六进制的格式输出指针内容. 示例程序: #include<stdio. ...
 - ASP.NET Cookie 概述【转】
			
来源:http://msdn.microsoft.com/zh-cn/library/ms178194(VS.80).aspx ASP.NET Cookie 概述 Cookie 提供了一种在 Web ...
 - 原生js的String类扩展
			
文章转自:http://www.cnblogs.com/zfc2201/archive/2012/12/16/2820335.html JS String类拓展方法: //获取字符数组 String. ...