13.线程的几种实现方式
实现方式
通过继承Tread,通过实现接口Runnable
继承扩展性不强。java为单继承。
启动线程
启动线程start()方法,启动以后执行run()方法
区分线程
通过名称区分
14 线程并发库与线程池的作用
线程并发库:线程的创建,使用,销毁都是它管理
线程池作用:
控制线程个数,不会回为线程太多而运行缓慢。
回收空闲线程。不用每次创建与销毁,节约资源
响应时间快。
15.servlet的生命周期
加载,实例化,初始化,运行,销毁
servlet被服务器实例化后,初始化。有请求时运行service方法,然后调用doGet或者doPost方法。当容器关闭时销毁servlet。
16.什么是设计模式:前人的设计经验总结
单例模式,
构造方法私有化;创建私有变量为实例(饱汉一出来就创建;饥汉用时再创建);提供公有的访问实例方法
工厂模式(spring ioc使用了工厂模式),代理模式,包装模式
17对servlet的理解。
1.是java编写的服务器端程序。
2.这些servlet都要实现 servlet这个接口,主要功能为浏览和修改数据,生成动态web内容。
3.HttpServlet重写doGet与doPost方法来响应请求。
18.doGet与doPost
相同点:都是http的请求方法,可以对url资源 进行操作。
不同点:doGet查询信息。doPost更新信息。
具体不同点为:
1.请求信息在地址栏中是否会显示。doGet会。doPost不会
2.传输数据限制。doGet有限。doPost无限。
3.安全情。doGet不安全。doPost安全
19servlet api 中的forward()与direct()人区别
相同点:都是跳转
不同点:forward服务器端的跳转。direct 客户端的跳转。
forward地址不变。direct地址变。
forward一次请求。direct多次请求。
forward只能内部跳转,direct可以跳到其它系统
20.jsp与servlet的相同点与不同点
相同点:都是实现HttpServlet接口servlet,jsp也会补翻译成servlet,jsp是一个特殊的servlet
不同点:jsp注重视图,servlet注重逻辑。servlet想输出html标签必须用writer方法。
21.jsp的九大内置对象,四个作用域。
九大内置对象:page,pageContext,session,Application servlet,out,Exception,request,response,config servlet
四大作用域:page,request,session,application
21.session与cookie的区别
相同点:都是会话跟踪技术
不同点:1.session数据记录在服务器上。cookie数据记录在客户端上。session依赖于cookie,sessionId存在客户端上
2.别人可以分析cookie数据来获取数据。session安全,cookie不安全。
3.session有时间限制,占用服务器性能。
4.cookie有个数不能超过20个,大小不能超过4K
建议:登陆信息放session,其它信息放cookie,如购物车。如果客户端禁用cookie,则 用文件、数据库等形式保存Session ID,在跨页过程中手动调用。都是间接保存sessionID的值而后调用并配置session_id()。
22.数据库分类,范式
分类:关系型数据库与非关系型数据库。最常用关系型数据库:mysql,sqlserver,oracle
非常关系型数据库:resis,memcache,mogodb,hadoop等。
范式:数据库设计规范
一范式:列不可分
二范式:行唯一
三范式:引用外键
为了提高效率,可以违反设计范式。如订单与订单项,总价与单价
23.mvc的各部分用什么技术实现
mvc:model+view+controller,视图与逻辑隔离开来
model普通的javabean
view jsp,html,volictity,freemaker
controller servlet
用了mvc框架(springmvc与structs)后,变成了jsp+核心控制器+ccontroller+javabean
24.事务的四大特征,acid特性?
事务,完整不可分,要么都失败,要么都成功。如转账,a扣钱成功,b加钱成功,才算转账成功。
原子性,隔离性,一致性,持久性。
原子性:事务内操作不可分隔。要么都都成功,要么都失败
一致性:如果失败了要回滚
隔离性:一个事务开始后,不能受其它事务干扰
持久性/持续性:事务开始了就不能终止
25.mysql的默认最大连接数。
同时访问数据库的个数。max_connections:100
26.触发器
触发一个操作,条件满足时就要执行什么操作
27.mysql分页与orcal分页
mysql使用limit分页offset,size
oracle:三层嵌套查询
28.存储过程
1.只在创建过程中编译:使用过程中不需要。其它每次使用时创建编译
2.业务复杂。不需要每次发sql
3.减少了开发人员工作量
4.安全性 excute权限执行
29.jdbc调用存储过程