面试题100问

Oracle
1、说一下oracle中数据类型以及他们之间的区别?
              CHAR(length)  存储固定长度的字符串, 如果存储的字符串小于length,用空格填充,默认是1最长不超过2000字
              VARCHAR2(length) 存储可变的字符串,默认是1,最大不超过4000字符
              NUMBER(p,s)  既可以存储浮点数,也可以存储整数,p表示最大位数默认38位,s指的是小数位数
              DATE  存储日期和时间存储时间
              TIMESTAMP 不但存储日期的年月日,时分秒,以及秒后8位,同时包含时区
              CLOB 存储大的文本,比如xml
              BOLB  存储二进制对象,比如视频,声音,图片
 
2、怎样创建一个视图,视图的好处?
      create view 视图名 as select 列名 [别名]  …  from 表 [unio [all] select … ] ] 
      好处: 
      1. 可以简单的将视图理解为sql查询语句,视图最大的好处是不占系统空间 
      2. 一些安全性很高的系统,不会公布系统的表结构,可能会使用视图将一些敏感信息过虑或者重命名后公布结构 
      3. 简化查询 
3、说一下oracle是怎么分页的?
         SELECT  所查询的列  FROM (
                               SELECT ROWNUM r,所查询的列 FROM
               STUDENT WHERE  ROWNUM<页码每页最大显示数
                      ) S
              WHERE r>=每页最大显示数
(页面-1)      
 
              ROWNUM不能使用大于号,如果使用则什么都查不出来   
 
              注:把内部的一个子查询当作表去使用,在内部子查询内ROWNUM还是伪列,在外部查询的时候这个
              ROWNUM r 就是一个表里的普通的列,这个时候就可以对这个r进行>的操作了
 
4、oracle中存储函数和存储过程的区别?
      1). 可以理解函数是存储过程的一种 
      2). 函数可以没有参数,但是一定需要一个返回值,存储过程可以没有参数,不需要返回值 
      3). 函数return返回值没有返回参数模式,存储过程通过out参数返回值, 如果需要返回多个参数则建议使用存储过程 
      4). 在sql数据操纵语句中只能调用函数而不能调用存储过程
5、内连接和左外连接和右外连接的区别?
          内连接可以等值连接和不等值连接,等值连接查询的结果是两个条件相等的,不等值连接反之
           左外链接是在内连接的基础上把左表的数据全部显示出来,右链接反之
6、说一下你是怎么设计表结构的,说一下数据库第一第二第三范式
          第一范式: 数据库的每个字段不可在分。
                 比如联系方式这个字段就不符合第一范式,因为联系方式可分,联系电话,联系地址等等,所以不符合。
           第二范式: 数据表中不存在非关键字段对任意一候选字段的函数依赖。
                                          假设有一张表里有学号,姓名,系名,班主任,课名,分数,那么我们添加很多数据的时候必然会出现很多问题?
                                          1、例如过多的姓名,学号系名,系主任的重复数据,就会出现很多冗余数据。
                                          2、假如3月份新建立一个系,这个系8月份才招学生,我们就无法在3月份的时候把这个系插入到这张表里
                                          3、如果这张表里没有学生,那么我无法通过这张表去看我们学校有哪些系,哪些系班主任。
                                          4、等等问题不一一列举。
                           
                                          正是因为1NF(第一范式)会有那么问题,所以才设计第二范式,第二范式的原则是消除函数依赖
                                          那么为了符合2FN(第二范式)我们必须拆表分两张表来消除依赖
                                                        1、学生(学号,姓名,系名,系主任)
                                                        2、选课(学号,课程,分数)
           第三范式: 数据表中不存在非关键字字段对任意一候选字段的传递函数依赖
                                                        3NF(第三范式)就是消除传递函数依赖了
 
                                                        选课(学号,课名,分数)
                                     学生(学号,姓名,系名)
                                     系(系名,系主任)
 
 
7、使用sys登录oracle的语法是?
    sys/密码  as [sysdba] |sysoper]
