面试题: 1天的java面试题 已看1

1,自我介绍下,我直接说的项目经历,(哪年在哪个公司呆过)

2,问是否有带过团队的经历,我说去年带过一次。

3,Struts是单例模式还是多例模式?我先说单例模式,后说多例模式。 Struts1是单例的 struts2是多例的

4,JSP与STRUTS的区别是什么,我说了一大堆,面试官让我不要宏观的说,要细化的说,我给简单的说了struts下过滤器,拦截器,jsp有el表达式等。

5,问我ModelDriven是个类还是个接口?我先说是类,后来改说了是个接口。

6,ModelDriven是干什么的?我说是为了返回实体类的。又问返回的比如User对象的属性与直接定义了User属性有区别吗?我所没有,其实是有区别的.

有区别  直接返回对象相当于对象驱动  在页面需要user.name调用  而模型驱动 只需要 调用name属性就可以

 

7,prepare是什么?我没回答上来

prepare是 struts过滤器中 init() 的中的prepare 准备方法  dofilter 默认是execute() 执行方法

 

8,接着问在项目中遇到什么复杂的业务,最后是怎么解决的? 让举个例子说明,我说的是健康档案项目中大表分为多个小表,把字段放入大Json,传到后台解析出小json来,分别修改表数据。
9,接着考数据库知识:如题:
age name
28  zhangsan
28 lishi
30 wangwu
40   zhaoliu

问题:计算下28岁的有几个人,30岁的几个人,40岁的几个人?

 

 我开始准备用 case then 做,

select  age,sum(case  age =20 then  1 else  0 ) as t1,

                   sum(case age = 30 then 1 else  0 ) as  t2,

                   sum(case age = 40 then  1 esle 0 ) as  t3

from user 

group by age; -- 这的sum写到一半忘了个写括号了

面试官说年龄如果重 1 - 100 ,那我的判断100次,我也说了这样的语句数据了大了就查询很慢了。

我又改语句:

SELECT age,COUNT(*) FROM countbyage GROUP BY age (正确)

当时心情不好,注意力没集中,给忘记写age了,反正是很混乱。

10、最后问我薪资待遇是多少,我说出口5k,后来改为4k,面试官说这么不自信?

11 最后面试管给了我他的163邮箱,让我发段代码给他。这样这场面试就结束了。

posted @ 2018-05-10 00:41  阿善9  阅读(375)  评论(0编辑  收藏  举报