JDBC操作数据库

1、概述

JDBC操作数据库_第1张图片

2、JDBC

JDBC操作数据库_第2张图片

3、项目引用jar包

JDBC操作数据库_第3张图片JDBC操作数据库_第4张图片

注:在finally中反向关闭资源

rs.close();

stmt.close();

conn.close();

4、创建配置文件读取数据库信息

JDBC操作数据库_第5张图片

load方法IO操作消耗资源,因此创建工具类将读取属性文件封装,使用单例模式,控制工具类实例生成的个数,提升程序性能。

(私有构造方法,并且在该方法中读取属性文件;创建getInstance方法限制对象的数量,只能有一个)

 JDBC操作数据库_第6张图片 JDBC操作数据库_第7张图片

5、使用JDBC实现信息的增加、删除、修改

 更换Statement对象为PreparedStatement,插入数据使用占位符:

JDBC操作数据库_第8张图片

JDBC操作数据库_第9张图片

JDBC操作数据库_第10张图片

JDBC操作数据库_第11张图片

6、创建BaseDao

JDBC操作数据库_第12张图片

JDBC操作数据库_第13张图片

JDBC操作数据库_第14张图片

JDBC操作数据库_第15张图片

JDBC操作数据库_第16张图片

JDBC操作数据库_第17张图片

将NewsDao转换成接口,降低耦合:

JDBC操作数据库_第18张图片

创建实现类包,创建实现类NewsDaoImpl(将BaseDao和NewsDao放入dao包中):

JDBC操作数据库_第19张图片

JDBC操作数据库_第20张图片

JDBC操作数据库_第21张图片

JDBC操作数据库_第22张图片

JDBC操作数据库_第23张图片

验证:

JDBC操作数据库_第24张图片

7、使用数据源、连接池达到重用数据库连接的目的,提高性能

JDBC操作数据库_第25张图片

在Tomcat中配置数据源的步骤:

JDBC操作数据库_第26张图片

JDBC操作数据库_第27张图片

通过JNDI根据name获取数据源:

JDBC操作数据库_第28张图片

JDBC操作数据库_第29张图片

如果结果为null,修改这个地方:

JDBC操作数据库_第30张图片

异常处理:

javax.naming.NoInitialContextException: Need to specify class name in environment or system property, or as an applet parameter, or in an application resource file:  java.naming.factory.initial
 at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:645)
 at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
 at javax.naming.InitialContext.getURLOrDefaultInitCtx(InitialContext.java:325)
 at javax.naming.InitialContext.lookup(InitialContext.java:392)
 at main.java.com.ljb.dao.BaseDao.getConnection2(BaseDao.java:59)
 at main.java.com.ljb.dao.BaseDao.executeUpdate(BaseDao.java:91)
 at main.java.com.ljb.dao.impl.ProductDaoImpl.add(ProductDaoImpl.java:97)
 at main.java.com.ljb.dao.impl.ProductDaoImpl.main(ProductDaoImpl.java:157)
Exception in thread "main" java.lang.NullPointerException
 at main.java.com.ljb.dao.BaseDao.executeUpdate(BaseDao.java:93)
 at main.java.com.ljb.dao.impl.ProductDaoImpl.add(ProductDaoImpl.java:97)
 at main.java.com.ljb.dao.impl.ProductDaoImpl.main(ProductDaoImpl.java:157)

数据源由Tomccat容器创建,因此必须启动Tomcat,运行该项目

JNDIdemo。jsp运行结果:

8、小结

JDBC操作数据库_第31张图片

 JDBC操作数据库_第32张图片

 JDBC操作数据库_第33张图片

JDBC操作数据库_第34张图片

 

 

你可能感兴趣的:(jdbc)