8、说一下什么是表空间,以及表空间的分类,每类表空间是用来干嘛的?
      什么是表空间
                                          1.表空间:是数据库的逻辑存储空间。可以理解为,在数据库当中开辟的一个空间,用于存放数据库的对象。
                                          2.一个数据库可以由多个表空间构成。
                                          3.oracle中的表空间概念是与MySQL、SQL Server等数据库的一个重要区别;  oracle的很多优化都是通过表                                   空间实现的
                                          4.表空间:是由一个或多个数据文件构成的,数据文件的位置和大小可以由用户自己定义。
                            表空间的分类:
                                          1.永久表空间:数据库中要永久化存储的一些对象,如:表、视图、存储过程
                                          2.临时表空间:数据库操作当中中间执行的过程,执行结束后,存放的内容会被自动释放
                                          3.UNDO表空间:用于保存事务所修改数据的旧值,可以进行数据的回滚
 
9、oracle中drop、delete和truncate是什么意思?有什么区别?
       1. delete和truncate都是删除表中的内容而不能删除表的结构,而drop则是删除表的结构和内容(表将不复存在);
         2. delete可以删除整个表的数据也可以有选择性地删除某一条或多条数据,而truncate则是一次性删除整个表的数据;
         3. 使用delete删除的表数据并没有真正被删掉,数据占用的表空间还存在,相当于Windows中将数据删除到回收站中,日后有     需要还可以恢复;
         4. 使用truncate删除的表数据会连同其占用的表空间一起直接被删掉,相当于Windows中使用del+shift键直接删除文件一样,    无法恢复。
10、请说出增删改查的sql语法?
         select  列名  from 表名
         update 表名 set  列名 where 条件
         insert  into  表名(列名)values(值)
         delete from 表名 where 条件
11、说一下oracle约束的作用,哪几种常用的约束,每种约束使用来干嘛的?
       非空约束:用来确保数据不为空的
         主键约束:不允许为空,且不能重复,一般用来确保数据唯一的
         外键约束:确保数据的完整性
         唯一约束:用来确保列数据唯一的
         检查约束:用来让列的值符合条件的
 
12、oracle中如何分组,和排序,在分组和排序的时候应该注意哪些问题?
       group by  列名
         order by  列名
         1、排序的时候应当注意空值,oracle认为null最大的
         2、分组时应该注意所有没有在分组函数中的列都应该在by后面
      
13、说一说常用的分组函数,以及他们的作用?
       count()   统计条数
         max()          求最大值
         min             最小值
         avg()          平均值
         sum            总数
         等等。。。。。。
 
14、where和having的区别?
        
         1、where子句是用来指定行的条件的,而having子句是用来指定组的条件的
         2、where后面不能使用函数,having后面可以使用函数
        
         按照效率来说,是where和having快,所以应该先where在用having
 
15、简单讲一下oracle中什么是同义词,有什么作用?
       oracle中同义词可以理解为对象的别名
16、oracle中序列是什么?序列中有哪些常用的属性?
         按照顺序生成码
                   [START WITH num]  – 从什么地方开始
                   [INCREMENT BY increment] --增长数,每次调用所增长的值
                   [MAXVALUE num|NOMAXVALUE]–指的是序列生成的号最大的值
             [MINVALUE num|NOMINVALUE]–指的是序列生成的号最小的值
             [CYCLE|NOCYCLE]  --意思是如果达到最大值是否重新开始
             [CACHE num|NOCACHE]–是否使用序列缓存
17、oracle中索引的作用有哪些?
                数据库中索引(Index)的概念与目录的概念非常类似。如果某列出现在查询的条件中,而该列的数据是无序的,                     查询时只能从第一行开始一行一行的匹配。
         1、通过创建唯一性索引,可以保证数据库表中每一行数据的唯一性。
                            2、可以大大加快数据的检索速度,这也是创建索引的最主要的原因
                            3、可以加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。
                            4、在使用分组和排序子句进行数据检索时,同样可以显著减少查询中分组和排序的时间。
                            5、通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。     
 
