java笔试题总结 - 图文(8)

2019-04-09 15:50

解决方案:设置事务隔离级别。 Serializable:串行化。隔离级别最高 Repeatable Read:可重复读 Read Committed:已提交数据读

Read Uncommitted:未提交数据读。隔离级别最差 设置锁:乐观锁和悲观锁。

乐观锁:使用版本号或时间戳来检测更新丢失,在的映射中设置

optimistic-lock=”all”可以在没有版本或者时间戳属性映射的情况下实现 版本检查,此时Hibernate将比较一行记录的每个字段的状态 行级悲观锁:Hibernate总是使用数据库的锁定机制,从不在内存中锁定对象!只要为JDBC连接指定一下隔 离级别,然后让数据库去搞定一切就够了。类LockMode 定义了Hibernate所需的不同的锁定级别:

LockMode.UPGRADE,LockMode.UPGRADE_NOWAIT,LockMode.READ; 三十六: 在

http://blog.csdn.net/llhwin2010/article/details/7481221

SSH 的组合框架模式中,三者各自的作用

Struts 是一个很好的MVC框架,主要技术是Servlet和Jsp。Struts的MVC设计模式可以使我们的逻辑变得很清晰,让我们写的程序层次分明。

Spring 提供了管理业务对象的一致方法,并鼓励注入对接口编程而不是对类编程的良好习惯,使我们的产品在最大程度上解耦。

Hibernate 是用来持久化数据的,提供了完全面向对象的数据库操作。Hibernate对JDBC进行了非常轻量级的封装,它使得与关系型数据库打交道变得非常轻松。

自己总结:jsp发出请求提交给struts的action,action的class调用spring中的相对应的bean,并且通过action的method属性调用action中的方法,action中的方法调用service层中的接口,service接口的实现类调用dao层的接口,dao层接口的实现类进行数据库相关的操作。在此期间spring通过依赖注入的方式对各层之间类的调用由bean进行配置,

三十七:ssh中的配置文件及运行流程?

1.ssh需要使用到哪些配置文件? 使用spring配置jdbc

struts配置文件、spring配置文件、hibernate映射文件

2.每个配置文件分别需要配置一些什么东西?

①struts.xml中主要是对action的配置(控制界面与后台交互)、拦截器配置, ②spring配置中,包含依赖注入、数据库连接池配置、事务声明、日志配置等。 ③映射文件中主要写的是实体类与数据库的关系(如果你熟悉一对多、多对多这种配置和机制的话,也可以简单说一下)

(捡你熟悉的说,因为面试官会从你这次的回答中,延伸出下面的问题)

3.ssh的配置运行的流程是怎样的?可以用登录来举例说明

登陆请求 → struts2加载类(FilterDispatcher) → 读取配置文件中对应action

→ 派发请求 →调用action→启用拦截器 → 执行action调用的方法(如默认execute) → 通过业务类对象调用业务方法(spring中配置的bean在项目启动时已经加载) → 业务方法调用dao方法(获取数据),进行业务处理(一般声明事务会监控在业务层) → 返回处理结果到action → action返回响应 → FilterDispatcher根据配置查找响应的是什么信息如:SUCCESS、ERROR,将跳转到哪个jsp页面 → 页面展示结果

MVC是什么,三大框架在MVC里面各自作用。分别说一下hibernate,struts,spring工作原理及流程。spring中得IOC,AOP解释下是如何运用的。上机做一个简单的增删改查。

---------------------------------------------------------------------------------------------------

面试总结:

一:项目介绍(拉手网)

这是一个仿照拉手网做的一个网上团购网站,主要有用户注册,用户登录,商品展示,用户管理,商家管理,订单管理,商品管理等功能。该项目一共有七个人,项目采用ssh框架整合而成,使用mysql数据库,使用Hibernate用来处理前台页面发出的请求,并把处理结果显示出来;使用hibernate用来实现关系型数据库和对象之间的转换,使用Hibernate 的Session封装类对数据库进行操作,极大的简化了数据

库操作过程;使用spring提供IOC容器使代码松耦合以及AOP的面向切面编程,用来管理struts和hibernate。我在项目中主要负责商品管理中的商品审核和商品审核管理的增删该查,就是商家上传商品后通过审核才能发布。

二、做项目中遇到的难题,怎样解决的?

(1)jsp和action之间的传值:

Struts的action传参给jsp:可以用传统的在request/session中加入参数的方法 也可以:

<%=request.getAttribute(\

如果比较逻辑比较复杂的时候,如果不熟悉struts,建议后最后这种传统方法 Struts2获取response和request

HttpServletRequest request = ServletActionContext.getRequest();

HttpServletResponse response = ServletActionContext.getResponse();

HttpSession session = request.getSession();

如果你只是想访问session的属性(Attribute),你也可以通过

ActionContext.getContext().getSession()获取或添加session范围(Scoped)的对象

不是action传值到jsp页面,而是jsp页面获取action中的属性值,或者范围(如request,session,application等)里的值。 所以,有两种方法

1,获取的是action属性的值,用struts2标签和ognl即可获取 如,

如${name}为requestScope范围绑定的名为name的属性,省略requestScope因为这是默认的范围

${sessionScope.name}为sessionScope范围绑定的名为name的属性

使用struts2实现多个页面的传值,其实跟jsp多个页面传值原理也是一样,只是不是jsp处理,而是通过action来处理进行传递,当然也可以有其他的办法,但我下面只是介绍session的用:

首先在action中取得session,代码如下: HttpSession session = request.getSession();

然后使用setAttribute的方法进行参数的设置:如 session.setAttribute(\name);

然后就可以在jsp页面中使用session.getAttribute(\取值就可以了,这样就可以实现多个页面之间的传值问题。也就是说,在第一个页面表单的参数,要在第三个页面要获取第一页表单的值,这样的办法就可以实现,如果不这样做,那就要在第二个页面设置隐藏域,这样做就比较麻烦。但是使用session也有不好的地方,会占用浏览器的缓存,最好不用的情况,记得把session释放。

二、jsp向action传值 1、jsp中如下编写

/a/b/c.jsp

那么执行aaa.do?b=3时,c.jsp已经获得了b=3的参数。


java笔试题总结 - 图文(8).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:隧道导坑分部衬砌模板支架施工方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: