mybatis

  1.         MyBatis是一个基于Java的持久层框架(半自动),主要包括SQL Maps和Data Access Objects(DAO)
            MyBatis是支持普通SQL查询,存储过程和高级映射的优秀持久层框架。MyBatis消除了几乎所有的JDBC代码和参数的手工设置以及结果集的检索。
            MyBatis使用简单的 XML或注解用于配置和原始映射,将接口和 Java 的POJOs(Plain Old Java Objects,普通的 Java对象)映射成数据库中的记录。                                                  每个MyBatis应用程序主要都是使用SqlSessionFactory实例的,一个
    SqlSessionFactory实例可以通过SqlSessionFactoryBuilder获得。SqlSessionFactoryBuilder可以从一个xml配置文件或者一个预定义的配置类的实例获得。

  2. mybatis与hibernate的区别
       两者均为ORM框架,但也有一些不同
                   mybatis                                                        hibernate
       轻量级                                           重量级
       半自动化                                       全自动化
       sql                                                 hql(但也可以使用sql,但违背了hibernate的初衷)
       扩展性、迁移性比较差                 无缝移值

  3. ssm与ssh开发对比
       ssh2                                                    ssm       
       action                                                controller
       biz/service                                         biz/service
       dao                                                    mapper
       IXxxDAO.java(接口)                XxxMapper.java(接口) 
       XxxDAOImpl.java(实现类)         XxxMapper.xml
       entity                                                   model
       Xxx.java                                            Xxx.java
       Xxx.hbm.xml        

  4. Mybatis和Spring集成开发

    注解式开发

       @Repository:将DAO类声明为Bean
       @Service:通常作用在业务层
       @Constroller:通常作用在控制层,将在Spring MVC中使用
       @Component:是一个泛化的概念,仅仅表示spring中的一个组件(Bean),可以作用在任何层次
       @Scope:模式声明(singleton|prototype)
       @Autowired:将自动在代码上下文找与其匹配(默认是类型匹配)的Bean,并自动注入到相应的地方
       @Resource:
       1)@Resource后面没有任何内容,默认通过name属性去匹配bean,找不到再按type去匹配
       2)指定了name或者type则根据指定的类型去匹配bean
       3)指定了name和type则根据指定的name和type去匹配bean,任何一个不匹配都将报错

       问题:@Autowired和@Resource两个注解的区别:
       1)@Autowired默认按照byType方式进行bean匹配,@Resource默认按照byName方式进行bean匹配
       2)@Autowired是Spring的注解,@Resource是J2EE的注解,这个看一下导入注解的时候这两个注解的包名就一清二楚了
       Spring属于第三方的,J2EE是Java自己的东西,因此,建议使用@Resource注解,以减少代码和Spring之间的耦合。

       @Transactional
       注:个人感觉注解式事务比以前的声明式事务更加麻烦,要写的东西更多 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值