18、oracle中一些常用的伪列,分别有什么作用?
                                 rownum 表示结果集中行数
                                          rowid  表示数据的地址
19、关键字in、any、all分别表示什么意思?
         in关键字:
                            满足其中一个条件就能匹配
              any关键字:
                            满足其中一个条件就能匹配
              all关键字:
                            满足所有条件才能匹配
 
20、在存储过程和存储函数参数中,in、out、in out分别有什么作用?        
         in:输入参数
              out:输出参数
              in  out:输入输出参数
 
21、什么时候用存储过程合适,什么时候用存储函数合适?
                  1、如果只有一个返回值那就用存储函数,否则反之。
JDBC:
22、请简单的说一下使用jdbc的步骤?
23、JDBC的接口和相关类似在哪个包下?
24、execute,executeQuery,executeUpdate的区别是什么?
    Statement的execute(String query)方法用来执行任意的SQL查询,如果查询的结果是一个ResultSet,这个方法就返回true。如果结果不是ResultSet,比如insert或者update查询,它就会返回false。我们可以通过它的getResultSet方法来获取ResultSet,或者通过getUpdateCount()方法来获取更新的记录条数。
Statement的executeQuery(String query)接口用来执行select查询,并且返回ResultSet。即使查询不到记录返回的ResultSet也不会为null。我们通常使用executeQuery来执行查询语句,这样的话如果传进来的是insert或者update语句的话,它会抛出错误信息为 “executeQuery method can not be used for update”的java.util.SQLException。
Statement的executeUpdate(String query)方法用来执行insert或者update/delete(DML)语句,或者 什么也不返回DDL语句。返回值是int类型,如果是DML语句的话,它就是更新的条数,如果是DDL的话,就返回0。
只有当你不确定是什么语句的时候才应该使用execute()方法,否则应该使用executeQuery或者executeUpdate方法。
 
25、java.util.Date和java.sql.Date有什么区别?
            共同点:都有getTime方法返回毫秒数,可以直接构建
          不同点:
           1、java.sql.Date是针对SQL语句使用的,它只包含日期而没有时间部分,一般在读写数据库的时候用,              PreparedStament的setDate()的参数和ResultSet的getDate()方法的都是java.sql.Date
           2、java.util.Date是在除了SQL语句的情况下面使用,一般是日常日期字段
           3、java.util.Date 是 java.sql.Date 的父类,即:继承关系:                                              java.lang.Object --》 java.util.Date --》 java.sql.Date
 
        
26、JDBC中常用的几大对象是什么?
      Connection;
       Statement;
        ResultSet。
         PreparedStatement
 
27、请讲一下三层架构是什么,有什么优缺点。
              三层架构:
                            1、开发人员可以只关注整个结构中的其中某一层;
                            2、可以很容易的用新的实现来替换原有层次的实现;
                            3、可以降低层与层之间的依赖;
                            4、有利于标准化;
                            5、利于各层逻辑的复用。
                            6、结构更加的明确
                            7、在后期维护的时候,极大地降低了维护成本和维护时间
缺点
                            1、降低了系统的性能。这是不言而喻的。如果不采用分层式结构,很多业务可以直接造访数据库,以此获取相应     的数据,
                            如今却必须通过中间层来完成。
                            2、有时会导致级联的修改。这种修改尤其体现在自上而下的方向。如果在表示层中需要增加一个功能,为保证其                              设计符合分层式结构,可能需要在相应的业务逻辑层和数据访问层中都增加相应的代码。
3、增加了开发成本。
 
三层架构
                            dao: 是写连接数据库的代码
                            service:是写代码逻辑的
                            ui:其实就是前端展现的页面,(比如html,jsp)
28、JDBC中statement和PreparedStatement的区别?
              关系:PreparedStatement继承自Statement,都是接口
              区别:PreparedStatement可以使用占位符,是预编译的,批处理比Statement效率高    
        
