您当前的位置: 首页 >  mybatis

水的精神

暂无认证

  • 4浏览

    0关注

    711博文

    0收益

  • 0浏览

    0点赞

    0打赏

    0留言

私信
关注
热门博文

MyBatis-学习笔记-day01

水的精神 发布时间:2018-12-25 09:20:27 ,浏览量:4

目录

     1.MyBatis的介绍

      2. 工程搭建

    3.配置文件

 4. 关于做级联插入的时候,需要返回一个id

如果有主键的话就像上边一样搞就可以返回主键,如果没有主键,需要我们自己设置的话,我们可以自己设置,配置代码如下:

5.Mybatis的架构体系:

6. Mybatis Dao 开发方式  

传统的开发方式,创建接口,创建实现类

官方推荐的方式接口,只需要提供一个,然后配置文件遵守相应的规则,就可以。

 7.SqlMapConf.xml配置

 关于properties我们可以这样玩:

别名的配置

关于加载映射文件的配置:

     1.MyBatis的介绍

MyBatis本是apache的一个开源项目iBatis,2010年这个项目由apache software foundation迁移到了google code,并且改名为MyBatis。2013年11月迁移到Github。

MyBatis的是面向SQL的持久层框架,他封装了JDBC访问数据库的过程,我们开发,只需专注于SQL语句本身的拼装,其它复杂的过程全部可以交给MyBatis的去完成。

      2. 工程搭建
  1. 导入依赖的jar包,在课前资源中有
  2. 配置SqlMapConfig.xml,可参考课前资料
  3. 配置log4j.properties,可参考课前资料
  4. 在课前资料复制POJO到工程目录下
  5. 配置SQL查询的映射文件,可参考课前资料
  6. 加载映射文件
    3.配置文件

 名为 SqlMapConfig.xml




	
	
		
			
			
			
			
				
				
				
				
			
		
	

 创建实体类和查询语句的映射文件





	
	
			SELECT
			  `id`,
			  `username`,
			  `birthday`,
			  `sex`,
			  `address`
			FROM
			`user`
			 WHERE id=#{id}
	

 

 4. 关于做级联插入的时候,需要返回一个id

第一种方案

              SELECT LAST_INSERT_ID()         

第二种方案:

第二种方案就是第一种的简写,底层调用了  SELECT LAST_INSERT_ID()

 

如果有主键的话就像上边一样搞就可以返回主键,如果没有主键,需要我们自己设置的话,我们可以自己设置,配置代码如下:
	
		
		 
			SELECT UUID()
		
		insert into `mybatis`.`user` (
			  `username`,
			  `birthday`,
			  `sex`,
			  `address`,
			  `uuid2`
			)
			values
			  (
			     #{username},
			     #{birthday},
			     #{sex},
			     #{address},
			     #{uuid2}
			  );
					
	
5.Mybatis的架构体系:

6. Mybatis Dao 开发方式  
  • 传统的开发方式,创建接口,创建实现类

接口——>实现类 

  接口:

  实现类:

 

测试类: 

  • 官方推荐的方式接口,只需要提供一个,然后配置文件遵守相应的规则,就可以。

   想要使用动态代理需要满足以下规则;

 动态代需要写实理的好处就是不现类,就可以完成相应的业务操作

 

不需要实现类,可以创建一个动态代理

 测试类如下:

 一旦和spring整合以后就会变的更加简单。

 

 7.SqlMapConf.xml配置

  •  关于properties我们可以这样玩:

 将数据库的链接字符串拿出来:

(需要注意的是:如果同时配置了红色框,和红色框下边的内容,根据加载顺序,红色框里边引入的外部文件的数据会自动把内部标签的数据覆盖掉)

一旦这样配置以后,

连接字符串就可以单独拿出来,这样做是方便维护的。

 

  • 别名的配置

 配置单个别名

使用包扫描的方式直接不用我么手动的配置,直接扔一个包的全路径进去,就可以了(包扫描的方式是推荐的)

  • 关于加载映射文件的配置:

 

 想要使用映射文件的包扫同样需要满足条件。(映射文件的和接口在同一路下,接口与映射文件的名称相同)

 包扫描:

 

关注
打赏
1664074814
查看更多评论
立即登录/注册

微信扫码登录

0.0437s