- 相关推荐
用友软件Java工程师笔试题(含答案)
Java软件工程师运用Java这种编程语言去完成软件产品的软件程序设计、开发、测试、维护升级等工作。下面CN人才网小编为大家带来的是用友软件Java工程师笔试题(含答案),希望对大家有所帮助~
1.web 中的 forward 和 redirect 的区别?
前者仅是容器中控制权的转向,在客户端浏览器地址栏中不会显示出转向后的地址;后者则是完全的跳转,浏览器将会得到跳转的地址,并重新发送请求链接。这样,从浏览器的地址栏中可以看到跳转后的链接地址。所以,前者更加高效,在前者可以满足需要时,尽量使用 forward()方法,并且,这样也有助于隐藏实际的链接。在有些情况下,比如,需要跳转到一个其它服务器上的资源,则必须使用 sendRedirect()方法。
2. xml 在解释的时候 DOM 和 SAX 协议的区别和含义?
DOM:处理大型文件时其性能下降的非常厉害。这个问题是由 DOM 的树结构所造成的,这种结构占用的内存较多,而且DOM 必须在解析文件之前把整个文档装入内存,适合对 XML 的随机访问
SAX:不现于 DOM,SAX 是事件驱动型的 XML 解析方式。它顺序读取 XML 文件,不需要一次全部装载整个文件。当遇到像文件开头,文档结束,或者标签开头与标签结束时,它会触发一个事件,用户通过在其回调事件中写入处理代码来处理 XML 文件,适合对 XML 的顺序访问
3 说明 JNDI、JMS、JTA、RMI 的意思?
JNDI(Java Naming and Directory Interface)是一个应用程序设计的 API,为开发人员提供了查找和访问各种命名和目录服务的通用、统一的接口,类似 JDBC 都是构建在抽象层上。
JMS(Java Messaging Service)是 Java 平台上有关面向消息中间件的技术规范,翻译为 Java 消息服务。JMS 支持点对点和发布/订阅两种消息模型。
JTA(Java Transaction API) 为 J2EE 平台提供了分布式事务服务。要用 JTA 进行事务界定,应用程序要调用 javax.transaction.UserTransaction 接口中的方法。
RMI 是 Java 的一组拥护开发分布式应用程序的 API。RMI 使用 Java 语言接口定义了远程对象,它集合了 Java 序列化和Java 远程方法协议(Java Remote Method Protocol)。它大大增强了 Java 开发分布式应用的能力。
4.单例模式
Public class Signle{
Private Signle(){
}
Pirvate static Signle signle = new Signle();
Public static Signle gets(){
Retrun signle;
}
}
5 数据库中 left join 的意思,和在什么场合中应用?
LEFT JOIN 操作用于在任何的 FROM 子句中,组合来源表的记录。使用 LEFT JOIN 运算来创建一个左边外部联接。左边外部联接将包含了从第一个(左边)开始的两个表中的全部记录,即使在第二个(右边)表中并没有相符值的记录。
6 ejb 中的 sessionbean 和 entitybean 的区别和含义?
SessionBean在J2EE应用程序中被用来完成一些服务器端的业务操作,例如访问数据库、调用其他EJB组件。EntityBean被用来代表应用系统中用到的数据。
对于客户机,SessionBean 是一种非持久性对象,它实现某些在服务器上运行的业务逻辑。
对于客户机,EntityBean 是一种持久性对象,它代表一个存储在持久性存储器中的实体的对象视图,或是一个由现有企业应用程序实现的实体。
7 抽象类和接口的区别
1:一个类可以实现任意多的接口,但是最多只能对一个抽象类进行子类化。
2:一个抽象类可以包括非抽象方法,而一个接口的所有方法在效果上都是抽象的。
3:一个抽象类可以申明并使用变量,而一个接口不行。
4:一个抽象类中的方法的访问修饰符可以使 public,internal,protected,protected internal,private,而接口成员的访问修饰符在默认情况下都是 public,而且,在申明接口成员时,不允许使用访问修饰符(甚至不能使用 public)。
5:一个抽象类可以定义构造函数,而一个接口不行。
8 对象序列化的含义
Java 序列化技术可以使你将一个对象的状态写入一个 Byte 流里,并且可以从其它地方 把该 Byte 流里的数据读出来。重新构造一个相同的对象。这种机制允许你将对象通过网络 进行传播,并可以随时把对象持久化到数据库、文件等系统里。Java 的序列化机制是 RMI、 EJB、JNNI 等技术的技术基础。
9 数据库中的锁包括什么?
基本的封锁类型有两种:排它锁(X 锁)和共享锁(S 锁).
所谓 X 锁,是事务 T 对数据 A 加上 X 锁时,只允许事务 T 读取和修改数据 A,…
所谓 S 锁,是事务 T 对数据 A 加上 S 锁时,其他事务只能再对数据 A 加 S 锁,而不能加 X 锁,直到 T 释放 A 上的 S 锁若事务 T 对数据对象 A 加了 S 锁,则 T 就可以对 A 进行读取,但不能进行更新(S 锁因此又称为读锁),在 T 释放 A 上的 S 锁以前,其他事务可以再对 A 加 S 锁,但不能加 X 锁,从而可以读取 A,但不能更新 A.
10 jsp 和 serverlet 的区别
(1).简单的来说 Jsp 就是含有 Java 代码的 html,而 servlet 是含有 html 的 Java 代码;
(2).Jsp 最终也是被解释为 servlet 并编译再执行,Jsp 不过是 servlet 的另一种编写方式;
(3).Jsp 擅长表示,servlet 擅长数据处理,在 MVC 三层结构中,Jsp 负责 V(视图),servlet 负责 C(控制),各有优势,各司其职;
11. oracle 中数据表的交集怎么表示
第一种方法:利用操作符 intersect
第二种方法: in 子句
12 jsp 页面中如何传递参数
(1)直接在 URL 请求后添加
(2)jsp:param
(3)设置 session 和 request
13 jsp 中的 doget()和 dopost()方法的作用?
这个两个方法都是 http 协议的方法,doget 用于传输数据量较小(密码会泄露),dopost 数据量较大,
14 什么是用例?如何确定用例?
在不展现一个系统或子系统内部结构的情况下,对系统或子系统的某个连贯的功能单元的定义和描述。 一个用例可以看作是系统的一个功能,例如增加用户,增加角色,查询一个具体的一个事物,在 Ejb 的设计中,一个 use case 跟 Session bean 的一个方法是对应的(使用的 session fasade 模式),你说的基础数据管理,我会把它处理成为一个抽象用例,因为我认为基础数据这个概念非常的抽象,什么是真正的基础数据?例如说一个系统中邮政编码算是这个系统的基础数据,那么”邮政编码修改”这个就应该算是用例了.
15 活动图和时序图的区别?
时序图主要强调时间的顺序 活动图主要强调空间上类的交互
16 什么是策略模式?什么情况下使用?
策略模式定义了一系列的算法,并将每一个算法封装起来,而且使它们还可以相互替换 Context(应用场景):
1、需要使用 ConcreteStrategy 提供的算法。
2、 内部维护一个 Strategy 的实例。
3、 负责动态设置运行时 Strategy 具体的实现算法。
4、负责跟 Strategy 之间的交互和数据传递。
17 面向接口编程的好处
使用接口编程,易于程序扩展,降低程序耦合性。 包括结构清晰,类之间通信简单易懂,扩展性好,提高复用性等等。
18 事物
事务就是一系列的操作,这些操作完成一项任务.只要这些操作里有一个操作没有成功,事务就操作失败,发生回滚事件.即撤消前面的操作,这样可以保证数据的一致性.而且可以把操作暂时放在缓存里,等所有操作都成功有提交数据库,这样保证费时的操作都是有效操作。