29、请说出JDBC中获取总页数的计算公式
         总页数=总条数 % 每页显示数0 ?
                                                        (总页数/每页显示数)😦 (总页数/每页显示数+1);
30、请简单讲一下连接池的概念和几个常用的属性?
                       initialSize 初始化连接:连接池启动时创建的初始化连接数量
                   maxTotal 最大活动连接:连接池在同一时间能够分配的最大活动连接的数量, 如果设置为非正数则表示不限制
                   maxIdle最大空闲连接:连接池中容许保持空闲状态的最大连接数量,超过的空闲连接将被释放,如果设置为负数表            示不限制
HTML和CSS:
31、行级元素有哪些,块级元素有哪些,空(void)元素有哪些?
         行内元素:a  b  span  img  input  select  strong
         块级元素:div  ul  ol  li  dl  dt  dd  h1  h2  h3  h4  p  等
         空元素:
  


     
32、引入css的方式有哪几种,分别有什么区别,他们的优先级如何?
                  常用的有三种:
                                                        1、行内引用
                            示例:
                           

今天来学习CSS


                            直接在标签内写style就可以
              2、内连引用:
                           
              3、外联引用:
                            <link   rel=“stylesheet”   type=“text/css”  href=“样式表文件.css">
33、css的常用选择符有哪些?
              ID选择器:根据ID来设置css样式
                            #p1{
                                          color: red;
                               }
              CLASS选择器:
                            .p2{
                                          color: blue;
                               }
              标签选择器:
                            p{
                                          color:red;
                            }            
              等等
34、简单说一下src和href的区别?
         href 是指向网络资源所在位置,建立和当前元素(锚点)或当前文档(链接)之间的链接,用于超链接。
        
35、行级元素和块级元素的区别?
行内元素:会在水平方向排列,不能包含快级元素,设置width无效,height无效(可以设置line-height),margin上下无效,padding上下无效
块级元素:各占据一行,垂直方向排列。从新行开始结束接着一个断行
兼容性:display:inline-block;display:inline;zoom:1;
36、display:none;与visibility:hidden的区别是什么?
    display:none:隐藏,在网页中不占位置。
     visibility:hidden:隐藏,在网页中占位置
37、
JavaScript
38、什么是JavaScript?
         JavaScript是网景公司开发的一种基于客户端浏览器,基于面向对象,事件驱动式的网页脚本语言。
JavaScript 是脚本语言
              1、JavaScript 是一种轻量级的编程语言。
 
              2、JavaScript 是可插入 HTML 页面的编程代码。
 
              3、JavaScript 插入 HTML 页面后,可由所有的现代浏览器执行。
 
              4、JavaScript 很容易学习。
                           
              5、JavaScript 是一种解释性脚本语言
39、什么是负无穷大?
         负无穷大是JavaScript中的一个数字,可以通过将负数除以零来得到。
40、在JavaScript中什么是未声明的变量 和未定义的变量?
                  未声明的变量是程序中不存在且未声明的变量。如果程序尝试读取未声明变量的值,则会遇到运行时错误。
               未定义的变量是在程序中声明但尚未给出任何值的变量。如果程序尝试读取未定义变量的值,则返回未定义的值。
41、说一下JavaScript中定时器有哪些,分别有什么区别,以及定时器的缺点?
         定时器在一个线程内运行,因此事件可能需要排队等待执行。
42、在JavaScript中和===是什么意思?
     ==比较的是值是否相同
     ===被称为严格等式运算符,当两个操作数具有相同的值而没有任何类型转换时,该运算符返回true。
43、说一下使用JavaScript提交表单的几种语法方式?
    1、document.getElementById(‘formId’).submit();
     2、document.表单名称.submit();
44、在JavaScript中3+2+“7"的结果是什么?                             ------------------------
         57
