《JavaEE企业级应用开发》课后习题答案

  • 格式:docx
  • 大小:32.13 KB
  • 文档页数:11

1

《JavaEE企业级应用开发》课后习题答案

第1章 企业级项目导引及开发环境

1. 简述企业级应用特点。

(1) 数据持久化(Persistent data )。

(2) 海量数据的存储。

(3) 数据的并发访问。

(4) 大量的用户图形界面。

(5) 需要和其它应用集成。

(6) 数据概念不统一。

(7) 复杂的业务逻辑。

2. 简述企业级应用常用框架及其整合方案有哪些。

Struts/Struts2+ Spring + Hibernate。

Spring + SpringMVC + SpringJDBCTemplate。

Spring + SpringMVC + Mybatis。

Springboot + Mybatis。

3. 简述什么是Maven,以及Maven在项目开发中的作用。

Maven是Apache公司下的一个纯Java开发的开源项目,是一个用于解决项目开发中依赖项目类库下载和同步的项目管理工具,使用Maven可以对Java项目进行构建和依赖管理,并可以用其帮助项目的编译。

4. 简述Maven项目中pom.xml文件的地位和作用。

pom.xml是整个Maven系统的基本单元,是Maven工程的核心配置文件,与Maven项目构建过程相关的一切设置都在这个文件中进行配置。

第2章 Spring入门

1. 简述什么是SpringIOC/DI。

Spring的核心理念包括IoC(控制反转)和AOP (面向切面编程)。IOC:控制反转;DI:依赖注入。控制反转和依赖注入是对同一件事情的不同描述,只是描述的角度不同。 2

2. 简述Spring的核心容器。

Spring框架提供了两种核心容器BeanFactory和ApplicationContext。BeanFactory是Spring框架最核心的接口,是一个用于管理Bean的工厂,或者说是一个类工厂。使用BeanFactory可以完成各种Bean的初始化,以及调用它们的生命周期方法。但由于BeanFactory更趋于底层,实际开发中并不会在代码中体现。ApplicationContext(应用上下文)建立在BeanFactory基础上,是BeanFactory的子接口。

第3章 Spring Bean装配

1. 简述Spring容器的工作原理。

Spring框架应用时,首先需要在应用程序中定义Bean的实现类,如Bean1、Bean2等,之后需要对Bean进行配置。Bean的实现类和配置信息完成后,在应用程序的运行过程中,第一步,加载Spring的Bean配置文件,读取Bean的配置信息。第二步,Spring容器根据各种形式的Bean配置信息在容器内部建立Bean定义注册表,之后根据注册表加载和实例化Bean,并建立Bean和Bean的依赖关系。第三步,将实例化好的Bean放到Bean缓存池中备用。第四步,应用程序调用Bean实现程序功能。

2. 简述Spring的Bean有哪些装配方式。

比较常见的三种方式为基于XML的装配、基于注解(Annotation)的装配和自动装配,但最为常用的是基于注解的方式。

第4章 Spring数据库编程

1. 简述如何配置Spring JdbcTemplate。

Spring框架中使用JdbcTemplate需要在Spring的XML配置文件中对DataSource和JdbcTemplate进行配置。在XML配置文件中定义一个JdbcTemplate的Bean组件,并将dataSource进行注注入,即将JDBC数据库连接时将使用到的数据源指向已经配置好的dataSource。dataSource配置中包含4个属性,各属性含义如下。

(1) driverClassName:所使用驱动器名称,对应驱动jar包中的Driver类。

(2) url:数据源所在的地址。

(3) username:访问数据库的用户名。 3

(4) password:访问数据库的密码。

2. 简述Spring JdbcTemplate类的常用方法及返回值。

包括execute()、query()、update()方法等。

execute()方法:无返回值,用于执行执行SQL语,

queryForObject(sql, requiredType):返回不同类型的对象,例如返回一个String对象。

queryForList(String sql,Object[] args,class elementType):该方法可以返回多行数据的列表,即返回一个装有map的list,每一个map是一条记录,map里面的key是字段名。

queryForMap(String sql):查询的返回结果只能是一条记录,返回0条或多条都会报错,返回结果类型是一个Map,Map中的key值是对应数据库表中column的值。

int update(String sql):该方法是最简单的update方法的重载形式,可以直接执行传入的SQL语句,并返回受SQL语句操作影响的行数。

第5章 Spring MVC入门

