摘要: 有了对 iBatis 配置系统的一些认识后,现在就先来简单了解一下, iBatis 是通过什么的方式去调用映射文件的 SQL 语句的。这对我们接下来深入了解有很大的帮助。 对于简单的 iBatis 应用场合来说,我想大部分都是集中在与 SqlMapper 对象打交道。这个类应该说是一个工具类,因为我们一般都是直接调用这个类的方法去执行 QUID 操作,但是它却不是真正的去做这些事情。因为 iBatis 内部有很多的类,对象之间的关系是非常复杂的,如果让客户直接去使用它内部方法,无疑增加了使用的复杂性,同样也会产生很多的冗余代码。因此这里它使用外观设计模式,通过 SqlMapper 类封装了 i 阅读全文
posted @ 2010-04-13 11:10 cpcpc 阅读(243) 评论(0) 推荐(0)
摘要: iBatis 的核心就在于映射文件 (Data Map XML File) 。在映射文件里可以定义包括要执行各种 SQL 语句,存储过程,输入参数映射,返回结果映射,缓存机制,并且能通过几种相对比较复杂的配置实现对象之间的关联关系和延迟加载。这也是 iBatis 区别 ORM 框架的,具备更灵活性,更高性能的关键所在。 配置文件可以写得很简单,也可以很复杂。复杂配置文件也是出于更好的设计,更好性能,更好扩展性方面的目的。再复杂的配置文件也是有限的,一个映射文件包括: Mapped Statements 、 Parameter Maps 、 Result Maps 、 Cache Models 阅读全文
posted @ 2010-04-13 11:09 cpcpc 阅读(226) 评论(0) 推荐(0)
摘要: 刚爬完鼓山回来,想到这篇刚刚开始,不敢怠慢,洗完澡休息一下就到电脑旁边来了。现在我开始介绍一下 iBatis 的配置和日志处理吧。 iBatis 基本的运行环境配置主要由两个文件组成,分别是 SqlMap.config 和 Provider.config 。它们是必需的两个配置文件,基中 SqlMap.config 的功能类似于 web.config 或者 app.config ,是 iBatis 核心的配置文件,它的存放路径也跟应用程序配置文件一样,必须放在应用程序的运行目录下并且它的文件名是保留的,不可改变的。而 Provider.config 是一个数据驱动提供类的配置,它的文件名是可以 阅读全文
posted @ 2010-04-13 11:08 cpcpc 阅读(262) 评论(0) 推荐(0)
摘要: 学习和使用 Ibatisnet 已经有一段时间了,前段时间也有写过一些与 iBatis 相关的 Blog 。也答应过一些朋友要比较全面地介绍一下 iBatis ,分享自己的学习过程和使用经验,记录一些常见且容易出现的问题。但由于前段时间一直在准备考试,而且当前的项目时间进度也比较紧,所以一直迟迟未能开始,在这里表示歉意,希望现在开始不会晚。不过最近社区(博客园)好消息不断,我发现越来越多的人开始关注 iBatis 了,并且也有热心网友在极力推广,如果您已经对它已经有一些了解了,那么更推荐您去阅读 ShanYou 的文章,他写的文章可能更加适合您。我本人也是一名初学者,这里记录的一些东西可能不会 阅读全文
posted @ 2010-04-13 11:06 cpcpc 阅读(198) 评论(0) 推荐(0)
摘要: 二十几岁必须看透的50个人生谬误谬误01 个人只能被现实改变如果你变得足够强大,别人就无法拒绝你;如果你可以命令自己,困难就无法阻碍你……只要首先改变了你自己,你才能去改变你的世界,改变你的生活。谬误02 为何怀才不遇的总是我世上没有怀才不遇,只有不懂得自我推销的人;怀才不遇的真相就是自己不够优秀,不够努力。谬误03 凡事有他人相助,才会轻易成功人生路上,一切都得靠自己——靠自己的理解,靠自己的意志,靠自己的追求……人生是一张单程的车票,一去无返,我们能做的只有不断努力,我们能依靠的只有自己。谬误04 做任何事,给自己多留后路好给自己一片没有退路的悬崖,是给自己一个向生命高地冲锋的机会,也是给 阅读全文
posted @ 2010-03-13 16:39 cpcpc 阅读(290) 评论(0) 推荐(0)
摘要: 问题描述:本题用到下面三个关系表:CARD 借书卡。 CNO 卡号,NAME 姓名,CLASS 班级BOOKS 图书。 BNO 书号,BNAME 书名,AUTHOR 作者,PRICE 单价,QUANTITY 库存册数 BORROW 借书记录。 CNO 借书卡号,BNO 书号,RDATE 还书日期备注:限定每人每种书只能借一本;库存册数随借书、还书而改变。要求实现如下15个处理: 1. 写出建立BORROW表的SQL语句,要求定义主码完整性约束和引用完整性约束。 2. 找出借书超过5本的读者,输出借书卡号及所借图书册数。 3. 查询借阅了"水浒"一书的读者,输出姓名及班级。 阅读全文
posted @ 2010-03-09 16:20 cpcpc 阅读(463) 评论(0) 推荐(0)
摘要: Student(S#,Sname,Sage,Ssex) 学生表 Course(C#,Cname,T#) 课程表 SC(S#,C#,score) 成绩表 Teacher(T#,Tname) 教师表 问题: 1、查询“001”课程比“002”课程成绩高的所有学生的学号; select a.S# from (select s#,score from SC where C#='001') a,(select s#,score from SC where C#='002') b where a.score>b.score and a.s#=b.s#; 2、查询平均成 阅读全文
posted @ 2010-03-09 16:13 cpcpc 阅读(281) 评论(0) 推荐(0)
摘要: 三层架构,数据层(DAL)、逻辑层(BLL)、表示层(UI);三层结构的优点分层式结构究竟其优势何在?Martin Fowler在《Patterns of Enterprise Application Architecture》一书中给出了答案:1、开发人员可以只关注整个结构中的其中某一层;2、可以很容易的用新的实现来替换原有层次的实现;3、可以降低层与层之间的依赖;4、有利于标准化;5、利于各层逻辑的复用。概括来说,分层式设计可以达至如下目的:分散关注、松散耦合、逻辑复用、标准定义。一个好的分层式结构,可以使得开发人员的分工更加明确。一旦定义好各层次之间的接口,负责不同逻辑设计的开发人员就可 阅读全文
posted @ 2010-03-09 15:43 cpcpc 阅读(302) 评论(0) 推荐(0)
摘要: 1. oncontextmenu="window.event.returnValue=false" 将彻底屏蔽鼠标右键<table border oncontextmenu=return(false)><td>no</table> 可用于Table2. <body onselectstart="return false"> 取消选取、防止复制3. onpaste="return false" 不准粘贴4. oncopy="return false;" oncut=&q 阅读全文
posted @ 2010-03-09 12:46 cpcpc 阅读(151) 评论(0) 推荐(0)
摘要: (转 原文地址http://blog.sina.com.cn/s/blog_524c848901009e7b.html~type=v5_one&label=rela_nextarticle作者李洋的博客 http://blog.sina.com.cn/liiyang)66.软件开发过程一般有几个阶段?每个阶段的作用?答:需求分析,架构设计,代码编写,QA,部署67.在c#中using和new这两个关键字有什么意义,请写出你所知道的意义?using 指令 和语句 new 创建实例 new 隐藏基类中方法。答:using 引入名称空间或者使用非托管资源new 新建实例或者隐藏父类方法68. 阅读全文
posted @ 2010-03-08 10:22 cpcpc 阅读(221) 评论(0) 推荐(0)