方正集团Java软件开发面试题.docx

上传人:b****3 文档编号:5701338 上传时间:2023-05-09 格式:DOCX 页数:20 大小:31.77KB
下载 相关 举报
方正集团Java软件开发面试题.docx_第1页
第1页 / 共20页
方正集团Java软件开发面试题.docx_第2页
第2页 / 共20页
方正集团Java软件开发面试题.docx_第3页
第3页 / 共20页
方正集团Java软件开发面试题.docx_第4页
第4页 / 共20页
方正集团Java软件开发面试题.docx_第5页
第5页 / 共20页
方正集团Java软件开发面试题.docx_第6页
第6页 / 共20页
方正集团Java软件开发面试题.docx_第7页
第7页 / 共20页
方正集团Java软件开发面试题.docx_第8页
第8页 / 共20页
方正集团Java软件开发面试题.docx_第9页
第9页 / 共20页
方正集团Java软件开发面试题.docx_第10页
第10页 / 共20页
方正集团Java软件开发面试题.docx_第11页
第11页 / 共20页
方正集团Java软件开发面试题.docx_第12页
第12页 / 共20页
方正集团Java软件开发面试题.docx_第13页
第13页 / 共20页
方正集团Java软件开发面试题.docx_第14页
第14页 / 共20页
方正集团Java软件开发面试题.docx_第15页
第15页 / 共20页
方正集团Java软件开发面试题.docx_第16页
第16页 / 共20页
方正集团Java软件开发面试题.docx_第17页
第17页 / 共20页
方正集团Java软件开发面试题.docx_第18页
第18页 / 共20页
方正集团Java软件开发面试题.docx_第19页
第19页 / 共20页
方正集团Java软件开发面试题.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

方正集团Java软件开发面试题.docx

《方正集团Java软件开发面试题.docx》由会员分享,可在线阅读,更多相关《方正集团Java软件开发面试题.docx(20页珍藏版)》请在冰点文库上搜索。

方正集团Java软件开发面试题.docx

方正集团Java软件开发面试题

方正面试题

总共十二题左右,其他没记清楚

1,怎么解决乱码问题,说出几个可行的解决办法?

