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
前提:连接的数据库必须支持预处理,几乎没有不支持的

最新文章

  1. EF6 对多个数据库,多个DBContext的情况 进行迁移的方法。
  2. PYTHON学习之路_PYTHON基础(1)
  3. 开发人员应该对IIS理论层的知识了解的多一些~第四讲 HttpModule中的几大事件
  4. paip.刮刮卡砸金蛋抽奖概率算法跟核心流程.
  5. ASP.NET5 中静态文件的各种使用方式
  6. spring事务的传播特性
  7. SQL server数据类型int、bigint、smallint、tinyint
  8. 纯CSS实现delay连续动画
  9. 控制台下的计算器——C++实现
  10. 修改注册表添加IE信任站点及启用Activex控件
  11. 利用canvas制作乱跑的小球
  12. java中静态代码块,构造代码块,以及构造方法的执行顺序
  13. 201521123037 《Java程序设计》第12周学习总结
  14. vs Code 运行一个本地WEB服务器
  15. 浅谈Java的主要学习要点_上海尚学堂java培训课程思维导图
  16. day5 if else elif 判断语句
  17. Python文件读写及网站显示
  18. 关于 kali linux
  19. maven 学习笔记--仓库,聚合和继承,私服搭建
  20. jQuery学习笔记(DOM操作)

热门文章

  1. 前后台Json的转换
  2. PocketSphinx语音识别和turtlebot的语音控制--18
  3. 《jave程序设计》第一周学习总结
  4. HDU-4521 小明系列问题――小明序列(线段树)
  5. Mac OS实用技巧
  6. Scrum 项目2.0
  7. IOCP 浅析
  8. 关于CPU Cache -- 程序猿需要知道的那些事
  9. sql复制表
  10. Python语言初学总结