java面试大全spring和Mybaits一些常见的面试题

Spring的使用的几种模式:

  1. 单例模式 SpringBean的默认为单例模式,scope=“singleton”,这个是spring默认的。
    包括:饿汉模式和懒汉模式
    饿汉代码实现:
public class HungryMan{
public static HugnryMan hungryman=new HungryMan();
private HugryMan(){

}
public static HungryMan getInstance(){
return hugryman;
     

}

}

懒汉模式代码实现:

public class LazyMan{
    //类初始化时,不初始化这个对象(延时加载,真正用的时候再创建)
    private static LazyMan instance;
    //构造器私有化
    private LazyMan(){}
    
    //方法同步,调用效率低
    public static synchronized LazyMan getInstance(){
        if(instance==null){
            instance=new LazyMan();
        }
        return instance;
    }
}

  1. 代理模式 SpringAop的实现
    分为静态代理模式,
    和动态代理模式

  2. 模板方法 SpringJDBC

  3. 工厂模式 BeanFacotry,ApplicationContext

  4. 包装器设计模式:切换不同的数据源

  5. 观察模式:spring的事件驱动

mybatis和Hibernate什么关系?

Hibernate:是一个全自动化基于Orm映射的框架,sql语句也给我们封装好了,比较的安全
mybatis: 是一个半自动化的一个基于orm的框架,需要自己手写sql语句,比较灵活。

jpa和hibernate什么关系?

JPA可以简单的理解为标准的接口,Hibernate是实现。但是JPA是Hibernate遵循的规范之一,Hibernate还有其他的规范。

redis,mongodb什么区别?适用场景?

设计者模式和框架的区别?

框架是软件,设计者模式是软件的知识。
MVC是设计者模式,很多的框架是基于设计者模式的体现

mybatis的几级缓存?基体说下

一级缓存:sqlSession级别的缓存,默认开启的。
二级缓存:多个SqlSession共用Mapper的语句,Mapper级别的缓存,可以进行手动的打开。

springMVC的执行原理?

解释一下专业术语?

oop ioc di aop orm mvc soa(面向服务编程) sso(单点登录) pojo po dao
dto(和pojo差不多,Data transfrom object 数据传输对象) vo(value object),用于业务层之间数据传递。
po: PO(Persistent Object)持久层对象,它是由一组属性和属性的get和set方法组成
bo(business Ojbect)业务对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

有时间指导毕业设计

觉得写的好的话可以给我打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值