`
lizhuang
  • 浏览: 904347 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

iBatis加锁

 
阅读更多
ibatis有事务处理,它有代理类SqlMapExecutorDelegate
进行事务的处理,事务是为了保证数据的完整性的,一致性,持久性。每次调用Connection时设定隔离级别,在ibatis事务
每次执行Connection的时候取消了自动提交事务的默认级别,改为手动提交(setAutoCommit(false))。
事务处理完了之后会交给一个MappedStatement来处理:
1.这里先把一些错误信息进行了封装,程序出错了方便查找错误的地方。
2.能过MappedStatement存放它的<update>、<insert>、<selece>等节点。
3.这也是其中重点的所在,解析和传入传出的参数。
检查传入参数与sql配置的是否属于同一类型(isAssignableFrom方法检查的),然后执行sql语句。
分享到:
评论

相关推荐

    阿里巴巴Java编码规范考题.doc

    3. **iBatis使用**:iBatis是一个SQL映射框架,它允许将SQL语句与Java代码分离。在使用iBatis时,应注意SQL注入问题,使用参数绑定来传递值,而不是字符串拼接。 4. **防止空指针异常(NPE)**:在访问对象属性或...

    阿里巴巴编码规范题库.pdf

    - iBATIS自带的分页接口有性能问题,应避免使用。 - 定义清晰的SQL查询语句,通过参数控制分页。 - 虽然存储过程可能提高效率,但应谨慎使用,避免增加维护难度。 5. **权限控制**: - 对于敏感功能,如订单...

    78页超全阿里巴巴编码规范考题分析(78页试题).doc

    1. iBatis 是一个持久层框架,用于简化SQL操作。 2. 应避免在Mapper XML文件中直接写复杂SQL,以提高可维护性。 3. 使用动态SQL时,注意防止SQL注入。 **数据库设计**: 1. 主键字段通常是`id`,用于唯一标识每条...

    神舟数码笔试题.doc

    它们都是线程安全的,但 `StringBuilder` 是在单线程环境中效率更高,因为它不加锁。在多线程环境中,推荐使用 `StringBuffer`,而在单线程中,使用 `StringBuilder` 可以提高性能。 2. **JDBC(Java Database ...

    阿里巴巴编码规范 考题分析.doc

    3. **Ibatis 使用**:Ibatis 是一个轻量级的持久层框架,它允许开发者编写 SQL 脚本来操作数据库。规范中推荐合理使用动态 SQL 和缓存,避免硬编码 SQL,确保 SQL 可读性与安全性。 4. **表必备字段**:表通常应...

    JAVA工程师面试常见问题及答案

    - **乐观锁**通常通过版本号字段来实现,在读取数据时不会立即加锁,只有在更新数据时才会检查版本号是否发生变化。 - **悲观锁**则是在读取数据时就立即加锁,以确保数据的一致性。Hibernate支持多种级别的悲观锁,...

    (完整版)阿里巴巴编码规范(Java)题库.doc

    * iBATIS 自带的 queryForList(String statementName,int start,int size)分页接口有性能隐患,不允许使用。 * 定义明确的 sql 查询语句,通过传入参数 start 和 size 来实现分页逻辑。 五、接口使用 * 向公司外部...

    阿里代码规范练习题目及答案.docx

    - iBATIS的`queryForList`分页接口由于性能问题不推荐使用,应使用更明确的SQL语句进行分页。 - 避免在视图模板中添加复杂逻辑,以保持模板清晰。 5. **权限控制**: - 关键页面和功能,如订单详情、类目管理、...

    阿里代码规范练习题目及答案.pdf

    - iBATIS 的 `queryForList` 分页接口由于性能问题不建议使用。 - 定义清晰的 SQL 查询语句,通过参数实现分页。 - 虽然存储过程可以提高分页效率,但避免过度依赖,以保持SQL的透明度。 5. **权限控制**: - ...

    百度面试题汇总(java)

    19. **Hibernate与iBatis的区别**:Hibernate是一种全栈式的ORM框架,而iBatis更偏向于SQL映射框架。 20. **SQL优化技巧**:包括合理使用索引、避免使用SELECT *、减少嵌套查询等。 #### 二、项目经验 1. **描述...

Global site tag (gtag.js) - Google Analytics