ibatis学习(5)sqlMap注意事项

1.sqlMap的整体理解:配置设置之后,就是建立了一个sqlMAP(ID,SQL),可以向其中输入参数,也可与返回数据。  

<!--select标签:设置SQL的ID,并给SQL设置返回值 -->

   <select id="selectAllStudent"resultClass="Student">

       select * from student

   </select>

<!--typeAlias标签:给类名取了一个别名 -->

<typeAlias alias="student"type ="Student" />

2.理解SQL语句中的参数书写方式

 1)理解#id#的意思:

      #id#   就相当与占位符,就像JDBC里面的“?”。

     
parameterClass="int"  就相当于设置“?”的类型。 

          对于一般基本类型:

 <select id="selectStudentByID"  parameterClass="int"  resultClass="Student">

       select * from student

       where id=#id#

   </select>

      
对于引用类型:

     当读到#id#的时候,就会调用到参数中的get方法,而调用哪个get是看#
#里面的内容。

     #Id#  
就是调用getID的方法。所以,values中内容顺序是不能换的。

<insert id="insertStudent"   parameterClass="Student">

       insert into Student(id,name,brith)

       values(#id#,#name#,#brith#)

   </insert>

   2)select语句中模糊查询   

          where 从句中 LIKE "%$name$%" $name$
会取到name的值

3.序列生成主键

<selectKey>  </selectKey>中先查询到ID,在插入。

       resultClass="int"就是指得到的返回值。

       keyPropery="id"  
是指Student中的id,而不是数据库中的id,代表赋值给Student
id

<insert id="insertStudentBySequence"   parameterClass="Student">

       <selectKey  resultClass="int"keyPropery="id">

       select xuelie.nextVal  from dual

       </selectKey>

       insert into Student(id,name,brith)

       values(#id#,#name#,#brith#)

   </insert><span style="color:black;">  </span>

4.注意点: 

    在写实体类的时候,要知道SQLMAP运行过程中,会动态调用实体类的相关方法和属性,构建时必须提供无参构造函数。否则会出错误。

 

5.优点:把SQL语句和Java代码分离

   缺点:1.SQL语句需要自己写

               2.参数使用不方便,需要把所有的参数都打包成一个对象,才能接收。  

时间: 2024-08-04 16:50:59

ibatis学习(5)sqlMap注意事项的相关文章

ibatis学习笔记(完整)

1.       Ibatis是开源软件组织Apache推出的一种轻量级的对象关系映射(ORM)框架,和Hibernate.Toplink等在java编程的对象持久化方面深受开发人员欢迎. 对象关系映射(ORM):简单原理是通过面向对象方式操作关系型数据库,目前存储数据最常用最流行的工具是关系型数据库,其操作方式是通过SQL语句操作数据库的表,但是对于Java面向对象编程语言中,所有的操作对象都是对象,因此对象关系映射就是把数据库表和java编程语言中的对象对应起来,把表的列同java对象中的字

【web开发学习笔记】ibatis学习总结

ibatis学习总结 ibatis数据库配置文件 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE sqlMapConfig PUBLIC "-//ibatis.apache.org//DTD SQL Map Config 2.0//EN" "http://ibatis.apache.org/dtd/sql-map-config-2.dtd"> <

学习笔记 | sqlmap常用命令

请移步以下链接查看本文章 学习笔记 | sqlmap常用命令 http://www.lofter.com/lpost/1f350fa3_120429c7 原文地址:http://blog.51cto.com/1425831735/2059514

Ibatis学习总结2--SQL Map XML 配置文件

SQL Map 使用 XML 配置文件统一配置不同的属性,包括 DataSource 的详细配置信息, SQL Map 和其他可选属性,如线程管理等.以下是 SQL Map 配置文件的一个例子: SqlMapConfig.xml. 1 <?xml version="1.0" encoding="UTF-8" ?> 2 3 <!DOCTYPE sqlMapConfig 4 5 PUBLIC "-//iBATIS.com//DTD SQL M

Ibatis学习2 ---配置文件学习

1.Ibatis.Net 主要用到三个配置SqlMap.config Providers.config  XXXX.xml  SqlMap.config  主要用于配置数据库连接.缓存控制类等信息. providers.config   主要用于指定数据库 xxxxx.xml   主要用于设置映射规则 2.不指定配置文件的位置 配置文件应该放置在默认的位置 Windows应用项目或者类库项目,需要放在项目的bin/debug目录下 在Web应用程序中,需要放在应用程序根目录 在初始化数据库连接的

IBatis学习

(1)建立 SqlMap.config文件 <?xml version="1.0" encoding="utf-8" ?> <sqlMapConfig xmlns="http://ibatis.apache.org/dataMapper" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <!--<properties resour

Ibatis学习总结4--SQL Map XML 映射文件扩展

SQL Map XML 映射文件除了上文提到的属性还有一些其他重要的属性,下文将详细介绍这些属性. 缓存 Mapped Statement 结果集 通过在查询 statement 中指定 cacheModel 属性,可以缓存 Mapped Statement 中得到的查 询结果.Cache  model  是在 SQL  Map  XML  文件中定义的可配置缓存模式,可以使用 cacheModel 元素来配置. 1 <cacheModel id="product-cache"

Ibatis学习3--操作数据库(插入删除更新修改)

<?xml version="1.0" encoding="utf-8" ?> <sqlMap namespace="Ibatis" xmlns="http://ibatis.apache.org/mapping" xmlns:xls="http://www.w3.org/2001/XMLSchema-instance"> <resultMaps> <resultM

JavaScript语言学习中的注意事项

javascript: 基于浏览器 基于对象 事件驱动 脚本语言 由: javascript: ECMAscript(ES) DOM文档对象模型 BOM浏览器对象模型,三部分组成 使用js的三种方式 1.HTML标签中内嵌js:<button ondblclick="javascript:alert('ssas')">点我呀!!!</button> 不建议使用 2.在HTML页面中直接使用: <script type="text/javascri