java常见复习题.docx
《java常见复习题.docx》由会员分享,可在线阅读,更多相关《java常见复习题.docx(13页珍藏版)》请在冰豆网上搜索。
![java常见复习题.docx](https://file1.bdocx.com/fileroot1/2022-10/10/3eee6f79-6b98-4aa0-864f-d2b054e1309c/3eee6f79-6b98-4aa0-864f-d2b054e1309c1.gif)
java常见复习题
1.http协议数据提交方式get,post
答:
http协议提交时默认为get.
用get方式提交时,地址栏中可见且有长度限制(225);
用post方式提交时,地址栏不可见,无长度限制,使用方式为:
method="post"
2.Servlet基础
i.Serlvet编程模式
答:
servlet是JSP的基础,是一个java程序,是接收客户请求,对请求的数据进行处理,并对客户端做出响应的程序。
ii.Servlet生命周期
答:
从创建到销毁的过程。
包括,加载、实例化、初始化(init())、提供服务(service())、销毁(dostroy())。
iii.Servlet部署与配置(web-xml的配置)
答:
在web.xml文件中使用两个XML元素(和)把用户访问的URL映射到Servlet,其中将用户访问的URL映射到Servlet的内部名,元素把Servlet内部名映射到一个Servlet类名(包名+类名)。
HelloServlet-----设定当前Servlet的内部名称
-----设定Servlet所在的位置,
包名.Servlet类名
HelloServlet------通过Servlet内部名把URL和CLASS绑定
/HelloServlet-----这是用户访问Servlet的URL
iv.Servlet常见错误
答:
sevlet无正常加载:
1使用了错误的url(如,没有指定/servlet);2大小写错;
空指针异常、空的初始化参数(init()方法没有调用super.init(config))
v.Servlet处理get/post请求
答:
对于get方式,servlet采用对doGet方法来进行处理,对于post方式,servlet采用doPost方法来进行处理
对于get方式,底层是将所有参数附加在请求资源的后面一起传递的;
对于post方式,底层是将所有参数附加的请求资源的最后一行的下一行的下一行。
3.servlet会话跟踪
1.会话的创建和使用
答:
创建:
HttpSessionsession=request.getsession();
使用:
session.setAttribute(Stringname,Objectvalue);
Stringname=session.getAttribute(Stringname);
2.会话HttpSession的存在周期
答:
从HttpSession的创建到浏览器关闭。
4.常用集合,接口(List,Map,Set)
答:
List,Set是继承自Collection接口。
List代表有序的重复的集合;
Set代表无序,不可重复的集合。
Map是以键、值对的方式来存储的集合,键可以为空但不可重复。
5.MVC设计模式
答:
1、模型(Model)
模型是应用程序的主体部分。
模型表示业务数据,或者业务逻辑.
2、视图(View)
视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。
3、控制器(controller)
控制器工作就是根据用户的输入,控制用户界面数据显示和更新model对象状态。
MVC不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性
6.高级Jdbc编程
1.数据库连接池(数据源与jdni)
答:
数据连接池负责分配、管理和释放数据库连接,允许应用程序重复使用一个现有的数据库连接,释放空闲时间超过最大空闲时间的数据连接,避免因为没释放数据库连接而引起数据库连接遗漏。
(JNDIJavaNamingandDirectoryInterface)
2.基于属性文件的数据库配置
答:
是为了方便实现不同数据库的访问
3.自定义异常
答:
7.javaBean在jsp中的使用
1.javaBean
答:
是一种用JAVA语言写成的可重用组件。
1.JavaBean是一个公共的(public)类。
2.JavaBean必须有一个无参构造。
2.jsp标准动作
答:
include>:
在页面被请求的时候引入一个文件。
useBean>:
寻找或者实例化一个JavaBean。
setProperty>:
设置JavaBean的属性。
getProperty>:
输出某个JavaBean的属性。
forward>:
把请求转到一个新的页面。
plugin>:
根据浏览器类型为Java插件生成OBJECT或EMBED标记。
param>:
用于传递参数值。
8.EL和JSTL
1.EL表达式
答:
expressionlanguage,即表达语言。
以“${”开头,以“}”结尾,通过PAGE指令来说明是否支持EL表达式。
“.“和“[]“两种运算符来存取数据。
2.JSTL标准标签库
答:
JavaServerPagesStandardTagLibrary。
JSTL分为核心标签库和SQL标签库。
核心标签库包括:
通用标签----set/remove/out
条件标签----if、choose
迭代标签----ForEach
3.EL隐式对象
答:
JSP:
pageContext(PageContext实例对应于当前页面的处理);
作用域:
pageScope(与页面作用域属性的名称和值相关联的Map类);
requestScope(与请求作用域属性的名称和值相关联的Map类);
sessionScope(与会话作用域属性的名称和值相关联的Map类);
applicationScope(与应用程序作用域属性的名称和值相关联的Map类);
请求参数:
param(按名称存储请求参数的主要值的Map类);
paramValues(将请求参数的所有值作为String数组存储的Map类);
请求头:
header(按名称存储请求头主要值的Map类);
headerValues(将请求头的所有值作为String数组存储的Map类);
Cookie:
cookie(按名称存储请求附带的cookie的Map类);
初始化参数:
initParam(按名称存储Web应用程序上下文初始化参数的Map类);
9.Web服务
1.web服务的创建与发布
答:
2.客户端程序调用web服务
答:
3.单元测试
答:
是最小粒度的测试,以测试某个功能或代码块。
单元测试的对象是软件设计的最小单位——模块。
单元测试任务包括:
1模块接口测试;2模块局部数据结构测试;3模块边界条件测试;4模块中所有独立执行通路测试;5模块的各条错误处理通路测试。
1.hibernate完成对象持久化
1.hibernate原理与使用
答:
是一个开放源代码的对象关系映射框架,它对JDBC进行了轻量级的对象封装,使Java程序员可以随心所欲的使用对象编程思维来操纵数据库。
2.hibernate实现数据的CRUD
答:
查询:
Listlist=session.createQuery("fromUserasuserorderbyuser.loginName").list();
添加:
Sessionsession=HibernateSessionFactory.getSession();
Transactionts=null;
try{
ts=session.beginTransaction();
Useruser=newUser();
user.setLoginName("amigo");
user.setFullName("阿蜜果");
……
session.save(user);
mit();
}catch(Exceptione){
if(ts!
=null){
ts.rollback();
}
}finally{
HibernateSessionFactory.closeSession();
}
修改:
Sessionsession=HibernateSessionFactory.getSession();
Transactionts=null;
try{
ts=session.beginTransaction();
//取得持久化对象
Useruser=session.get(User.class,"amigo");
//对需要修改的属性进行修改
user.setFullName("阿蜜果");
……
session.update(user);
mit();
}catch(Exceptione){
if(ts!
=null){
ts.rollback();
}
}finally{
HibernateSessionFactory.closeSession();
}
删除:
Sessionsession=HibernateSessionFactory.getSession();
Transactionts=null;
try{
ts=session.beginTransaction();
//取得持久化对象
Useruser=session.get(User.class,"amigo");
session.delete(user);
mit();
}catch(Exceptione){
if(ts!
=null){
ts.rollback();
}
}finally{
HibernateSessionFactory.closeSession();
}
2.hibernate的关联映射
1.一对多关联配置
答:
"/>
2.多对一关联配置
答:
class=""
not-null="true"cascade="save-update">
3.多对多关联配置
答: