每日面试ChatGPT,生成式面试题(Java方向)

本文介绍了Java开发中Spring的主要模块,包括Core、AOP、MVC等,详细讲解了Mybatis的优势以及Redis的数据类型。在Oracle数据库部分,讨论了常用的数据类型,如varchar与varchar2的区别,以及事务的隔离性和一致性实现,包括事务隔离级别和避免锁表的方法,最后探讨了Oracle的索引类型和处理索引失效的策略。
摘要由CSDN通过智能技术生成

目录

Java

1. Spring 有哪些主要模块?

2. Mybatis 是什么?有什么优点?

3. Redis有哪些数据类型?

ORACLE

Oracle数据库有哪些常用的数据类型?

varchar和vachar2的区别

Oracle数据库如何实现事务的隔离性和一致性?

Oracle数据库的事务隔离级别有哪些?

Oracle怎么避免锁表?

Oracle的索引有哪些?

如何处理Oracle索引失效的问题?

什么情况下索引会失效?

Java

1. Spring 有哪些主要模块?

  1. core,提供框架的基本组件,Ioc容器、依赖注入、BeanFactory等
    1. BeanFactory是什么        
      1. spring的接口,访问springBean容器的跟接口,管理多个Bean定义。
        1. 提供一个中央注册表,管理应用组件的配置和依赖。
        2. 常用的实现类有ListableBeanFactory、ConfigurableBeanFactory、DefaultListableBeanFactory、XmlBeanFactory
          1. ListableBeanFactory:它可以枚举出所有的 Bean 实例,而不是像 BeanFactory 那样需要按照名称一个一个地查找
          2. XmlBeanFactory:从一个 XML 文件中读取 Bean 定义,并创建和配置 Bean 实例。spring的旧类,已经舍弃,不建议使用
          3. DefaultListableBeanFactory:它是 Spring 的默认的 BeanFactory 实现,基于 Bean 定义对象来管理 Bean 的创建和配置。是spring的核心类,被其他很多类继承或者组合
          4. ConfigurableBeanFactory:可以配置BeanFactory的一些属性和行为。设置类加载器、类转换器、属性编辑器等;设置环境变量,占位符解析器、嵌入值解析器等;设置自定义作用域,Bean后置处理器、销毁回调等。
    2. AOP,提供面向切面编程,如代理,拦截器、切点等。
      1. AOP是一种编程范式,通过分离横切关注点来提高模块化。比如日志、事务、安全等。AOP可以将这些功能从程序中分离出来,是核心逻辑更清晰只关注业务代码。
        1. 切面:指一个模块,如日志切面、事务切面
        2. 连接点:程序执行的点,如方法调用、异常抛出等,会被切面影响
        3. 通知:切面在某个连接点执行的动作,如在方法前打印日志,方法后提交事务等
        4. 切入点:一个表达式,来确定连接点,确定通知哪些连接点执行
        5. 引入:切面面向目标对象添加新的属性或者方法
        6. 目标对象:被切面影响的对象
        7. AOP代理:用于封装目标对象和切面的关系,负责执行通知逻辑
        8. 织入:将切面和目标对象结合起来的过程。
    3. MVC:是一种软件架构模式,主要分为三个主要组件:Model、View、Controller
      1. springMVC工作流程
        1. DipatcherServelt拦截前端到来所有http请求。
        2. DipatcherServelt调用处理器映射器HandlerMapping,根据请求的URL找对应的而处理器Handler,返回一个执行链HandlerExecutionChain,包含Handler对象和拦
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值