单选40分20题2
多选15分5题 3
填空10分10个空1
简答题15分3题5
应用题20分2题10
struts2
1.struts2的请求默认后缀名称是(C)
A .do
B .jsp
C .action D.xml
2.struts2动态方法调用的格式为(D)
A ActionName_methodName.do
B ActionName!methodName.do
C ActionName_methodName.action
D ActionName!methodName.action
3.当确认一个类为struts2框架的一个Action处理类时,应(A)
A 继承ActionSupport
B 实现ActionSupport
C 继承Action
D 实现Action
4.struts2默认的处理结果类型是(A)
A dispatcher
B redirect
C chain
D 以上都不对
5.struts2自定义类型转换器必须实现的接口是(C)
A Convert
B TypeConverter
C StrutsTypeConverter
D StrutsConvert
6.struts2核心功能是由(B)实现
A 过滤器
B 拦截器
C 类型转换器
D 配置文件
7.struts2中,不属于Action接口中定义的字符串常量的是(B )
A SUCCESS
B FAILURE
C INPUT
D ERROR
8.struts2控制器需要在(A)配置文件中进行配置
A web.xml
B struts.xml
C application.properties
D webwork.xml
9.下列不属于struts2标签的是(D)
A
B
C
D
10.OGNL语言的访问前缀是(C)
A $符号
B &符号
C #符号
D @符号
11.struts2关于注册全局类型转换器需要的配置文件名为(C)
A actionName-conversion.properties
B struts.xml
C xwork-conversion.properties
D conversion.properties
12.下列不属于struts2校验框架提供的校验机制是(D)
A requiredstring
B int
C stringlength
D isnotnull
13.在strutrs2中数据验证失败时,通过___标签显示错误信息。
(D)
A
B
C
D
14.假设在Session中存在名称为uid属性。通过OGNL访问该属性。正确的代码是(B)
A #uid。
B #session.id。
C uid 。
D ${session.id} 。
15.在控制器类中一般需要添加相应属性的___________和___________。AC
A.setter方法
B.as方法
C.getter方法
D.is方法
16.在struts2配置中用(c)元素来配置常量:
A.
B.
C.
D.
17.关于“#session.persons.{? #this.age>20}”OGNL代码所表示的意义说法正确的是(B )
a) 从persons集合中取出第一个年龄>20的Person对象
b) 从persons集合中取出所有年龄>20的Person对象子集
c) 从persons集合中取出最后一个年龄>20的Person对象
d) 该代码不符合OGNL的语法
1.Struts2的控制器组件有(ad)
a) Action
b) ActionForm
c) ActionServlet
d) FilterDispacher
2.下列选项中,关于Struts2的Action说法正确的是(ac )
a) struts2会为每一个请求创建一个对应的Action实例//每个请求时跳到一个action
b) struts2在请求处理过程中,只有一个Action实例
c) struts2通过属性来封装用户请求参数
d) 在struts2中定义的属性都用于封装用户请求参数
3.struts2关于注册全局类型转换器的说法正确的是(ab )
a) 必须提供xwork-conversion.properties文件
b) 注册文件的格式为:复合类型=对应类型转换器
c) 注册文件的格式为:对应类型转换器=复合类型
d) 以上说法都不正确
4. struts2自定义拦截器中的“return invocation.invoke”代码表示(bd )
a) 不执行目标Action的方法,直接返回
b) 执行目标Action的方法,直接返回逻辑视图名称
c) 在自定义拦截器中,该代码是必需的
d) 在自定义拦截器中,该代码是可选的
5.以下属于struts2配置文件中的配置元素是:(ab)
A.
B.
C.
D.
6.以下关于ValueStack说法正确的是:acd
A.每个Action对象实例拥有一个ValueStack对象
B.每个Action对象实例拥有多个ValueStack对象
C.Action中封装了需要传入下一个页面的值,这些值封装在ValueStack对象中
D.V alueStack会在请求开始时被创建,请求结束时消亡
7. 自定义拦截器类的方式有:(AD)
A.实现Interceptor接口
B.实现AbstractInterceptor接口
C.继承Interceptor类
D.继承AbstractInterceptor类
1~Hibernate&EJB考试试题1、下面关于Hibernate说法正确的是(ad )(选择两项)A)Hibernate是ORM的一种实现方式
B)Hibernate不要JDBC的支持
C)属于控制层
D)属于数据持久层
2~下面关于ORM的说法错误的是(ac )(选择两项)
A)对象关系映射,让现实中的对象同数据库的表产生映射(类与表产生映射)
B)对象关系映射,让类同表产生关系
C)对象关系映射,让类同记录产生关系(类的实例与记录(表中的一行数据)产生关系)D)对象关系映射,让类中的属性同表中的列产生关系
3~下面关于Hibernate中Session的说法正确的是(ad )(选择两项)
A)Session是轻量级的,可以随意的创建和销毁
B)Session是重量级的,不能随意的创建和销毁
C)Session是线程安全的
D)Session不是线程安全的
4~下面关于Hibernate中Transaction的使用说法正确的是(bd )(选择两项)
A)Transaction是可有可无的
B)Transaction在做查询的时候是可有可无的
C)Transaction在做修改的时候是可有可无的
D)Transaction在做修改的时候是必须的
5~关于Hibernate中show_sql配置说法正确的是(bc )(选择两项)
A)默认值为true
B)默认值为false
C)为true时表示在后台打印出SQL语句
D)为false表示在后台打印出SQL语句
6~下列关于延迟加载说法正确的是(ac )(选择两项)
A)lazy="true"表示采用延迟加载
B)lazy="false"表示采用延迟加载
C)Lazy默认情况下位true
D)Lazy 默认情况下位false
7~面关于HQL说话正确的是(bd )(选择两项)
A)HQL就是SQL,不区分大小写
B)HQL不是SQL,区分大小写
C)HQL操作的是表
D)HQL操作的是对象
8~在Hibernate关系配置中,关于cascade的配置说话正确的是(cd )(选择两项)cascade 的值可以是:all,none,delete,save-update,delete-orphan,all-delete-orphan
A)可以是save
B)可以是update
C)可以是delete
D)可以是all
9~在Hibernate映射文件的ID的配置中,主键生成器有(ad )(选择两项)
A)increment
B)desc
C)asc
D)identity
10~Hibernate配置文件中,不包含下面的(AB)〔选择二项〕
a) “对象-关系映射”信息
b) 实体间关联的配置
c) show_sql等参数的配置
d) 数据库连接信息
hibernate单选题
1~ 在三层结构中,数据访问层承担的责任是(B)〔选一项〕
a) 定义实体类
b) 数据的增删改查操作
c) 业务逻辑的描述
d) 页面展示和控制转发
2~下面关于Hibernate的说法,错误的是(C)〔选择一项〕
a) Hibernate是一个“对象-关系映射”的实现
b) Hibernate是一种数据持久化技术
c) Hibernate是JDBC的替代技术
d) 使用Hibernate可以简化持久化层的编码
3~在Hibernate关系映射配置中,inverse属性的含义是(B)。〔选择一项〕
a) 定义在
b) 声明在
c) 定义在
d) 声明在
5~在多对一得配置中,关于fetch的配置说法正确的是(b )
A)其值可以是true或false
B)其值可以是join或select
C)其值可以是lazy或inverse
D)以上都不对
6~在使用了Hibernate的系统中,要想在删除某个客户数据的同时删除该客户对应的所有订单数据,下面方法可行的是(B。〔选择一项〕
a) 配置客户和订单关联的cascade属性为save-update
b) 配置客户和订单关联的cascade属性为all
c) 设置多对一关联的inverse属性为true
d) 设置多对一关联的inverse属性为false
7~执行下面的hql查询,关于返回值的说法,正确的是(B)。select https://www.docsj.com/doc/8114700173.html,ername,https://www.docsj.com/doc/8114700173.html,erid
from https://www.docsj.com/doc/8114700173.html,er u where u is not null
a) 语法错误,不能执行
b) 返回一个类型为List的实例
c) 返回一个数组
d) 当返回结果只有一条时,返回一个数组
8~
a) none
b) save
c) delete
d) save-update
9~以下程序代码对Customer的name属性修改了两次:B
tx = session.beginTransaction();
Customer customer=(Customer)session.load(Customer.class,new Long(1));
customer.setName(\"Jack\");
customer.setName(\"Mike\");
https://www.docsj.com/doc/8114700173.html,mit();
执行以上程序,Hibernate需要向数据库提交几条update语句?
a) 0
b) 1
c) 2
d) 3
10~以下哪一种检索策略利用了外连结查询?(C)
a) 立即检索
b) 延迟检索
c) 迫切左外连结检索
d) 迫切右外连结检索
11~POJO是(A)
a) Plain Old Java Object
b) Programming Object Java Object
c) Page Old Java Object
d) Plain Object Java Old
12~如果你已知某个实例的持久化标识,你可以使用Session的_____方法来获取它A
a) load()
b) loadAll()
c) getAllData()
d) init()
13~在Hibernate中,关于数据库的方言,下面哪个说法是正确的D
a) 可以不写数据库方言
b) 数据库方言没有作用,可以随便写
c) 有通用的数据库方言可以使用
d) 数据方言对应于每个数据库,主要用于产生SQL语句
填空题
struts2
1.Struts2框架由_______Struts____和_____WebWrok______框架发展而来。(Struts&WebWork )
2.Struts2以______WebWork____为核心,采用______拦截器_____的机制来处理用户的请求。(WebWork,拦截器)
4.Struts2中的控制器类是一个普通的_______java类____。Class
5.如果要在JSP页面中使用Struts2提供的标签库,首先必须在页面中使用taglib编译指令导入标签库,其中taglib编译指令为_<%@ taglib prefix="s" uri="/struts-tags"%>__________。<%taglib uri="/struts-tags" prefix="s"%>
6.在Struts2表单标签库中,表单标签为___________。
7.ActionSupport类实现了____V alidate_______接口和______Action_____等接口。Action和Validate
8.通过控制器类中的_____validate()______方法来输出校验错误信息。
:在HIBERNATE中存在线程不安全的对象是____session__ _存在线程安全的对象是_____sessionFactoty___ _. session sessionfactory
2.HIBERNATE中持久对象的状态变化分别是__临时状态____、游离状态______和__持久化状态______ 临时状态游离状态持久化状态
3、HIBERNATE 的延迟加载包括_____实体对象加载_______,_集合类型加载__________和______属性延迟加载____ 实体对象的延迟加载集合类型的延迟加载属性延迟加载
4.13.Hibernate的会话接口中声明了持久化的操作,删除一个实体的方法是____delete()_______,查询实体集的方法是____getClass()__,获得事务处理接口的方法是____beginTrascation()_____。delete() list() beginTransction()
5.Hibernate应用缺省的XML格式的配置文件名是___hibernate.cfg.xml________, 放置在____src_______下;配置数据库方言的属性名是_______dialect____。hibernate.cfg.xml src dialect
简答题
1.简述什么是MVC?
答:MVC即模型-视图-控制器.MVC是一种设计模式,它强制把应用程序的输入处理和输出分开.视图是用户看到并与之交互的界面。视图向用户显示相关的数据,并能接受用户的输入,但是它并不进行任何实际的业务处理。模型是应用程序的主体部分。模型表示业务数据和业务逻辑。控制器接受用户的输入并调用模型和视图去完成用户的需求
2.用自己的话简要阐述struts2的执行流程。(6)
答:基本简要流程如下:1、客户端浏览器发出HTTP请求。2、根据web.xml配置,该请求被FilterDispatcher接收。3、根据struts.xml配置,找到需要调用的Action类和方法,并通过IoC方式,将值注入给Aciton。4、Action调用业务逻辑组件处理业务逻辑,这一步包含表单验证。5、Action执行完毕,根据struts.xml中的配置找到对应的返回结果result,并跳转到相应页面。6、返回HTTP响应到客户端浏览器。
3.Hibernate工作原理?为什么要用?
答:
原理: 1.读取并解析配置文件 2.读取并解析映射信息,创建SessionFactory 3.打开Sesssion 4.创建事务Transation 5.持久化操作 6.提交事务7.关闭Session 8.关闭SesstionFactory
为什么要用: 1. 对JDBC访问数据库的代码做了封装,大大简化了数据访问层繁琐的重复性代码。
4.Hibernate 有哪5 个核心接口?它们的作用分别是什么?
答:Configuration 接口:配置Hibernate,根据其启动hibernate,创建SessionFactory 对象;SessionFactory 接口:初始化Hibernate,充当数据存储源的代理,创建session 对象,
sessionFactory 是线程安全的,意味着它的同一个实例可以被应用的多个线程共享,是重量级、二级缓存;
Session 接口:负责保存、更新、删除、加载和查询对象,是线程不安全的,避免多个线程共享同一个session,是轻量级、一级缓存;Transaction 接口:管理事务;
Query 和Criteria 接口:执行数据库的查询。
应用题
1.给编写一个struts2的拦截器,要求实现对未登录的用户进行拦截并跳转至登录页面。
要求写出拦截器类的代码与其在配置文件中的定义声明部分。
注:session中存储登录用户信息的标识字符串为:LOGINUSER;
拦截器类名为IsLoginInterceptor ,所在包com.iss.interceptor
跳转到登录界面的返回字符串为login。
代码:
拦截器类:
public class IsLoginInterceptor extends AbstractInterceptor{
@Override
public String intercept(ActionInvocation actionInvocation) throws Exception {
Map
User user = (User) session.get("LOGINUSER");
if(user==null){
return "login";
}else{
return actionInvocation.invoke();
}
}
}
配置文件:
在数据库中,已知存在用户表和地址表,表结构如下:
用户表User
userId Int(自动增长)
userName varchar
地址表Address
addressId Int(自动增长)
addressName varchar
user_id int
用户表主键字段userId,地址表主键addressId,并且地址表user_id是用户表的外键。
写出在Hibernate框架下的User表的映射文件与Address表的映射文件。
注:假设实体类已经创建,且属性名与数据库字段名完全一致(大小写同时一致),实体类在包com.iss.pojo下。
User映射文件:
Address映射文件:
基于JAVAEE的在线考试系统 【内容提要】在线考试系统旨在实现考试的无纸化管理,对一些科目的考试可以通过互联网络或局域网进行,方便校方考务的管理,也方便了考生,尤其适合考生分布广,不易集中的远程教育。我主要开发系统的后台管理系统—JAVA 在线考试管理子系统,它包括试题管理、考生管理、试卷管理、试卷自动审批等功能。本论文主要介绍了对JAVAEE在线考试系统的分析、设计和开发的全部过程。运用ER图,程序流程图等对在线系统的设计过程进行详细的说明。全文共分为开发方案、需求分析、系统设计、关键技术解决,结论五部分。开发方案中主要介绍开发在线考试系统得目的、开发方案的选择及开发框架的技术的确定;需求分析介绍了在线考试系统的总体需求及系统各模块的功能需求;系统设计介绍了系统设计的指导思想、数据库的设计、系统模块的设计;关键技术介绍了在具体实现时需解决的一些技术,如开发框架的整合技术、开发 框架与数据库的连接及数据的备份与还原。 【关键词】:JSP, Servlet, Struts, JAVA,MySQL数据库,B/S模式 On-line examination system base on JAVA
Student : CHAO SUN supervisor: WEI MING XIAO 【ABSTRACT】On-line examination system the aim is carry out examination of have no the paper turn a management, can carry on through Internet net or bureau area net to some examinations of categories, convenient school square test the management of duty, also convenient the examinee is particularly suitable for examinee to distribute widely and not easily concentrated of long range education.I mainly develop the system-JAVAEE of the backstage management's on-line examination management sub- system of system and it includes to try the management, on-line creation of a management, examinee to try book, control the constitution that the student examine and try an examination and approval etc. function.This thesis mainly introduced to manage the analysis, design of the sub- system and all processes of the development to JAVAEE's on-line examination.Make use of ER diagram, procedure flow chart etc. to on-line manage the design process of sub- system to carry on expatiation.The full text is totally divided into the design, key technique of the analysis, system of the development project, need to solve, conclusion five part.Develop the main introduction in the project develops on-line examination system purpose, development project of choice and development frame of the assurance of technique;The need analysis introduced the total need of the on-line examination system and the function request of each mold of system piece;The system design introduced the design, system mold of the instruction thought, database of system design the design of the piece;The key technique introduced at concrete carry out need some techniques for solve, such as development frame of integration technique, development frame with The database link and the backup and revivification of data. Keyword: Servlet ,JSP, JAVA,MySql, Model of B/ S
第1章概述 中间件(middleware):中间件是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源,中间件位于客户机服务器的操作系统之上,管理计算资源和网络通信。 Java EE平台角色:Java EE产品提供者、应用组件提供者、应用组装者、部署者、系统管理员、工具提供者、系统组件提供者。 EJB:(Enterprise JavaBeans,企业化JavaBeans)是一个Java服务器端组件开发的规范,软件厂商根据它来实现EJB服务器。 EJB容器:是EJB的运行环境。它提供规范中定义的接口使EJB类访问所需的服务。容器厂商也可以在容器或服务器中提供额外服务的接口。EJB分为会话EJB和实体EJB两种。 CORBA:(Common Object Request Broker Architecture,通用对象请求代理架构)是一个分布式对象体系结构,它独立于平台,也独立于语言。在这个体系结构中,一个对象可以被本机上的客户或远程客户通过方法激活来存取。客户(一个对象或应用)无须知道被调用对象(称为服务对象)的运行环境,也无须知道实现这个对象的编程语言,客户只要知道服务对象的逻辑地址和提供的接口。 RMI:(Remote Method Invoke,远程方法调用)是一种被EJB使用的更底层的协议,正如其名字所表示的那样,RMI协议调用远程对象上方法,使用序列化方式在客户端和服务器端的对象之间传递数据。 JSP:(Java Server Page,Java服务器页面)是服务器端的脚本语言,是以Java和Servlet为基础开发而成的动态网页生成技术,它的底层实现是Java Servlet。JSP(Java Server Pages)页面由HTML代码和嵌入其中的Java代码所组成。服务器在页面被客户端所请求以后对这些Java代码进行处理,然后将生成的HTML页面返回给客户端的浏览器。 Servlet:Servlet是一些运行于Web服务器端的Java小程序,用来扩展Web服务器的功能。 JDBC:(Java Database Connectivity,Java数据库连接)是一组API,定义了用来访问数据源的标准Java类库,使用这个类库可以以一种标准的方法、方便地访问数据库资源。 XML:(Extensible Markup Language,扩展标记语言)是一种可以用来定义其它标记语言的语言,被用来在不同的商务过程中共享数据。 JMS:(Java Message Service,Java消息服务)是一种基于Java的技术,因此是平台无关的。它为消息服务定义了通用Java 语言接口,支持最常见的消息传递模型(发布/订阅和点到点)。通过对JMS(Java消息服务)API的访问可实现面向消息的通信。JMS通常用来实现异构系统之间的松散集成。 第2章JNDI:命名和目录服务 JNDI:(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API。命名服务将名称和对象联系起来,使得我们可以用名称访问对象。目录服务是一种命名服务,在这种服务里,对象不但有名称,还有属性。
中文乱码问题的解决方法 一种写一个过滤器。 一种是在servlet里设置中文编码为GB2312. Request.setCharacterEncoding(“GB2312”); 什么是spring Spring是分层的JavaSE/EE full-stack 轻量级开源框架,以IoC (Inverse of Control 控制反转)和AOP(Aspect Oriented Programming 面向切面编程)为内核,使用基本的JavaBean来完成以前只可能由EJB完成的工作,取代了EJB的臃肿、低效的开发模式。 spring核心组件:Core、Context 和 Beans其中最核心的组件就是Beans, Spring提供的最核心的功能就是Bean Factory。Spring 优点 非侵入式设计、方便解耦、简化开发、支持AOP、支持声明式事务处理、方便程序测试、方便集成各种优秀框架、降低Java EE API 的使用难度 IOC 在使用Spring框架之后,对象的实例不再由调用者来创建,而是由Spring容器来创建,Spring容器会负责控制程序之间的关系,而不是由调用者的程序代码直接控制。这样,控制权由应用代码转移到了Spring容器,控制权发生了反转,这就是控制反转。 IOC的注入方式 Set注入与构造注入 DI 从Spring容器的角度来看,Spring容器负责将被依赖对象赋值给调用者的成员变量,这相当于为调用者注入了它依赖的实例,这就是Spring的依赖注入。 Bean Bean的本质就是Java中的类,而Spring中的Bean其实就是对实体类的引用,来生产Java类对象,从而实现生产和管理Bean 。Bean的实例化方式 构造器实例化、静态工厂方式实例化和实例工厂方式实例化 Bean的装配方式 基于XML的装配、基于注解(Annotation)的装配和自动装配 简述MVC设计模式 简述jsp和servlet的关系 jsp就是一种基于servlet的技术,jsp的实现都必须将jsp译成servlet,jsp充分利用了servlet的平台独立性,安全性、可升级性以及强壮性等优点,jsp和servlet是可以相互操作的,jsp页面可以包含从serlet程序程序输出的内容,可以将内容输出到servlet程序。反过来servlet程序也可以包含从jsp页面输出的内容并且可以将内容输出到jsp页面。 SpringMVC是什么 Spring MVC是Spring提供的一个实现了Web MVC设计模式的轻量级Web框架。它与Struts2框架一样,都属于MVC框架,但其使用和性能等方面比Struts2更加优异。 SpringMVC特点 是Spring框架的一部分、灵活性强、提供了一个前端控制器DispatcherServlet、自动绑定用户输入、内置了校验器、支持国际化、支持多种视图、基于XML的配置 SpringMVC 的核心组件有哪些?简述其工作原理。 1、DispatcherServlet:中央控制器,把请求给转发到具体的控制类 2、Controller:具体处理请求的控制器 3、HandlerMapping:映射处理器,负责映射中央处理器转发给controller时的映射策略 4、ModelAndView:服务层返回的数据和视图层的封装类 5、ViewResolver:视图解析器,解析具体的视图 6、Interceptors :拦截器,负责拦截我们定义的请求然后做处理工作 工作原理:request请求到前端控制器拦截,传到映射器处理器,生成具体的处理器对象返回,前端控制器通过返回寻找合适的处理器适配器,处理器适配器调用并执行controller,controller执行后返回模型和视图,组成成ModelAndView组件,通过ViewResolver返回到特定的前台页面。 Mybatis是什么 MyBatis 是一款优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的XML 或注解来配置和映射原生类型、接口和Java 的POJO(Plain Old Java Objects)为数据库中的记录。 Mybatis一对一实体关系映射 嵌套查询是通过执行另外一条SQL映射语句来返回预期的复杂类型。 嵌套结果是使用嵌套结果映射来处理重复的联合结果的子集。Spring和Mybatis整合 1、创建项目,引入JAR包 2、编写db.properties 3、编写Spring 配置文件applicationContext.xml 4、编写MyBatis配置文件mybatis-config.xml 5、引入log4j.properties 网上订餐系统 三、(1)软件结构 (2)相关的类和视图(类名及功能以及主要属性与方法、视图名及功能) User:model 视图:register.jsp、delete.jsp、get.jsp、update.jsp、success.jsp (3)service层和dao 层的相关类(类名及功能以及主要属性与
第一章 一、什么是JA V A EE? 1、JAVA EE是一个标准中间件体系结构 2、JAVA EE是企业分布式应用开发标准。 二、JAVA EE编程思想和技术框架:什么是组件,什么是容器,JAVA EE有组件(三类重要组件和容器,其分布如何) JAVA EE编程思想:组件——容器 JAVA EE应用的基本软件单元是JAVA EE组件。 组件的运行环境被称为容器。 JAVA EE组件: 1、客户端组件:JAVA EE客户端既可以是一个web浏览器、一个Applet,也可以是一个应用程序。 2、web组件:web组件是在JAVA EE web容器上运行的软件程序。它的功能是在HTTP协议以上对web请求进行响应,这些响应动态的生成网页。JAVA EE web组件包括Servlet和JSP。 3、EJB组件:用于实现特定的应用逻辑。EJB分为两种:会话EJB和实体EJB,会话EJB向客户提供一定的服务。而实体EJB则代表数据对象,通常代表的是数据表记录集的一行,一个实体EJB可以同时与多个客户进行交互。 三、简述JAVA EE体系所含的主要技术 1、组件技术 2、服务技术 3、通信技术
四、Java EE应用有哪些优点? 1、独立于硬件配置和操作系统2.坚持面向对象的设计原则3.灵活性、 可移植性和互操作性4.轻松的企业信息系统集成 第三章 一、什么是servlet,与Applet有什么区别 定义:一种独立于操作系统平台和网络传输协议的服务器端的Java 应用程序,它用来扩展服务器的功能,可以生成动态的Web页面 相似之处:(1)它们不是独立的应用程序,没有main()方法。(2)它们不是由用户调用,而是由另外一个应用程序(容器)调用。(3)它们都有一个生存周期,包含init()和destroy()方法。 不同之处:(1)Applet运行在客户端,具有丰富的图形界面。(2)Servlet运行在服务器端,没有图形界面。 二、servlet的工作原理(参与WEB.xml中的,
《Java EE编程技术》课程题目与要求 说明: 本学期,该课程为考试改革课程,不参加统一的考试,采用技能测试的方式评价。 要求学生能够应用该课程中所介绍的思想、原理、技术方法,解决实际应用问题的能力。 设计题目(平时我们做过的题目) 针对下面给出的“网络书城系统”的需求和说明,完成系统的开发与设计。 网络书城的主要功能就是让用户能够足不出户就可以购买到自已想要的书籍,所以网络书城系统主要提供如下功能: (1)用户能够使用本网站完成图书的浏览、查询和购买。 (2)普通用户只能浏览图书信息,浏览分为3种方式:按类别浏览、按条件浏览、查询图书。 (3)普通用户通过注册成为注册用户,注册后的用户可以登录,登录后可以修改注册资料。(4)注册用户登录后可以进行在线图书购买,购买的图书存放在购物车中,可以对购物车中的商品数量进行修改、删除,调整好购物车中内容后,可以把该内容保存到订单中,在保存订单的时候要求用户填写送货地址和联系方式。订单提交后用户可以开始一次新的购物过程。 (5)对于后台系统,要求可以进行商品目录的维护,商品的图片可以上传到服务器,特价商品维护,订单可以查询详细信息,订单确认和订单发送。 设计要求 (1)利用Struts2、Hibernate、Spring技术。 提示:若只采用Struts2技术设计,一般给中等; 若采用Struts2+Hibernate技术整合实现,一般给良好(也可能为优) 若采用Struts2+Hibernate+Hibernate技术整合实现,一般给优秀。 若三种方式都提供,但第3种不完善,也可以给优秀。 (2)给出系统的简单的分析与设计(主要包括:你的设计思想,功能划分,体系结构、类等有关的包结构,设计中遇到的问题等) (3)提供设计文档和源代码。 本课程成绩的确定 该课程有3个内容确定我们的最后课程成绩: (1)上面的设计题目,50分。 (2)综合测试20分 (3)平时考勤与作业30分
试题类型: 一、单项选择题(每小题2分,共20分) 1.以下关于Servlet程序的叙述中,错误的是(ABD)。 A)HttpServlet是一个抽象类,继承它的子类要强制实现init()方法,service()方法、destroy()三个方法,因为这三个方法都是抽象类中的抽象方法。 B)HttpServlet类中,init()方法的开象是一个ServletConfig对象,它相当于JSP中的application对象。 C)HttpServlet类中,doXXX()方法的两个形参依次为HttpServletResponse、HttpServletRequest对象。 D)如果多个用户请求同时访问一个Servlet程序,则init()方法、service()方法、destroy()三个方法会被多个线程运行。 2.以下关于过滤器的叙述中,正确的是(ACD)。 A)客户端请求激活的过滤器链是web应用中部署的过滤器链的了集。 B)请求访问一个目标资源时,目标资源的输出信息直接付给客户端,不再经过过滤器的处理。 C)过滤器中,业务逻辑代码是在doFilter()方法内实现的。 D)过滤器是一种特殊的Servlet程序。 3.JSP页面的Servlet程序中,各主要方法的执行先后顺序为(C)单选 A)getDependants( )、jspInit( )、jspService( )、jspDestroy( ) B)jspService( )、jspInvoke( )、_jspDestroy( ) C)jspInit( )、_jspService( )、jspDestroy( ) D)jspInit( )、jspService( )、jspDestroy( ) E)_jspService( ) 4.要将request转发给下一个JSP页面,可行的方案是(BCD)。 A)直接使用pageContext.forward() B)通过application.getRequestDispatcher()获得目标资源的RequestDispatcher对象,在执行对象的forward()方法 C)使用
1.以下对于注解类Annotation说法正确的是: A.定义Annotation类型的关键字是class B.定义Annotation类型的关键字是Annotation C.定义Annotation类型的关键字是interface D.定义Annotation类型的关键字是@interface 2.下列流中哪个不属于字符流? A.InputStreamReader B.BufferedReader C.FilterReader D.FileInputStream (字节流) 3.哪个关键字可以对对象加互斥锁?(线程同步) A.transient(变量修饰符) B.serialize C.synchronized D.static 4.对于已经被定义过可能抛出异常的语句,在编程时 必须使用try/catch语句处理异常,或用throw将其抛出。 5.下列对多态性的描述中,错误的是 A.Java语言允许方法重载与方法覆盖 B.Java语言允许运算符重载 C.Java语言允许变量覆盖 D.多态性提高了程序的抽象性和简洁性 6.FilterOutputStream是BufferedOutputStream、DataOutputStream及PrintStream的父类,以下哪个类可能是FilterOutputStream构造函数的参数类型? A.OutputStream B.File
C.InputStream D.BufferedOutputStream 7.为AB类的一个无形式参数无返回值的方法method书写方法头,使得使用类名AB作为前缀就可以调用它,该方法头的形式为( )。 A.static void method ( ) B.public void method ( ) C.final void method( ) D.abstract void method( ) 8.编译Java Application 源程序文件将产生相应的字节码文件,这些字节码文件的扩展名为( )。 A..java B..class C..html D..exe 9.在Java语言中,整型常数123占用的存储字节数是() A.1 B.2 C.4 D.8 10.JAVA中char类型系统分配( )字节的内存空间 A.1 B.2 C.4 D.根据不同系统分配11.下面哪个选项不能用作变量名的首字符?() A.字母B.下划线C.数字D.美元符($)13.关键字()表明一个对象或变量在初始化后不能修改。 A.extends B.final C.this D.finalizer 14.以下关于抽象类和接口的说法错误的是() A.抽象类在Java语言中表示的是一种继承关系,一个类只能使用一次继承。但是一个类却可以实现多个接口。 B.在抽象类中可以没有抽象方法。
7*3=21 1.自动装箱:自动装箱就是Java编译器在编译期间自动将原生类型转换成其对应的包装类型 2.自动拆箱:将一个包装类型自动转换为它所对应的简单数据类型。 3.动态网页:动态网页的关键内容是在服务器端动态生成。相对于静态网页,动态网页最本质的区别在于它会被服务器当作一个程序来执行,页面中嵌入的脚本代码会被服务器识别并执行,执行结果与页面静态内容合并后送往客户端浏览器显示。 4.C/S模式:两层体系结构由客户层和服务器层构成 5.B/S模式:浏览器/服务器模式,三层体系结构在二层体系结构应用程序的客户层与服务层之间添加了一个第三层(应用服务层),形成客户层、应用服务层和数据服务层三个层次。 6.JDBC:Java Data Base Connectivity,java数据库连接,是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。 7.JTA:Java Transaction API,JTA允许应用程序执行分布式事务处理在两个或多个网络计算机资源上访问并且更新数据。JDBC驱动程序的JTA支持极大地增强了数据访问能力。 8.Servlet:servlet 是在服务器上运行的小程序 9.JSP: Java Server Pages,java服务器页面,其根本是一个简化的Servlet设计,它是一种动态网页技术标准。用JSP开发的Web应用是跨平台的,既能在Linux下运行,也能在其他操作系统上运行。 10.JSTL: JSP Standard Tag Library即JSP标准标签库,是一个不断完善的开放源代码的JSP标签库和技术规范。 11.Cookie:是Web服务器暂存在客户端浏览器内存或硬盘文件中的少量数据。Web 服务器通过HTTP报头来获得客户端中的cookie信息。 12.JSF: JavaServer Faces是一种用于构建Java Web 应用程序的标准框架,它提供了一种以组件为中心的用户界面(UI)构建方法,从而简化了Java服务器端应用程序的开发13.EJB:Enterprise Java Beans称为Java 企业Bean,是Java的核心代码,是sun的JavaEE 服务器端组件模型及javaEE的一部分,定义了一个用于开发基于组件的企业多重应用程序的标准。 14.JMS:Java消息服务(Java Message Service)应用程序接口是一个Java平台中关于面向消息中间件的API,用于在两个应用程序之间或分布式系统中发送消息,进行异步通信15.JPA: Java Persistence API,通过JDK 5.0注解或XML描述对象-关系表的映射关系,并将运行期的实体对象持久化到数据库中 16.Web Service:是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,用于开发分布式的互操作的应用程序。 17.XML:Extensible Markup Language可扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。 18.WSDL:Web Services Description Languag网络服务描述语言是Web Service的描述语言,是一种基于XML的用于描述Web服务及其操作,参数和返回值的语言。 19.ORM: Object Relational Mapping对象关系映射,是一种程序技术,用于实现面向对象编程语言里不同类型系统的数据之间的转换。 20.RIA: Rich Internet Applications丰富互联网程序,具有高度互动性、丰富用户体验以及功能强大的客户端,是集桌面应用程序的最佳用户界面功能与Web应用程序的普遍采用和快速、低成本部署以及互动多媒体通信的实时快捷于一体的新一代网络应用程序。 21.AJAX: Asynchronous Javascript And XML是指一种创建交互式网页应用的网页开发技术。AJAX = 异步JavaScript和XML,用于创建快速动态网页,通过在后台与服务器进行少
期末报告 课程名称:和学习指南 学院:信息工程与自动化学院 _ 学生姓名: _ 学号: 专业:物联网工程 年级: 2012级 指导老师:
一、实验内容 1.1题目:基于设计、实现一个课程管理应用程序,该程序 实现如下功能: (1)、有登录页面,登录用帐号、密码保存在数据库中,合法登录后进入学习成绩管理页面。否则给出错误提示。 (2)、在学习成绩管理页面可添加一门课程的成绩,添加内容包括:课程编号、课程名称、学生姓名、课程成绩等内容。添加后信息保存在数据库中。 (3)、可根据课程名称和学生姓名进行查询。 (4)、可删除和修改课程信息的内容。(即删除一条课程记录或修改课程记录中的某一字段)。 二、需求分析 学生成绩管理系统主要提供成绩查询,方便管理的网上的信息查阅平台,学生可以通过该系统查阅与自己相关信息。教师可以通过成绩管理系统查阅学生成绩信息,教师信息,等相关操作。系统管理员可以实现以上的所有功能,还有对学生的添加、删除、修改、教师的添加、删除、修改,等相关操作。 本次的实验的功能相对于一个完整的系统来说算是比较简单的,功能并不完善,角色也只有一种,但是做一个管理系统需要用到的技术却是基本都涵盖了,数据库与项目的连接、对数据库的更删查改操作、语法标签、、等知识的应用,本实验需要两个数据库表,一个是存用户账号和密码的表,一个是保存学生的信息的表,总之通过本实验,中本学期的的知识基本都会得到应用。虽然说功能并不完整,但是认真的做完这个项目还是要花很多心思的。 三、设计思路及流程 3.1设计思路
3.1.1登录与注册部分 用户需要登录才可以进入学生成绩管理页面,在登陆界面有注册功能,如果没有用户,可以注册,注册以后就可以用它来登陆,所有注册的账号密码都会保存在数据库的表中,如果登陆的时候输入的账号、密码和数据库中已有账号密码一致,则为合法登录,就可以进入学习成绩管理初始页面,否则出现错误提示,给个链接返回登陆界面,需重新确认输入。实现登陆与注册功能用到了、这两个、这两个和一个实现数据库操作的;登陆成功进入。 3.1.2登陆成功之后展示界面 登陆成功以后显示的是数据库当前所有的学生信息,以列表形式展示出来,这是一个完成的,该用到了标签的方法,用来遍历显示数据库所有信息。在页面左上角有一个按钮,这是一个事件,它的作用是转让用户到有增删查改的链接的。 3.1.3添加部分 点击上面的操作按钮后进入操作选择页面,然后点击“增加”按钮既可以进入增加信息的界面,该界面也有展示数据库当前信息的功能,进来以后就可以看到数据库当前信息和实现增加课程号,课程名,学生名、成绩的功能。增加完毕以后有个提交,这会提交到对应,然后调用,把增加的数据保存到数据库,而且增加以后就会在上面的“当前数据库信息”下面看到刚刚增加的信息。该部分用到了、、、四个文件,在增加信息的下面有个超链接,该超链接用于返回初始页。 3.1.4删除部分 在进入删除的界面之前跟上面的增加部分一样,进入删除页面以后在信息展示的下面会提示“请输入需要删除信息的学生姓名”,也就是说只能看着上面的信息展示来通过输入学生姓名删除数据库对应的记录,调用过程跟上面的增加差不多,该部分用到了、、、来完成。 3.1.5修改部分 这部分跟上面的模块做法依旧很相似,最大的不同是只是对数据库的操作不一样,本模块有一个缺点,由于开始做项目之气前,在设计数据库的时候没有想
JAVA EE期末考试复习材料 一、选择题: 1以下哪个HIbernate主键生成策略是实现主键按数值顺序递增的?(A) A) increment B)Identity C)sequence D)native 2、在JSP中,Page指令的(B)属性用来引入需要的包和类。 A)Exends B)import C)language D)contentType 3、从以下哪个选项中可以获得Servlet的初始参数(C) A)Servlet B)ServletContext C)ServletConfig D)GenericServlet 4、以下关于HIbernate说法正确的是(A) A)Hibernate是ORM的一种实现方式。 B)Hibernate不要JDBC的支持。 C)属于控制层 D)对象关系映射,让对象同数据库表产生关系。 5、下面关于OPM的说法不正确的是(C) 持久化是将程序中数据在瞬时状态和持久状态间转换的机制。 瞬时状态是指程序数据保存在内存中,程序退出时,数据就不存在了。把关系数据库中的数据读出来不属于持久化。 程序数据直接保存成文本文件属于持久化。 6、下面关于SessionFactory的说法正确的是(B) A)SessionFactory是轻量级的,可以随意创建和销毁。 B)SessionFactory是重量级的接口,不可以随意创建和销毁。 C)SessionFactory是重量级的类,不可以随意创建和销毁。 D)SessionFactory是类。 7、下面关于Hibernate中load和get的方法说法正确的是(D) A)两个方法是一样的,没有任何区别。 B)两个方法是不一样的,get先找缓存,再找数据库。 C)两个方法是不一样的,load每次都会找数据库。 D)以上说法都不对。
第一章 1.面向过程和面向对象程序设计语言的区别 2.编译执行和解释执行语言的区别 3.java的各个版本,javase javaee javame 4.什么是java虚拟机?工作原理是什么?jdk和jre的区别? 5.各个命令的含义:javac.exe java.exe Javadoc.exe jar.exe(考试不要求) 6.path和classpath的区别(考试不要求) 第二章 1.标识符的命名规则 2.变量使用三部曲:声明,赋值,使用 3.如何定义常量? 4.基本数据类型(8种),占用的空间大小,给定一个常数,默认的类型,浮点数的两种表 示方法 5.基本数据类型的转换,向上和向下 6.参数可变的方法定义(考试不要求) 第三章类和对象 (一)类和对象的基本概念***** 1.面向对象语言的基本特点 2.什么是类和对象,什么是封装性 3.java中所有对象都是引用类型。(内存分析) 4.对象的创建和使用(new,.,) 5.JVM内存分配,堆、栈、数据、代码(考试不要求) 6.java对象生命周期,什么是gc?工作原理?好处? 7.构造函数作用,定义要求。默认构造方法和对类成员的初始化。构造和初始化顺序(4 步)。 8.对象变量的传递,值传递和引用传递 9.什么是方法重载?要求是什么?和方法重写有什么区别? 10.this引用的作用 11.静态数据成员和静态方法成员。静态成员和普通成员的互相访问 (二)包的概念 12.什么是包?如何定义包?命名规则是什么?如何使用包?哪些常用包?哪个包不显式 导入就可使用? 13.使用jar打包(考试不要求) (三)继承的概念***** 14.什么是继承?带来的好处是什么? 15.如何实现继承?子类成员和父类成员有哪三种关系?新增,重用,重写 16.什么是重写?有哪些语法要求? 17.super关键字的作用什么? 18.子类的构造函数的执行过程。能否继承父类?如何显式调用父类构造函数? 19.类成员的可访问性。(4个关键字)
传智播客java就业班入学测试题 共50道题,每道题2分,总分100分,80分为合格。 注意,题目有多选,也有单选。请认真作答。 对应试者的忠告: 传智播客从办学一来,一直在IT培训领域保持着良好的口碑,之所以能做到这么好的口碑,主要得益于过硬的教学质量以及学员的高就业率。 本测试题的目的在于帮助学员检测自己的java基础,因为公司要保证教学质量,光有名师授课是远远不够的,还需要学员们都具备一个基本的java基础,试想一下,如果学员入学前我们不进行测试,那么必然会导致学生的技术水平参差不齐,再好的老师也无法把这样的班教好。 希望参加测试的学员能本着对自己负责的态度,独立完成这套测试题。 如果您试图通过找人帮忙做题等其他途径来完成这套测试题,我们劝您千万别这样做,因为这样是害了自己。即使通过测试,顺利进入就业班的学习,同样是跟不上老师的进度,不会有一个好的结果。 如果您觉得完成这套测试题非常有难度,那也没有关系,因为我们针对基础不好的学员专门开设了 java基础与加强班,您可以通过短时间的培训,打下一个坚实的基础,再继续参加我们就业班的培训。 1.在JAVA中,下列哪些说法是正确的(AC ) A.java源文件的扩展名为.java B.写好的java源程序可以直接运行 C.编写的源程序必须先编译后才能运行 D.程序员可以读懂扩展名为.class的文件 2.下列标识符哪个是合法的( BD) A.class B.$abc C.1234 D._name 3.下面哪些赋值语句是正确的?( CD) A. long test = 012; B. float f = -412; C. int other = (int) true; D. double d = 0x12345678; E. byte b = 128; 4.在Java中,下列语句不能通过编译的有( BC) A. String s= “join”+ 3; B. int a= “join”+3;
JavaEE 升级试卷V2.0第二套卷 单选题(15题,每题2分,共30分) 1.下列(D )不能作为switch表达式的数据类型。 A.int B.short C.char D.long 2.System.out.println("1"+2);打印出的结果是(B ) A.3 B.12 C.1+2 D.4 3.下列表达式正确的是( D ) A、 byte=128; B、 Boolean=null; C、 long l=0xfffL; D、 double=0.9239d; 4. 已知: int[] a =new int[100]; 请问以下给出的数组元素中会发生ArrayIndexOutOfBoundsException 异常(D) A) a[0] B) a[1] C) a[99] D) a[100] 5.下面哪一个是合法的数组声明和构造语句( C ) A. int[] ages = [100]; B. int ages = new int[100]; C. int[] ages = new int[100]; D. int() ages = new int(100); 6.下列代码的运行结果是( C ) public static void main(String args[]){ int [] a={1,2,3,4,5}; System.out.println(a[3]); } A.3 B. 2 C. 4 D. 1 7.下列关于ArrayList集合常用操作描述错误的是( C ) A.size()方法可以获取集合的长度,返回值为int类型 B.get(int index)方法可以获取下标index对应的元素 C.delete(int index)方法可以删除下标index对应的元素 D.set(int index, object element)方法修改下标index对应的元素为element
一、填空题 1.企业级应用程序通常应具备快速适应性、分布式、高安全性、可扩展性和集成 化等特性。P(6) 2.两层体系结构由客户层和服务器层构成,即所谓的C/S 模式。P(7) 3.三层体系结构通常包括客户层、服务器层和应用服务器层三个层 次。P(7) 4.典型Java EE 应用包括:客户层、表示层(Web层)、业务逻辑层和企业信息 系统层四个层次。P(8) 5.Java EE技术框架大致包括组件技术、服务技术和通信技术三个 部分。P(11) 6.Java EE组件主要包括客户端组件、Web组件和EJB组件三大类。 P(10) 7.按打包粒度从小至大的顺序,Java归档包的类型分别是JAR 、WAR 和 EAR 。(PPT) 8.程序错误可分为语法错、语义错和逻辑错三类。P(20) 9.JSP指令元素主要包括include 、page 和taglib 三个。P(34) 10.include指令的基本语法为<%@ include file=”URL” %> 。P(34) 11.taglib指令的基本语法为<%@ taglib uri=”taglibURI” prefix=”pre” %> 。P(35) 12.JSP参数标记的基本语法为