45、在JavaScript中与用户进行交互的弹出框有哪些?
     弹出框:alert();
     文本框:prompt(“请输入你的QQ”,“默认值1921948889”);
     对话框comfirm(“你是否要删除这些数据?”);
    
    
46、在JavaScript中break和continue语句的作用?
  Break语句从当前循环中退出。
continue语句继续下一个循环语句。
 
47、在JavaScript如何创建一个通用对象
     var I = new object();
48、简单说一下typeof运算符是什么意思?
     'Typeof’是一个运算符,用于返回变量类型的字符串描述。
     用于返回变量类型的。
49、请简单说下input框的type属性有哪些常用的?
     text 文本框
     checkBox 多选框
     redio   单选框
     password  密码框
     reset   重置
     button  按钮框
     等等
 
    
50、通过JavaScript如何获取checkBox的状态
          document.getElementById(‘checkbox1’).checked
          var che=document.getElementsByName(“che”);
              for(var i=0;i<che.length;i++){
                   che[i].checked
              }
    
51、详细讲一下JavaScript中什么是DOM
     当网页被加载时,浏览器会创建页面的文档对象模型(Document Object Model)。
     HTML DOM 模型被构造为对象的树。
     通过可编程的对象模型,JavaScript 获得了足够的能力来创建动态的 HTML。
     JavaScript 能够改变页面中的所有 HTML 元素
     JavaScript 能够改变页面中的所有 HTML 属性
     JavaScript 能够改变页面中的所有 CSS 样式
     JavaScript 能够对页面中的所有事件做出反应
52、引入JavaScript的方式有几种?
    
    
 
     在html标签中直接使用
53、分别说一下隐式定义和显示定义变量的语法?
     显示  var  a=5;
     隐式   a=5;
    
54、JavaScript常用的操作字符串的方法?
     indexOf()  字符串的位置
     trim()该方法删除前置和后缀的所有空格,然后返回结果。不影响原字符串。
     charAt()返回给定位置的那个字符,
     charCodeAt()返回给定位置的字符编码。
     等等。。。。。。
55、说一下isNaN(),with()和eval()是什么意思,用来干什么的?
     isNaN() 函数用于检查其参数是否是非数字值。
     with 语句可以方便地用来引用某个特定对象中已有的属性,但是不能用来给对象添加属性。要给对象创建新的属性,必 须明确地引用该对象。
     eval() 函数可计算某个字符串,并执行其中的的 JavaScript 代码。
56、说一下JavaScript中Date对象有哪些常用的方法?
     getYear():返回年数;(小于2000年返回两位)
         getFullYear():返回年数;
         getMonth():返回当月号数;(比实际小1)
         getDate():返回当日号数;
         getDay():返回星期几;(0表示星期日)
         getHours():返回小时数;
         getMinutes():返回分钟数;
         getSeconds():返回秒数;
         getTime():返回毫秒数;
57、详细说一下在JavaScript中什么BOM?
           BOM(Browser Object Model)即浏览器对象模型。
               BOM提供了独立于内容 而与浏览器窗口进行交互的对象;
                由于BOM主要用于管理窗口与窗口之间的通讯,因此其核心对象是window;
               BOM由一系列相关的对象构成,并且每个对象都提供了很多方法与属性;
                BOM缺乏标准,JavaScript语法的标准化组织是ECMA,DOM的标准化组织是W3C,BOM最初是Netscape浏览器标准的一
 
58、在JavaScript中如何获取端口号?
     window.location.port
59、在JavaScript中如何获取input框的value值,说一下常用的方式?
     var id=document.getElementById(“bianma”).value;
60、在JavaScript中有哪些常用的事件?
    
         onBlur         当前元素失去焦点时触发
         onFocus        当某个元素获得焦点时触发
         onLoad         页面内容完成装载时触发
         onClick        鼠标点击时触发
         onDblClick      鼠标双击时触发
         onMouseDown    按下鼠标时触发
         onMouseMove    鼠标移动时触发
         onMouseOut     鼠标离开某对象范围时触发
         onMouseOver         当鼠标移动到某对象范围的上方时触发
         onKeyDown      当键盘上某个键被按下时触发
         onKeyUp            当键盘上某个键被按放开时触发
