Mybatis从0开始的例子

背景:从0开始,如果有了1,那么就有了入门的质变,没有了万事开头时的那种难受

来到这家公司已整整半年,作为初学者刚进公司时面对springmvc+mybatis这样自己很陌生的技术,是有点紧张的,担心工作不能顺利展开进行,幸好同事都很和气,我慢慢的在插科打诨中会搬会用了。但这终究不是正途,总会遇见配置问题或者细节上的问题,问同事也不能及时响应,耽误了自己工作不说,养成了蜻蜓点水,不求甚解的坏习惯。今天镇定思痛,将mybatis从0开始自己搭建使用,发现平时不得要领的细节,在其官方文档上都有详细赘述,就这样粗略扫完mybatis的官方文档,终于得到了一些浅浅的踏实与充实感。

步骤:具体源码传送门
1. 找到mybatis官方文档 (这是最科学有效的,但也最被忽视的)
2. 需要mybatis本身jar包和mysql驱动包
3. 书写mybatis配置文件(名字自取),读取配置文件生成SqlSessionFactory,创建SqlSession,操作数据库
注意:
1. 这里不再列出详细步骤,因为无论是官方文档亦或是博客文章,都表述得很好。
2. 工作中常用到的是,在mybatis配置文件中,可以设置mapUnderscoreToCamelCase(是否开启自动驼峰命名规则映射);multipleResultSetsEnabled 是否允许单一语句返回多结果集(需要兼容驱动);autoMappingBehavior 指定 MyBatis 应如何自动映射列到字段或属性等。
3.如果插入一个对象(更新)一个对象数据,如何获取其插入(更新)后的一些字段的值(比如id): useGeneratedKeys (仅对 insert 和 update 有用)这会令 MyBatis 使用 JDBC 的 getGeneratedKeys 方法来取出由数据库内部生成的主键(比如:像 MySQL 和 SQL Server 这样的关系数据库管理系统的自动递增字段),默认值:false。 keyProperty (仅对 insert 和 update 有用)唯一标记一个属性,MyBatis 会通过 getGeneratedKeys 的返回值或者通过 insert 语句的 selectKey 子元素设置它的键值,默认:unset。如果希望得到多个生成的列,也可以是逗号分隔的属性名称列表。
<insert id="insertAuthor" useGeneratedKeys="true"
    keyProperty="id">
  insert into Author (username,password,email,bio)
  values (#{username},#{password},#{email},#{bio})
</insert>
4.resultMap 元素是 MyBatis 中最重要最强大的元素.
<resultMap id="userResultMap" type="User">
  <id property="id" column="user_id" />
  <result property="username" column="user_name"/>
  <result property="password" column="hashed_password"/>
</resultMap>
总结:对mybatis,从一开始陌生,到过程中接触的惧怕,到最后的明白了然,这一个过程完全可以很短,但却是让我拖了半年之久。有时走的太远,就真的忘记当时的起点在哪里,最初的自我是什么了。另外自己工作中对spring的AOP的理解还是不清不楚,还有spring-security,memcached和事务管理的配置也不甚明白,以后定会陆续展开从0开始的例子。具体源码传送门
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值