第一天

第一天面试遇到的问题

Java web九大隐式对象

1.request:请求

2.response:响应请求

3.page:jsp页面本身

4.pagecontext:当前页面

5.out:输出内容

6.application:全居容器

7.exception:异常处理

8.session:用户登路有效

9.config:初始化的配置文件访问对象

算法

冒泡排序:比较相邻的元素,如果第一个元素大于第二个元素,就进行交换

插入排序:将第一排序列第一个元素看作有序序列,把第二个元素到最后一个元素当成未排序序列,依次扫描,插入到适合的位置;

快速排序:挑有一个元素为”基准“,比基准大的放在基准的后面,比基准小的放在基准的前面,递归的把小于基准的子数列和大于基准的子数列排序;

选择排序:首先选取出最大(小)的元素放在排序序列的最前面,在依次找出剩余元素中最大(小)的元素,直至排完。

二分法查找

支付传入的是什么参数,返回的什么。

传入的参数是商品订单号、金额、主题、商品描述

返回了一个form表单。

redis是什么

redis是一个开源使用的使用Ansic语言编写的,遵守BSD协议、支持网络、可基于内存亦可持持久化的日志型、key-value数据库,并提供了多种语言api的非关系型数据库;

传统数据库遵循ACID规则,而NOSQL一般为分布式而分布式,一般遵循CAP定理

redis默认有16个数据库;

redis支持的类型有什么

1.String:字符串

2.Hash:哈希

3.List:字符串列表

4.set:字符串集合

5.sorted set:有序字符串集合

堆和栈

在Java中一般用来存储对象和数组的是堆,用来存储方法和基本类型的是栈。

栈的速度比堆快,栈中的数据是可以共享的。

栈:存储值类型:向下填充,数据只能从栈的顶端插入和删除(先进后出),进入叫入栈,取出叫出栈,栈空间小,但是访问速度快

堆:存储引用类型:受垃圾处理器GC的管理,没有访问权限,堆的空间大,但是访问速度不如栈快,没有访问限制

json的格式:

1.JSON字符串

{
    "name":"zhangsan"
}

2.JSON数值

{
    "num":16
}

3.JSON对象

{
    "starcraft":{
        "name":"zhangsan",
        "age":25
    }
}

4.JSON数组

{
    "person":[
        "name","zhangsan",60
    ]
}

5.JSON对象数组

{
    "array":[{
        "name":"zhangsan"
    },{
        "name":"lisi",
        "age":15
    }]
}

@Controller和@Service的作用

@Controller用于标注控制层

@Service用于标注业务层

被@Controlller标注的类,在启动的时候会把这个类作为一个控制器加载到Spring的bean工厂中

被@Service标注的类,在启动的时候会把这个类自动注入到Spring容器中。

@Controller层的注解有哪些

1.@Controller

2.@Autowired

3.@RequestMapping:用来处理请求地址映射的注解

4.@pathVariable:获取参数

5.@RequestParm:进行request内容的获取

6.@CookieVlaue:获取名为。。。。的cookie值

7.@ReponseBody:返回一个Body

8.ExceptionHander(Wxception.class):遇到这个异常,执行这个方法。

@Autowired是怎么使用的

@Autowired注解是实现依赖注入的。

Spring自动把Bena里面引入对象的setter/getter方法省略,会自动get/set

@Auotwired注解自动注入时,spring容器中匹配到的后选Bean数目有且只有一个,当找不到匹配的Bean时,Spring容器会抛出一个BeanCreationException异常,并指出必须拥有一个匹配的Bean,如果有多个候选Bean,Spring容器启动的时候也会出现BeanCreationException

可以借助@Qualifier注释指定注入Bean的名称,这样就解决了@Autowired遇到多个候选Bean的问题

@Autowired扫描过程

  1. 扫描当前类中标注@Autowired的属性和方法;
  2. 再查找父类中注@Autowired的属性和方法,依次遍历;
©️2020 CSDN 皮肤主题: 游动-白 设计师:上身试试 返回首页