61、鼠标移动,鼠标离开某区域,键盘按下,和键盘松开分别是哪些事件?
         onMouseMove    鼠标移动时触发
         onMouseOut     鼠标离开某对象范围时触发
         onKeyDown      当键盘上某个键被按下时触发
         onKeyUp            当键盘上某个键被按放开时触发
62、如何通过正则验证"只允许用户输入数字且只能是11位数字”?
     var pass=/ 1{11}$/;
63、说一下from里常用的属性?
     name 
     action  提交地址
     method  提交方式
 
JSP
64、静态网页和动态网页的区别?
     静态网页:
         页面所有的东西都是静态的,如果要修改只能修改代码。
     动态网页:
         页面中的东西都是通过数据库或者后端程序取出来的,如果要修改只需要改程序或者是数据库
65、tomcat是什么,简单说一下tomcat下的文件目录有哪些,分别有什么作用?
           /bin                       存放各种平台用于启动和停止tomcat命令文件
         /conf                      tomcat配置文件
         /lib                       tomcat各种jar包
         /logs                      tomcat各种日志
         /temp                      tomcat临时文件
         /webapps                   发布项目,应当把项目存储到这个位置
         /work                    JSP生成的Servlet存放到此位置
66、如何修改tomcat的端口号,有 哪几种方式?
     修改tomcat默认端口号
         1、修改Servers里的Connector port属性运行
        
         2、修改conf/server.xml文件里的
          
         改port=“9999”;
        
67、jsp由哪些元素构成?
          静态内容
         注释
         声明
         小脚本
         表达式
         指令
68、get和post请求有什么区别?
         get请求:在url中明文的方式,最大超过2KB,效率高,安全性差
         post请求:在url中不显示参数,参数数据量大,效率比Get请求低,安全性高。
69、request转发和response重定向的区别?
         转发:服务器的行为,url地址栏不会改变,对象会保存,是一次请求
         重定向:客户端的行为,url地址栏会改变,对象不会保存,相当于二次请求。
70、说一下jsp九大内置对象分别是什么
        
71、include指令和include动作的区别?
     语法:
              指令<%@ include file=“URL”%>
 
               动作:<jsp:include page=""/> 
             
             
         include指令和include动作的区别
        
         1、在语法格式上一个是指令是<%@%>开头的,动作是jsp开头的
         2、发生作用的时间:指令是页面转换期间,动作是请求期间
         3、包含的内容:指令是文件的实际内容,动作是文件输出            
         4、转换成servlet:指令是两个页面转换成一个servlet,动作是两个页面是两个servlet
         5、编译时间:指令较慢资源需要破解,动作较快
         6、执行时间:指令较快,动作较慢每次资源必须破解
72、说一下http请求的无状态性?
         所谓无状态是指当浏览器发送请求到服务器时服务器返回请求,但是当同一个浏览器在次访问服务器时,服务器并     不知道是刚刚那个浏览器发送的请求。
        
         简单来说就是你去访问服务器,服务器并不会特意的去记忆你。
 
    
73、详细说一下jsp中四大作用域?
                  
              页面域:page
 
              请求域request:
                                          在当前页面和在当前htpp请求范围内例如 A转发到B  那么范围就在AB两个页面
                           
              会话域session:
                                          session的作用域范围在当前会话内都获取到,在所有页面内都能够获取的到值。
              应用域applicaiton
                                          application的作用范围在项目内所有页面都可以获取到值
                                          特点:只有一个applicaition,开始于服务启动结束于服务器关闭。
74、简单讲一下怎么去使用jstl表达式?             
              第一步导入2个包   jstl.jar   standard.jar
              第二步引入<%@taglib prefix=“c” uri=“http://java.sun.com/jsp/jstl/core”%>