2.jquery的$(#div)和$("div")的区别?

3.你所用到的三种设计模式,并简单说下

4.settimeout和setintvor的区别

5.配置一个action需要配置那些内容

5,hibernate中inverse=“true”setIgnoreCase="true"的意思是?

6.sql的外连接和内链接查询的区别

7.sql中union和unioall的区别?

8.简单说下ajax中的post请求的过程?

9.struts2配置文件中的通配符怎么配置?

10.Spring的声明式事物?

11.怎么设置oracle的表主键的自增长?

这是上个月的面试题,二零一二年七月份

一、选择题

1、下列表达式正确的()?

A.byteb=128;

B.booleanflag=null;

C.floatf=0.9239;

D.longa=2147483648L;

2、下列正确的说法有():

A.声明抽象方法,大括号可有可无

B.static方法只可以调用static方法

C.抽象方法有方法体

D.static方法可以访问类的所有属性

3、下列不属于java标识符的是():

A._HelloWorld

B.3HelloWorld

C.$HelloWorld

C.HelloWorld3

4、属于java语言中基本数据类型的是():

A.varB.char

C.IntegerD.String

5、下列代码运行结果是():

1.publicclassDoWhileTest

2.{

3.publicstaticvoidmain(String[]args){

4.intx=0;

5.inti=1;

6.do{

7.if((i%5)==0){

8.i++;

9.continue;

10.}

11.x+=++i;

12.}while(x<100);

13.System.out.println("x="+x);

14.}

15.}

A.x=100B.x=101

C.x=102D.x=103

E.x=104F.x=105

6、下列代码运行结果是():

1.publicclassParent{

2.privateintx;

3.protectedinty;

4.publicParent(intx,inty){

5.this.x=x;

6.this.y=y;

7.}

8.publicvoidincreaseX(intx){

9.this.x=getX()+x;

10.}

11.publicintgetX(){

12.returnx;

13.}

14.publicvoidincreaseY(inty){

15.this.y=getY()+y;

16.}

17.publicintgetY(){

18.returny;

19.}

20.}

21.publicclassChildextendsParent

22.{

23.privateintx;

24.privateinty;

25.publicChild(intx,inty){

26.super(x,y);

27.this.y=y+250;

28.this.x=x+150;

29.}

20.publicintgetX(){

31.returnx;

32.}

33.publicintgetY(){

34.returny;

35.}

36.publicstaticvoidmain(String[]args){

37.Childchild=newChild(100,100);

38.child.increaseX(100);

39.child.increaseY(100);

40.System.out.println("x="+child.getX()+"andy="+child.getY());

41.}

A.x=200andy=200;

B.x=250andy=350;

C.x=200andy=350;

D.编译错误;

7、下列选项可以在A的子类中使用的是():

1.classA{

2.protectedintmethod(inta,intb){

3.return0;

4.}

5.}

A.publicintmethod(inta,intb){return0;}

B.privateintmethod(inta,intb){return0;}

C.privateintmethod(inta,longb){return0;}

D.publicshortmethod(inta,intb){return0;}

8、关于以下代码的说明正确的是():

1.publicclassStaticTest

2.{

3.privatestaticintx=1;

4.publicvoidincreaseX(intincreasement){

5.x+=increasement;

6.}

7.publicStaticTest(intoriginal){

8.increaseX(original);

9.if(x>10)

10.x=1;

11.}

12.publicstaticvoidmain(String[]args)

13.{

14.StaticTestobj1=newStaticTest(5);

15.obj1.increaseX

(2);

16.StaticTestobj2=newStaticTest(3);

17.obj2.x+=4;

18.StaticTestobj3=newStaticTest

(1);

19.StaticTest.x+=3;

20.System.out.println("x="+obj1.x);

21.}

}

A.第5行不能通过编译,因为引用了私有静态变量

B.第17行不能通过编译,因为x是私有静态变量

C.能通过编译,结果为x=9

D.能通过编译,结果为x=8

9、下列选项中不属于JDBC基本功能的是:

A.与数据库建立连接

B.提交sql语句

C.出力查询结果

D.数据库维护管理

10、Page指令用于定义JSP文件中的全局属性,下列关于该指令用法的描述不正确的是:

A.<%@page%>作用于整个JSP页面

B.可以在一个页面中使用多个<%@page%>指令

C.为增强程序的可读性,建议将<%@page%>指令放在JSP文件的开头,但不是必须的

D.<%@page%>指令中的属性只能出现一次

11、关于jquery,是由哪些语言编写的():

A.javascript

B.html

C.java

D.css

12、在CSS样式中以下哪些选项属于选择符的分类()

A.HTML选择符

B.Class选择符

C.#选择符

D.ID选择符

二、填空题

1、Java的基本数据类型中,long类型占用

字节空间。

对long类型的赋值

线程安全的。

2、请写出Java语言的三个访问权限修饰词,并作简单说明:

1:

说明:

2:

说明:

3:

说明:

3、请写出以下代码段的输出结果:

1.publicstaticvoidmain(String[]args){

2.StringBuilderword="Hello";

3.getWho(word);

4.System.out.println(word.toString());

5.}

6.publicstaticvoidgetWho(StringBuilderword){

7.word=word.append("world");

8.}

4、请填空列举5个您所知道的struts2(struts-2.2.3之前版本)的ResultType:

、、、、

5、Java5之后,Spring除了可以使用原有基于

的配置方式还可以使用基于

的配置方式。

Spring创建AOP代理(Proxy)的方式有

如果代理的目标对象(TargetObject)没有实现任何接口(interface)时,使用

的方式创建代理。

6、ECMAScript的5中原始类型是:

Javascript的typeof运算符用来判断一个值是否在某种类型的范围内。

vars1;

vars2=null;

vartype1=(typeofs1);

vartype2=(typeofs2);

变量type1和type2分别指向

类型和

类型。

7、请写出3个Hibernate的数据查询方式以及它们的适用场景:

1:

2:

3:

三、简答题

1.Java中String,StringBuffer,和StringBuilder中之间的区别是什么?

2.Java中为什么需要是要同步?

列出你所知的几种同步方法。

3.在数据源已经建立好的情况下,Java数据库编程的一般步骤是什么?

四、编程题(编写的代码最好添加适当的说明,避免阅卷人员误判)

1、请使用Java语言定义一个具备自动从小到大排序功能的SortedArrayList模板类,实现以下接口:

1.publicinterfaceSortedList{

2.voidadd(Tvalue);

3.Tget(intindex);

4.intsize();

5.}

为了实现对象之间的比较,在SortedArrayList类的构造方法中,会传入一个Comparable的接口实例。

Comparable的接口定义如下:

1.publicinterfaceComparable{

2.publicintcompareTo(To1,To2);

3.}

当o1小于o2时,compareTo方法返回-1.如果o1等于o2,compareTo方法返回0。

如果o1大于o2,compareTo方法返回1。

在实现SortedArrayList类时,不需要考虑实现Comparable方法。

可以假定调用者会主动传参。

对于重复的元素,直接过滤掉,不需要更新。

2、有两个数组inta[],b[]。

这两个数组都已经被进行了数据初始化,数据都不重复,且都没有排序。

请设计一种算法,利用【问题1】实现的接口,将这两个数组合并,同时合并后的数据也要保证都是按照数值从小到大排列。

同时请分析算法中元素之间比较的复杂度。

进销存项目讲解

总体介绍

1)学习如何完成开发框架的搭建(中小项目有时需要自己搭建--》技术组长/主管/经理),大项目学会使用别人的框架开发

2)了解SCM系统的整体功能,至少熟悉其中一功能模块的业务(面试进需要介绍项目)

