栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

mybatis

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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
       注:个人感觉注解式事务比以前的声明式事务更加麻烦,要写的东西更多 

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/632642.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号