黑马程序员技术交流社区

标题: [石家庄校区]JDBC&XML课堂笔记 [打印本页]

作者: 学习让我快乐啊    时间: 2018-5-21 17:52
标题: [石家庄校区]JDBC&XML课堂笔记
本帖最后由 学习让我快乐啊 于 2018-5-21 18:01 编辑

JDBC

一个应用:
​        高性能,高可用
高可用:
​        代码的复用性
对扩展是开放的,对修改源码是关闭的
模糊查询时,最好将占位符放到变量中
preparedstatement批处理只预编译一次
相关APIJDBC开发步骤
step1:注册驱动:Class.forName()
step2:获得连接:Connection conn = DriverManger.getConnection(url,username,password)
step3:编写SQL语句,String sql ="",值的地方用占位符?代替
step4:预编译sql并且获得可执行sql语句的对象PreparedStatement ps = conn.prepareStatemet(String sql)
step5:为sql语句设置值,用值代替sql语句中的?  ps.setXXX(int n,值) n:代表第几个问号的意思,从1开始
step6:执行sql语句
    如果是查询:ResutSet rs = ps.executeQuery();//获得结果集
    如果是增删改:int num = ps.executeUpdate() ;// num 代表影响的行数
step7:释放资源CRUD操作属性Properties
Properties prop = new Properties();
prop.load(new FileInputeStream(String path或File对象));
prop.getProperty(String key);批处理
String sql = "insert into user values (null,?)";
// 预编译SQL:
pstmt = conn.prepareStatement(sql);
for(int i=1;i<=10000;i++){
    pstmt.setString(1, "name"+i);
    // 添加到批处理
    pstmt.addBatch();//注意内存溢出
    if(i % 1000 == 0){
        // 执行批处理:
        pstmt.executeBatch();
        // 清空批处理:
        pstmt.clearBatch();
    }
}事务连接池增强类中方法的方式
java的23种设计模式
Druid的概述
Druid阿里旗下开源连接池产品,使用非常简单,可以与Spring框架进行快速整合。
C3P0的连接池的概述
c3p0是一个开源的,JDBC来连接池,它实现了数据源和JND绑定,支持JDBC3规范和JDBC2的标准扩展。
DBUtils
DButils为web阶段用到的,封装JDBC,抽取成工具类,简化代码.
工具类编写原则:把相同或相似的代码抽取出来
DBUtils的查询操作步骤:query
1.查询表中的多条记录,把每条记录封装成一个对象,放进一个List集合.  2.查询一条记录,直接使用这个封装记录的对象.
XML
XML作为配置文件完成模拟Tomcat
XML的语法
XML的解析
XPath
XML的约束





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2