3)了解项目的研发过程

4)通过框架完成业务模块的开发,建议在就业前至少完成其中一业务功能模块的研发工作。

前期至少熟悉一功能点的增删改查操作

5)初步了解求职及简历:

以往学生出现的问题:

A。

简历不知如何写(应聘):

51job模板、项目部分:

为何有项目,项目有什么,采用什么技术,个人的职责,技术与业务,

B。

项目无法描述(应聘),项目过程一片空白

C。

面试官考虑的问题(面试)

6)项目过程需要完成角色转变

不再是观众,而是演员,努力成为一名真正意义的开发工程师

1.了解需求

系统演示与讲解

2.开发规范与约定

开发环境、编码规范、数据库规范

2.1软件、框架版本约定

编号

工具

版本

说明

1.

MyBatis

3.2

实现持久化操作

2.

Spring

3.2

用于分层解藕

3.

Junit

4.0

单元测试

4.

JQuery

2.0(支持IE10和以上的版本)

实现ajax各种特效和插件

5.

EasyUI

1.3.5

基于jQuery的用户界面插件

6.

SVN

1.6

开发版本控制软件

2.2开发环境

操作系统

Windows7

开发工具

myEclipse10

数据库

mysql-5.5

Web容器

Tomcat7/Tomcat6

JDK

JDK1.6+J2EE6.0+Tomcat7.0(开发环境与部署环境相同)

JDK1.5+J2EE5.0+Tomcat6.0(开发环境与部署环境相同)

Tomcat下载地址与JDK等兼容性说明:

http:

//tomcat.apache.org/whichversion.html

2.3包约定

●包命名规范:

cn+公司名称+项目名称+层命名具体命名如下:

包名

说明

cn.itcast.scm.dao.

dao接口

cn.itcast.scm.dao.impl

dao的实现类

cn.itcast.scm.service

service接口

cn.itcast.scm.service.impl

service的实现类

cn.itcast.scm.controller

mvc的controller

cn.itcast.scm.util

commpent

cn.itcast.scm.interceptor

interceptor

cn.itcast.scm.listener

listener

cn.itcast.scm.entity

entity

2.4页面的相关约定

●JSP、CSS、JS文件独立分开、命名相同(项目前台页面)

●前台不要使用MVC标签JSTL(标签必须依赖MVC框架,此标签还有侵入性)

●需要权限访问的页面建议放到Web-INF下:

所有的请求都需要经过action转发,虽然不方便,但是安全,可以通过拦截(*.action)器判断登录是否成功

2.5数据库的相关约定

建立表注意事项说明:

1.设置MySQL数据库的编码,把编码配为UTF-8,

2.数据库中建议不要设置自定义约束,和非空约束,这样可能会给开发和测试带来不便,并且会出性能问题;而且在真正投入使用时,数据的非空约束是依靠前台和后台的验证来实现,数据库只负责存储

3.软件开发中,为了提高表性能,尽量不要设置外键约束,表关系也更灵活

4.在编写SQL语句的时候最好写完整语法(列名,列名)values(值,值)有利于维护,否则后期增加字段前面的语句就用不了

2.6分层相关约定

●上面调用下面,即控制层调用Service,Service调用Dao

●层与层之间用接口。

除定义的接口外.不能使用其它层的特有类或接口。

●使用实体作为DTO(DataTransferObject,数据传输对象)

要做到任一层换掉后,其他层不受影响

3.开发环境与svn介绍

3.1SVN介绍

1:

