L学姐阿里测开 & 后端 一面面经

阿里测开面经

1.介绍一下项目里你都做了哪些测试工作

根据个人,视情况而定。

2.Spring mvc架构介绍

SpringMVC框架是以请求为驱动,围绕Servlet设计,将请求发给控制器,然后通过模型对象,分派器来展示请求结果视图。其中核心类是DispatcherServlet,它是一个Servlet,顶层是实现的Servlet接口

流程:

1.用户在客户端向DispatcherServlet发送请求。

2.DispatcherServlet接受到请求后调用处理器映射器映射对应的Controller。

3.处理器映射器返回映射到的Controller给DispatcherServlet。

4.DispatcherServlet通过得到的Controller来调用处理器。

5.Controller根据请求调用相应的业务逻辑Service。

6.Service调用数据访问层。

7.Service抽取数据模型。

8.Service把数据模型返回给Controller。

9.Controller包装数据返回给DispatcherServlet一个ModelAndView。

10.DispatcherServlet根据得到的ModelAndView调用视图解析器。

11.视图解析器返回一个指定格式的视图。

12.DispatcherServlet把得到的视图forward到JSP页面。

13.JSP页面响应用户的请求并显示到客户端。

3.数据库用的什么?mybatis工作原理

Spring Data JPA 是 Spring 基于 ORM 框架、JPA 规范的基础上封装的一套 JPA 应用框架,底层使用了 Hibernate 的 JPA 技术实现,可使开发者用极简的代码即可实现对数据的访问和操作。它提供了包括增删改查等在内的常用功能,且易于扩展!学习并使用 Spring Data JPA 可以极大提高开发效率!

MyBatis 是支持定制化 SQL、存储过程以及高级映射的优秀的持久层框架,其主要就完成2件事情:

  1. 封装JDBC操作
  2. 利用反射打通Java类与SQL语句之间的相互转换

MyBatis的主要设计目的就是让我们对执行SQL语句时对输入输出的数据管理更加方便,所以方便地写出SQL和方便地获取SQL的执行结果才是MyBatis的核心竞争力。

4.Hash、Set、List特点

1.存放

(1)List存放元素是有序,可重复

(2)Set存放元素无序,不可重复

(3)Map元素键值对形式存放,键无序不可重复,值可重复

2.取出

(1)List取出元素for循环,foreach循环,Iterator迭代器迭代

(2)Set取出元素foreach循环,Iterator迭代器迭代

(3)Map取出元素需转换为Set,然后进行Iterator迭代器迭代,或转换为Entry对象进行Iterator迭代器迭代

5、Arraylist和linkedList的区别?

(1)Arraylist使用数组实现的,linkedlist使用链表实现的

(2)查询、修改Arraylist比较快,因为linkedlist要移动指针

(3)添加、删除linkedList要快,因为Arraylist要移动数据

6.用没用过设计模式,有哪些了解

工厂模式:

  • 工厂方法模式一种创建对象的模式,它被广泛应用在jdk中以及Spring和Struts框架中;
  • 工厂方法模式基于"输入",应用在超类和多个子类之间的情况,这种模式将创建对象的责任转移到工厂类;
  • 首先让我们学习一下如何在Java中应用工厂方法模式并且学习到工厂方法的优点,另外工厂方法模式也广泛应用在jdk中;
  • 超类可以是接口、抽象类、父类,本例中将通过重写 toString() 方法来解释工厂方法模式;

单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该类的对象。

7.编程 是不是回文

class Solution {
   
    public boolean isPalindrome(String s) {
   
        if(s.isEmpty()) {
   
            return true;
        }
        int left = 0;
        int right = s.length() - 1;
        while(left < right) {
   
            if(!Character.isLetterOrDigit(s.
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值