ibatis
ado1986
非典型程序员
展开
-
ibatis命名空间(namespace)使用
在ibatis中使用命名空间,首先需要在配置文件中进行如下设置: 然后在各个mapping配置文件中,设置namespace,如下: 另外,不管是在mapping配置文件还是在程序中调用,都需要指定namespace前缀,否则会抛出异常。 注意:一旦在配置文件中设置了使用命名空间,则所有地方都有注明命名空间。原创 2013-02-02 13:57:38 · 3789 阅读 · 0 评论 -
ibatis一对一、一对多实现以及性能分析
在数据库中比较常见一对一、一对多的数据,本文将叙述如何用多种方式实现这些关联关系,并对这些方法进行比对和分析。 例子假设的场景如下: 有两张表:product(产品)、category(种类),一个产品只属于某一个种类,但某一个种类下可以有多个产品。 一对一 场景: 查询某个产品,并列示出该产品所属的种类。 实现一对一的关系有两种方式。原创 2013-02-02 16:25:43 · 4021 阅读 · 0 评论 -
ibatis延迟加载
ibaits中延迟加载的含义是在使用到某个对象时,再去加载具体的数据(执行查询语句),否则不会对数据进行加载。 ibatis查询数据库时,会调用ResultMap.getResults(StatementScope statementScope, ResultSet rs)方法,其实现如下: public Object[] getResults(StatementScope sta原创 2013-02-02 17:17:59 · 1380 阅读 · 0 评论 -
ibatis和hibernate重点知识及比较
重点: 关联关系(一对一、一对多等)、延迟加载、缓存 1、加载数据 hibernate: get不支持延迟加载、load支持延迟加载。 加载数据时,如果没有匹配的数据,get返回null,load则抛出以异常。 可以对查询对象进行延迟加载。 ibatis: 也支持延迟加载。 查询结果对象中的某个字段通过子查询获取值时,会进行延迟加载。如果不采用CGLIB,仅支持Collec原创 2013-03-09 22:37:25 · 1000 阅读 · 0 评论