收集复习.net面试题4

1、什么是sql注入?如何避免sql注入?
答:用户根据系统的程序构造非法的参数从而导致程序执行不是程序员期望的恶意SQL语句。使用参数化的SQL就可以避免SQL注入。
详细参考复习ppt。举例子,摆事实!
1’ or 1=1
2、数据库三范式是什么?
答: 用自己的话解释,而不是背概念。
答: 第一范式:字段不能有冗余信息,所有字段都是必不可少的。
第二范式:满足第一范式并且表必须有主键。
第三范式:满足第二范式并且表引用其他的表必须通过主键引用。
员工内部→自己的老大→外部的老大
记忆顺序:自己内部不重复→别人引用自己→自己引用别人。
3.软件开发过程一般有几个阶段?每个阶段的作用?
答:需求收集(与使用方共同讨论),需求分析,软件设计(概要设计、详细设计),
代码编写,测试,维护
4、不用JQuery等框架实现AJAX无刷新登录。(常考)
答:提示:用纯XMLHttpRequest实现。
5、Http状态码各是什么意思。
答:301(永久重定向)、
302 :重定向
404 :页面不存在
500:服务器内部错误
6、ADO.NET访问数据库步骤
答: ①建立数据库连接
②创建SQL命令
③执行SQL命令
④处理SQL命令结果
7、ASP.NET一个页面的生命周期
答:①对象初始化
②加载视图状态数据
③LoadPostData 处理回传数据
④对象加载
⑤激发RaisePostDataChanged事件
⑥处理客户端回传事件
⑦对象预呈现
⑧保存视图状态
⑨呈现HTML
⑩释放(对象被释放)
8、MVC应用程序的生命周期:
答:是指应用程序员实际开始运行IIS的时间,直到IIS停止
9、MVC请求生命周期:
答:以浏览器向web服务器发送请求为起点,请到达服务器后进入处理管道,
至浏览器接受服务器响应时为止
10、ASP.NET身份认证
答: ① Windows身份认证
② Form 验证
③Passport 验证
11、MVC的优缺点
答: 优点:①扩展性好 ②便于单元测试 ③对HTML容易控制权限
缺点: ①视图对模型访问效率低 ②视图与控制器过于紧密
③增加了系统结构和实现的复杂性
12、Heap和Stack的区别(堆和栈的区别)
答:①Heap是堆,空间是手动操作分配和释放的,它的储存区有很大的自由储存区
②Stack是栈,空间是有操作系统自动分配和释放,栈上的空间是有限的,程序在编译期间变量和函数分配在栈上进行,运行时函数调用时的参数传递也是在栈上进行的
13、.Net 中的垃圾回收机制
.Net 中的垃圾回收机制是引用程序对内存的回收和释放
14、进程和线程的区别
答:进程是系统进行资源分配和调度的单位,
线程是CPU调度和分派的单位,一个进程可以有多个线程
15、HashMap和Hashtable的区别
答:主要区别在于HashMap 允许空(null)键值(key),效率上可能高于Hashtable
16、数组没有length()方法,但有length属性,String有length()方法
17、三层架构:
答:mvc 属于 UI 层
① 表现层 (UI) ②业务逻辑层(BLL) ③数据访问层(DAL)
18、软件开发 一般阶段:
答:①需求分析 → ②概要设计 →③详细设计 →④编码 →⑤测试 →⑥运行与维护
19、UDP 和 TCP的异同
答:UDP(用户数据报协议):无连接,速度快,不可靠
TCP(传输控制协议):有连接,速度较慢,有校验,安全可靠
20、值类型和引用类型的区别
答:值类型的值是存放在堆栈中,改变其值,不改变变量原有的值
① 引用类型的值存放在栈中,其引用地址存放在堆栈中,改变其值,也就改变了变量原有的值

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值