Servlet
75、什么是servlet?先有servlet还是先有jsp?
         先有servlet还是先有jsp
              先有servlet后有jsp,JSP的前身就是Servlet
76、简单说一下servlet的生命周期?
         1、初始化阶段
         2、响应客户请求阶段,调用service方法,由service方法根据用户发送的什么请求调     用doget还是dopost方法。
         3、终止阶段,调用destroy()方法。
77、BS和CS开发模式的联系与区别?
      C/S 是双向的通讯,建立连接后会一直保持,任何一方都可以随时向对方发送信息。
比如 QQ 客户端登录后,腾讯的服务器可以随时把新的消息发给客户端,客户端也可以随时向腾讯的服务器发送信息、
B/S 是「查询」式的通讯,客户端向服务器查询一些信息,在服务器回应之后,(逻辑上)会立刻断开连接。只有客户端向服务器查询时,服务器才能向客户端发送信息,服务器不能主动地向客户端发送信息。
比如通过浏览器访问网站时,只有当你访问一个网站时,网站才可以向你提供信息。「访问」是一个瞬间的行为,当网页加载完成以后,网站就无法再发送额外的信息。
简而言之,C/S 是双向通讯,B/S 是一问一答。

78、JSP和Servlet的区别?
            1.jsp经编译后就变成了Servlet.

(JSP的本质就是Servlet,JVM只能识别java的类,不能识别JSP的代码,Web容器将JSP的代码编译成JVM能够识别的java类)

2.jsp更擅长表现于页面显示,servlet更擅长于逻辑控制.

3.Servlet中没有内置对象,Jsp中的内置对象都是必须通过HttpServletRequest对象,HttpServletResponse对象以及HttpServlet对象得到.

Jsp是Servlet的一种简化,使用Jsp只需要完成程序员需要输出到客户端的内容,Jsp中的Java脚本如何镶嵌到一个类中,由Jsp容器完成。

而Servlet则是个完整的Java类,这个类的Service方法用于生成对客户端的响应。
 
79、详细写一下session和cookie的区别?
         1、cookie数据存放在客户的浏览器上,session数据放在服务器上。
         2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗
         考虑到安全应当使用session。
         3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能
         考虑到减轻服务器性能方面,应当使用COOKIE。
         4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。
80、doGet和doPost的区别?
         1、get请求,页面传输的信息会以键值对的形式,显示在地址栏中的url后面达到传送目的的。
 
              2、post请求,是根据http请求的附件 传送的。在地址栏没有明文显示。
 
              3、get请求对提交的数据有大小的限制,通常在1024字节左右。不用来提交大数据。
 
              4、post请求对提交的数据大小没有限制。
              一般servlet都是默认用get方式接受前端数据,因为get请求类型可以很方便的控制链接的目标地址。
81、说一下get请求乱码,post请求乱码,jsp页面乱码如何解决?
82、说一下什么是过滤器,如何编写并配置一个过滤器?
XML
83、什么是XML,XML和HTML的区别?
84、如何获取XML文档根节点的所有子节点?
 
 
 
 
 
 
附加:
         1、请简单说一下什么是MVC开发模式,以及MVC开发模式的优缺点?、
      2、假设现在有a b,两个变量,如何不通过第三个参数进行变量值互换?
    3、ORA-28000   the  account  is  locked 报错如何解决?请说出语法
         4、简单说下select  max(avg(sal)) from emp group by deptno,enamesql语句是什么意思,                       是否正确,如果不正确是错误在什么地方?
         5、java开发中如果没有elipse 能否运行web项目,怎么运行?
    6、javaBean中的模型和数据库有关系,是不是数据库中存在多少列,类中必须写多少                      个属性,如果不是那和什么有关?
         7、在servlet的运行周期中分别按照顺序调用的方法是那些?
         8、递归算法是什么,使用递归的时候应该注意什么?
         9、简单说一下oracle中什么是事务?
         10、什么是单元测试,怎么写一个简单的单元测试?


  1. 0-9 ↩︎

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值