JavaEE课堂笔记f
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1.Struts2在jsp页面中使用
2.MVC设计模式包括Model(模型)、View(视图)和Controller(控制器)三个层。Model 层一般是指Java Bean,View层一般是用jsp页面实现,Controller是控制跳转的,一般用Servlet 或相似功能的组件实现。而Struts2框架的核心控制器是StrutsPrepareAndExecuteFilter过滤器。
3.Hibernate配置文件中包括了数据库连接信息、数据库方言、其他属性等信息,不包括数据库表和实体类的ORM信息。在众多属性中,show_sql属性可以设置是否在控制台显示最终生成的SQL语句。
4.Struts2全局国际化,在创建资源文件后需要在struts.xml配置文件中添加对这些资源文件基本名的引用。
5.Spring的面向方面编程可以让我们将程序中涉及的分散的公用问题集中解决。
6.Http协议是一种无状态的协议,它不能记录用户的状态。我们可以通过get和post方法发送数据,其中get方法对请求参数有长度的限制,而post方法没有。
7.j sp中的EL可以访问JavaBean中存储的数据,EL表达式包括requestScope、sessionScope、applicationScope、param、pageContext等隐式对象。在Struts2中,EL表达式可以直接访问Action Bean中属性的值。
8.HQL和SQL语法相似,但HQL是面向对象的,而SQL是面向关系型数据库的。HQL的关键字不区别大小写,而语句中的实体类名、对象名、属性名等都是区别大小写的,这一点和Java语言类似。
9.Servlet在加载后的生命周期分为实例化、初始化、服务和销毁四个过程。
10.JSP的
11.Servlet中的PrintWriter对象可以输出信息,该类型的对象可以通过response.getWriter()方法取得。
12.DWR一个能帮助我们简化Ajax开发的开源框架,在使用时,需要在dwr.xml配置文件中为JavaScript脚本暴露相应的Java类。
13.在struts.xml配置文件中
14.Hibernate将JDBC作了轻量级封装,使得Java程序员可以随心所欲的使用面向对象的编程思想来操纵数据库,但其本质上还是使用JDBC去和数据库进行交互。
15.SSH是JavaEE开发的经典搭配,Spring框架可以对其他框架进行整合,持久化层更可以有多种选择,除了Hibernate外,像MyBatis这样的开源框架也很受欢迎。
16在软件设计上Struts2没有跟Servlet API或struts有着紧密的耦合,因此在Struts2中可以不必使用Servlet API所提供的类和接口,但如果要使用,也可以通过多种方式实现(ServletActionContext类或实现相应接口)。同时Struts2的Action类也不用必须继承或实现struts框架提供的任何类或接口。
17Servlet API中,HttpServletResponse接口的sendRedirect()方法可以将浏览器重定向到另一个URL。而HttpServletRequest接口的getSession()方法可以取得本次会话的HttpSession类型的对象,HttpServletRequest接口的getParameter()方法可以获取客户端请求参数的数据。18依赖注入(DI)是一种开发模式,可以解除或减轻各组件之间相互依赖,相互制约的关系。
1.简述Struts2的工作机制?
用户请求
Struts2内置的一些拦截器或用户自 定义拦截器
用户编写的action 类,类似struts1中 的Action
类似struts1中的forward
内置的一些拦截器或用
编写的action 类,类似中的Action Jsp/html 中的forward StrutsPrepareAndExecuteFilter 是Struts 2框架的核心控制器,它负责拦截由
响应
2.如何使用Spring 简化了Hibernate 编码?
封装了对应的增删改查,继承hibernateDaoSupport类。
3.简述hibernate中get()与load()区别(百度)
get方法首先查询session缓存,没有的话查询二级缓存,最后查询数据库;反而load方法创建时首先查询session缓存,没有就创建代理,实际使用数据时才查询二级缓存和数据库。hibernate对于load方法认为该数据在数据库中一定存在,可以放心的使用代理来延迟加载,如果在使用过程中发现了问题,就抛异常;而对于get方法,hibernate一定要获取到真实的数据,否则返回null。
4.简述使用Hibernate框架进行持久化操作的“三个准备”和“七个步骤”。
1.创建Congfiguration对象。
2.创建SessionFactory
3.打开Session
4.开始一个事务
5.持久化操作save/updata/delete/find
6.提交事务
7.关闭session
三个准备如下: 1.导入Hibernate库(jar包) 2.添加配置文件-- hibernate.cfg.xml
3.添加实体类和映射文件
5.简述你对Spring控制反转(IOC)的理解
Spring通过一种称作控制反转(IoC)的技术促进了松耦合。当应用了IoC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。你可以认为IoC与JNDI相反——不是对象从容器中查找依赖,而是容器在对象初始化时不等对象请求就主动将依赖传递给它。而依赖注入是IoC的表现方式,所谓依赖注入就是指在运行期,由外部容器动态地将依赖对象注入到组件中。
6.简述你对MVC三层架构的理解。
MVC 是一种使用MVC(Model View Controller 模型-视图-控制器)设计创建Web 应用程序的模式:
Model(模型)表示应用程序核心(比如数据库记录列表)。
View(视图)显示数据(数据库记录)。
Controller(控制器)处理输入(写入数据库记录)。
MVC 模式同时提供了对HTML、CSS 和JavaScript 的完全控制。
Model(模型)是应用程序中用于处理应用程序数据逻辑的部分。
通常模型对象负责在数据库中存取数据。
View(视图)是应用程序中处理数据显示的部分。
通常视图是依据模型数据创建的。
Controller(控制器)是应用程序中处理用户交互的部分。
通常控制器负责从视图读取数据,控制用户输入,并向模型发送数据。
7.写出以下Action的struts.xml配置文件描述(注:请求为Test/Hello.action,返回页面为WebRoot根目录下的success.jsp)
package com.yourcompany.action;
public class HelloWorldAction
{
private String message;
public String getMessage()
{
return message;
}