1. 简述SpringMVC框架及工作流程。

(1) 用户发送请求至前端控制器DispatcherServlet,并且会加载SpringMVC的XML配置文件,假如配置文件名为springmvc.xml。

(2) 前端控制器会找到处理器映射器(HandlerMapping),通过HandlerMapping,根据配置或注解找到最终要执行的处理器Handler。

(3) 处理器映射器找到具体的处理器(可以根据xml配置、注解进行查找),生成处理器对象及处理器拦截器(如果有则生成)并返回给DispatcherServlet。

(4) DispatcherServlet拿到Handler后,找到HandlerAdapter(处理器适配器),通过它来访问处理器,并执行处理器。

(5) HandlerAdapter经过适配调用具体的处理器(Controller类中的方法)。

(6) 执行Controller类中的方法返回一个ModelAndView对象给HandlerAdapter。

(7) HandlerAdapter将处理方法的执行结果ModelAndView返回给DispatcherServlet。

(8) 前端控制器请求视图解析器(ViewResolver)去进行视图解析,根据逻辑视图名解析成真正的视图(jsp),其实就是将ModelAndView对象中存放视图的名称进行4

查找,找到对应的页面形成视图对象。

(9) ViewReslover解析后返回具体View到前端控制器。

(10) 视图渲染,就是将ModelAndView对象中的数据放到request域中,用来让页面加载数据的。

(11) 通过第8步,通过名称找到了对应的页面,通过第10步,request域中有了所需要的数据,那么DispatcherServlet就能够响应用户了。

2. 列举SpringMVC的常用注解有哪些。

主要包括@Controller和@RequestMapping两个,除此之外,还包括@Resource、@Autowired、@PathVariable、@requestParam、@ResponseBody、@Component和@Repository等注解。

第6章 Spring MVC应用

1. 简述SpringMVC请求参数绑定的几种方式。

常用的参数绑定方式包括以下几种。

 绑定默认参数类型,如HttpServletRequest、HttpServletResponse、HttpSession、Model/ModelMap等

 绑定简单参数类型,@RequestParam注解类型来进行间接数据绑定。

 绑定POJO类型。

2. 简述JSON数据交互两个注解的作用。

Spring MVC中提供了JSON数据格式转换注解,分别是@RequestBody和@ResponseBody,两个注解的作用分别如下:

 @RequestBody注解:标注在方法的形参上。用于实现接收http请求的JSON数据,将JSON数据转换为Java对象并绑定到控制器Controller的请求处理方法的参数上。

 @ResponseBody注解:标注在方法上。用于将控制器Controller的请求处理方法返回的Java对象转换为指定格式的数据,如:JSON或XML等,最终数据通过Response响应给客户端进行显示。

5

第7章 Spring MVC拦截器

1. 简述SpringMVC拦截器的概念及定义方式。

拦截器是一个运行在服务端的程序,主要用于拦截用户的请求并进行相应的处理,即实现对控制器Controller请求的预处理或后处理。通过拦截器可以使得程序在某个动作(action)执行前或执行后,能够先执行或后执行特定的代码逻辑,也可以实现在某个动作(action)执行前阻止某些代码逻辑的执行。

通常拦截器类可以通过两种方式来定义。一种是通过实现HandlerInterceptor接口,或继承HandlerInterceptor接口的实现类(如HandlerInterceptorAdapter)来定义;另一种是通过实现WebRequestInterceptor接口,或继承WebRequestInterceptor接口的实现类来定义。

2. 简述SpringMVC多个拦截器的执行流程。

当多个拦截器同时正常执行时,拦截器方法的执行顺序为:配置文件中在前面的拦截器的preHandle()方法先执行,然后根据配置文件中拦截器的顺序依次执行拦截器的preHandle()方法,等所有拦截器的preHandle()方法执行完成后,逆序执行每个拦截器的postHandle()方法,当所有postHandle()方法执行完成后,再逆序执行afterCompletion()方法。

第8章 Spring MVC文件上传下载

1. 简述文件上传页面表单需要满足的3个条件。

(1) form 标签中设置属性method = "post"。

(2) form标签中设置属性enctype="multipart/form-data"。

(3) form标签体中,添加元素,如果需要支持多个文件的上传,则添加属性"multiple"。

第9章 Mybatis入门

1. 简述MyBatis核心类及其作用。

(1) Configuration。MyBatis所有的配置信息都保存在Configuration对象之中,