1、Arrylist和Linkedlist的区别;
相同点:
都实现了List接口和Collection;
不同点:
1、ArrayList是基于数组实现的;LinkedList是基于链表实现的;
2、ArrayList随机查询速度快;LinkedList插入和删除速度快;
原理解析:
ArrayList是基于数组实现的,他的特性就是可以使用索引来提升查询效率;插入和删除数组中某个元素,会导致其后面的元素需要重新调整索引,产生一定的性能消耗;
LinkedList是基于链表实现的,没有索引,所以查询效率不高,但是插入和删除效率却很高;为什么呢?因为链表里插入或删除某个元素,只需要调整前后元素的引用即可;
2、如何遍历map;
一、keyset方法
二、entrySet
三、迭代器
四、forEach
3、request和response的基本方法;
request
1、getMethod();获取请求方法
2、getContextPath();获取url中web应用程序的路径
3、getParameter(String name) ;获取某个参数的值
4、getParameterNames();获取所有参数名的一个数组
5、getParameterMap()将请求中的所有参数和值装入一个map对象,然后返回
6、setAttribute():传值给html页面
7、getAttributr():获取servlet传过来的值
response
1、setStatus(int status):响应成功时,会返回一个200的状态码
2、sendError(int code):用于发送表示错误信息的状态码
3、setContentType():设置servlet输出内容的类型
4、getOutputStream()字节流输出对象
5、getWriter():获得字符输出流,可以可以直接输出文本类型
response.getWriter().write(“你好啊”);
4、session和cookie的区别
1、Cookie和Session都是会话技术,Cookie是运行在客户端,Session是运行在服务器端。
2、Cookie有大小限制以及浏览器在存cookie的个数也有限制,Session是没有大小限制和服务器的内存大小有关。
3、Cookie有安全隐患,通过拦截或本地文件找得到你的cookie后可以进行攻击。
4、Session是保存在服务器端上会存在一段时间才会消失,如果session过多会增加服务器的压力。
spring是如何将xml中的bean注入的
Spring 装配包括手动装配和自动装配,手动装配是有基于 xml 装配、构造方法、setter 方法等
自动装配有五种自动装配的方式,可以用来指导 Spring 容器用自动装配方式来进行依赖注入。
Spring 基于 XML 的装配通常采用两种实现方式,即设值注入(Setter Injection)和构造注入(Constructor Injection)
在 Spring 实例化 Bean 的过程中,首先会调用默认的构造方法实例化 Bean 对象,然后通过 Java 的反射机制调用 setXxx() 方法进行属性的注入。因此,设值注入要求一个 Bean 的对应类必须满足以下两点要求。
必须提供一个默认的无参构造方法。
必须为需要注入的属性提供对应的 setter 方法。
使用设值注入时,在 Spring 配置文件中,需要使用 元素的子元素 元素为每个属性注入值。而使用构造注入时,在配置文件中,主要使用 标签定义构造方法的参数,可以使用其 value 属性(或子元素)设置该参数的值。
mysql 数据类型
MySQL支持多种类型,大致可以分为三类:数值、日期/时间和字符串(字符)类型。