开发项目的流程说明:
1.包的说明:
com.fourknow.bean JavaBean(要与数据库的表对应:类名与表相同,属性与名与列名相同)
com.foreknow.dao/com.foreknow.dao.impl 利用JDBC对数据库操作(增 删 改 查)
com.foreknow.service/com.foreknow.service.impl 项目的业务流程(逻辑)
com.foreknow.util 工具包:常用的工具类
PropertyUtil 工具类:对文件进行解析的(读取datainfo.properties文件的)
com.foreknow.db 主要负责对数据库操作的JDBC工具类
2.对日志的处理:可能通过日志信息来确认对数据库操作的失误
第三方的库:log4j-1.2.16.jar commons-logging-1.0.4.jar 网上下载
log4j.properties 配置文件一定要写到src下面
3.datainfo.properties:数据库的一些配置信息
4.JDBC核心工具类:
DBManager:它是单例 通过静态方法得到的对象都是同一个对象 节省内存空间
作用是通过getConnection来连接数据库的
可以测试连接数据库是否成功
JdbcTemplate(模板类):
setAutoCommit(boolean autoCommit)
将此链接的自动提交模式设置为给定状态
autoCommit - 为true 表示启动自动提交模式 : 为false 表示禁用自动提交模式
默认情况下 JDBC中的事物默认是自动提交,通常情况下,我们的事物在分层的操作中,
都要在业务层(Service)来处理事物啊,所以我们才要将JDBC中事物的提交方式改为手动提交,setAutoCommit改为(false)
面试所要问的问题?
什么叫事物?
事物就是一系列操作,如果这些操作都成功就要提交事物 (让数据生效)
回滚 :有一步失败就取消之前所有操作 这叫做回滚
在你的项目中事物如何处理的?
调用Connection接口中的setAutoCommit(false)方法,将事物设置为手动提交,然后在Service层来处理事物