MyBatis课件分享 01MyBatis入门
MyBatis课件分享-01MyBatis入门My Batis主配置文件1.学习经验:初学时不必纠结于每个技术细节,而应尽快先写出简单的实例来,树立学习自信心。随着学习的深入,会逐渐用到相应的技术点,这时再逐个突破,理解会深入得多,效率也高得多,自信也就更好地建立起来了2.主配置文件提供了 My Batis运行所需的核心配置信息,为创建Sq1 SessionFactory实例所必须。3. environment元素用于提供事务管理和数据库连接的相关配置。4.可使用 environments元素配置多个 environment,但创建 Sqlsessionfactory实例时只使用一个environment元素。可以指定 environment,若不指定,则使用默认 environment。5ICTO. com技术成就梦想MyBatis3视频教程:htte:/ldu.51 cto. com/ course/ course_id-111htm添加一个学生1.编写S哑映射文件(.ⅹml文件),在映射文件中编写SQL语句(这里是 insert语句),并在主配置文件中注册此映射文件2.创建 Sqlsessionfactory实例,并从中打开个Sq1 Session实例(与 Hibernate类似)。3.调用 Sqlsessionl的 insert方法执行以上的insert语句并提交。5ICTO. com技术成就梦想MyBatis3视频教程:htte:/ldu.51 cto. com/ course/ course_id-111htm注意1. Sqlsession提供了不同的方法供我们调用SQL映射文件中的SQL语句2.调用这些S哑L语句时,应使用“命名空间.SQL语句的id”的形式来唯一标识某一SQL语句。在同一命名空间下,不同SQL语句的id应该是唯一的3. Sqlsession实例使用完毕后,应保证将其关闭,以释放占有的资源。4.当向SQL语句传递参数时,若只有一个参数,则在SQL语句中可使用任意的名字来引用此参数5ICTO. com技术成就梦想MyBatis3视频教程:htte:/ldu.51 cto. com/ course/ course_id-111htm查询与类型别名1.为能够把查询结果装配为一个对象,应为 select语句配置结果类型2.配置类型别名可使用一个简短的名字来代替JAVA类的全限定名,可使用 typeAliases元素配置类型别名,且其在主配置文件中的位置应遵循一定的顺序3.可使用 package元素为某个包配置别名,此时包中的类的别名即为小写后的类名(不要包名);但若使用@ Alias注解指定了别名,则以注解优先4. My Batis也有内置别名,如int是 Integer的别名(全部内置别名请参考 My Batis文档)5.实际上,无论自定义别名还是内置别名,使用时都不区分大小写。5ICTO. com技术成就梦想MyBatis3视频教程:htte:/ldu.51 cto. com/ course/ course_id-111htm结果映射1.若表的列名(别名)与实体类的属性名不一致,就不能再使用 resultType来把査询结果装配成对象。此时,应使用 resul tMap元素来做列名与属性名之间的映射。实际上, resultMap比 resultType更常用2.配置好 resultMap后,即可在 select语句中引用5ICTO. com技术成就梦想MyBatis3视频教程:htte:/ldu.51 cto. com/ course/ course_id-111htm使用接1.直接调用SQL语句,容易写错它的全限定名(命名空间+SQL语句id),写错后IDE也不能给出提示。2.更好的方式是定义与SQL映射文件对应的接口(接口的全限定名,即包名+类名,与映射文件的 namespace相同)在接口中声明与SQL语句对应的方法(方法的名字、参数类型和返回类型与SQL语句的d、 parameterType以及返回类型一致),也就是把方法与S哑L语句绑定起来3.然后通过接口的对象(通过Sq1 Session获得)来调用这些方法,实际上最终还是调用这些S语句。这样就能避免输入冗长的SQL语句全限定名,在调用方法时还能利用IDE的代码自动补全功能,写错方法时ID也能给出提示JICTO. cOm技术成就梦想MyBatis3视频教程:htte:/ldu.51 cto. com/ course/ course_id-111htmLtLL51cto.com技术成就梦想
用户评论