CVS:

版本控制器鼻祖2:

SVN集中式版本控制器3:

git分布式版本控制器

2:

svn安装工具

3:

创建仓库:

svnadmincreate"e:

\testdir\student_svn"

3.1:

通过客户端选定要提交的文件夹import信息提交到仓库(仓库URLsvn:

//localhost:

3690)的时候会出现:

"目标积极拒绝,无法连接"说明服务是没有启动

3.2:

启动服务:

svnserve-d-re:

\testdir\student_svn上传项目的时候会提示:

认证失败,这是由于没有设置用户名与密码

3.3:

修改E:

\testdir\student_svn\conf目录下的svnserve.conf及pwsswd文件,svnserve.conf文件中开启密码(去掉前面的注释包括空格):

password-db=passwd,pwsswd文件添加用户名及密码格式:

用户名=密码

3.4:

通过dos命令创建的服务,命令行窗口是不能够关闭的(关闭窗口,服务也关闭),-d此参数是仅仅在Linux下面有效的

4:

import:

第一次提交,对于同一个项目import只能使用一次,以后都是在原来版本下commit

5:

checkout:

从仓库中下载指定的版本,默认下载是最新版(在下载的项目中有隐藏"svn"文件夹)此文件夹中记录服务器相关信息

6:

export:

从仓库中下载指定的版本,默认下载是最新版,但是下载完毕之后与SVN仓库没有任何联系,以后也不能进行版本的更新

7:

update:

可以更新仓库中新版本,默认是最新版

8:

revert:

可以指定某些文件还原到下载的初始版本

9:

commit:

本地的工作副本提交到仓库中

10:

在myEclipse中配置svn插件svn.link文件中配置:

path=soft\\svn,启动myelcipse即可使用SVN功能

插件安装与使用参考:

1)。

解压zip文件

2)。

把features,pougins文件夹copy到C:

\Users\chufeng\MyEclipse\MyEclipse10\soft\svn目录下(C:

\Users\chufeng\MyEclipse\MyEclipse10\为myeclipse安装目录,soft/svn可以自己创建)

3)。

进入C:

\Users\chufeng\MyEclipse\MyEclipse10\dropins目录,并新建svn.link文件,添加内容:

path=soft\\svn

4)。

启动myeclipse

5).选择myeclipse的“file"-->import-->svn-->从svn中检出-->检出时,需要填写URL地址,URL为:

svn:

//IP地址[:

端口号],一般使用默认端口时可以不用写端口

3.2ssi框架整合

略,详见“ssi整合说明”。

3.3scm项目的开发环境补充

简化实体别名及mapper.xml文件配置

修改applicationContext.xml

--配置session工厂-->

myBatis-config.xml"/>

--配置扫描式加载SQL映射文件,记得去掉mybatis-config配置-->

cn/itcast/scm/dao/*.xml"/>

mybatis-config.xml添加支持基于包的别名扫描

--通过别名简化对类的使用-->

---->

--

通过package,可以直接指定package的名字,mybatis会自动扫描你指定包下面的javabean,

并且默认设置一个别名,默认的名字为非限定类名来作为它的别名。

-->

测试整合的scm项目库及表

dropdatabaseifexistsscm;

createdatabasescmdefaultcharactersetutf8;

usescm;

droptableifexistssupplier;

 

/*============================*/

/*Table:

管理员表结构*/

/*============================*/

createtableaccount

/*管理员编号,自动增长*/

acc_idintnotnullauto_increment,

/*管理员登录名*/

acc_loginvarchar(20),

/*管理员姓名*/

acc_namevarchar(20),

/*管理员密码*/

acc_passvarchar(20),

/*设置编号为主键*/

primarykey(acc_id)

);

/*==============================================================*/

/*Table:

供应商表*/

/*==============================================================*/

createtablesupplier

sup_idintnotnullauto_increment,

sup_namevarchar(20),

sup_linkmanvarchar(20),

sup_phonevarchar(11),

sup_addressvarchar(100),

sup_remarkvarchar(200),

primarykey(sup_id)

);

/*添加供应商数据,*/

insertintoaccount(acc_login,acc_pass)values('admin','admin');

insertintoaccount(acc_login,acc_pass)values('admin2','admin2');

/*添加供应商数据,*/

insertintosupplier(sup_name,sup_linkman,sup_phone,sup_address,sup_remark)values('苹果供应商','小张','12388888887','广州花都','普通供应商');

insertintosupplier(su

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2