java题目

导读:
  1. 简单叙述一下Spring中BeanFactory与ApplicationContext的差别
  简而言之,BeanFactory提供了配置框架和基本的功能, 而 ApplicationContext为它增加了更强的功能,这些功能中的一些或许更加接近J2EE并且围绕企业级应用。一般来说,ApplicationContext是 BeanFactory的完全超集, 任何BeanFactory功能和行为的描述也同样被认为适用于ApplicationContext
  相对于BeanFactory而言,ApplicationContext 提供了以下扩展功能.
  (a) 国际化支持
  (b) 资源访问
  (c) 事件传播
  (d) 多实例加载
  2. 写一段程序,读取classpath下的一个xml文件,并解析
  (1)Resource resource=new ClassPathResource("appcontext.xml");
  BeanFactory factory=new XmlBeanFactory(resource);
  (2)ClassPathXmlApplicationContext appcontext=new ClassPathXmlApplicationContext("appcontext.xml");
  BeanFactory factory=(BeanFactory)appcontext;
  3. 谈一下OpenSessionInView模式,并分别谈一下在使用这个模式和不使用这个模式的情况下,Transaction、数据库连接、Hibernate Session这三者之间的开启和关闭的顺序
  这个名字听起来好像很高深,笔者第一次接触到这个名词感觉,哇塞,spring哪整地那么多的技术框架啊,但是真正踏踏实实的看过几篇文章以后,感觉网上说的都是很抽象,而且好像故意说得那么高深,让读者不知所措,好像这样才能认为spring是个太牛的东西,其实,这个东西很简单。下面我简单说明下。
  其实在项目里面真正的精华就是web.xml里面的这几行代码:
  
   hibernateFilter
   org.springframework.orm.hibernate3.support.OpenSessionInViewFilter
  

  
   hibernateFilter
   *.do
  
  好啦,一切ok了。接下来的就有spring容器来帮我们做了。有的人也许会问了,你说得也太简单了吧?简单的让我不能相信了。其实不然,越复杂的东西有时候往往就是一句话的事。听我慢慢道来。
  这个属性就是为了支持hibernate的延迟加载而设计的,spring倡导的是面向接口编程,而且在源文件里面大量的使用了Factory-mode 和Singleton-mode。但是这就和hibernate的延迟加载产了冲突。如果不使用hibernate的 OpenSessionInViewFilter过滤器,那么当使用完getHibernateTemplet().save()或者delete()对象以后,spring会自动的关闭session。即使你使用了延迟加载的机能,spring也不会管你那套的。该关的session一刻也不等。当你想延迟加载某些类的某些设置为延迟加载的属性以后,spring就会报出session is close的错误,这该死的spring。为了优化系统的启动速度我才延迟的,为什么你这么不通情达理?不然,使用了 OpenSessionInViewFilter以后,当你save完一个对象以后,因为有这个过滤器,所以spring会把这个连接放到线程池里面,而不是马上就关闭。当需要延迟加载的时候,spring会从线程池里面取出那个session完成加载的动作。当确定这个session确实不再需要的时候,spring才会close掉这个session。原理就是这么简单。我们只需要做的就是在web.xml里面配置那几行代码,其他的就按照我们预期的做,spring会自动帮我们完成我们想要的。简单吧?
  4. 说说在hibernate中使用Integer做映射和使用int做映射之间有什么差别
  Integer code和int code;的区别:
  Integer是对象. code = null; 对象可以为空.
  int 是普通类型, 不可能 = null.
  根据你的数据库code是可以空的, 故应该映射成Integer.
  你没理由hbm.xml里写Integer, 类里却写int
  5. 一个网站应用,请设计一个持久化类User,他可能有多张会员卡号、需要多个email地址(数量不定)作为其身份验证的方式
  1. 请给自己Java水平一个准确的自我定位:
  2. 判断题:声明int a = 10; 判断以下3个运算是否能够分别通过Java编译器:
  a = a/2; a = a/3; a = a*2.89;
  
  如果以上3个运算,能够分别通过编译、运行,请写出a的结果值__5___ ___1_ ____x_
  e.g: 比如您认为第1个通不过,第2个,第3个能够通过且值为1,2,这样填写答案 X 1 2
  3. 判断题:指出程序正确,或错误(若有错误,需要写出简单理由):
  Object obj = new Object();
  User user = (User) obj;
  System.out.println(user.getName());
  造型错误
  4. 判断题:指出程序正确,或错误以及简单理由:
  java.util.List list = new java.util.List();
  List是抽象接口,不能实例化
  5. 选择题:请选择正确的判断:___a___
  关键字extends
  a) 可用于一个类继承一个类
  b) 可用于一个接口继承一个接口
  c) 可用于一个类继承一个接口
  d) 可用于一个接口继承一个类
  6. 选择题:执行如下代码,程序输出是_c__________:
  String s = “i_am_an_expert!”;
  s.subString(2);
  System.out.println(s);
  单选项:
  a) i_am_an_expert!
  b) i_
  c) am_an_expert!
  d) i
  e) _am_an_expert!
  7. 程序题:写出以下程序的输出结果:
  public class Term {
  private long id;
  public Term(long id) {this.setId(id);}
  public long getId() {return id;}
  public void setId(long id) {this.id = id;}
  public boolean equals(Object obj){ return true;}
  
  public static void main(String[] args) {
  Term term1 = new Term(1);
  Term term1 = new Term(2);
  System.out.println(term1.equals(term2));
  System.out.println(term1 == term2);
  }
  }
  true
  false
  8. 程序题:请指出以下代码哪些点可能抛出NullPointerException,在其代码行号前打钩:
  1. boardBo.updateLastPost(
  2. thread.getId(),
  3. lastPost.getId(),
  4. lastPost.getPoster().getId(),
  5. lastPost.getPoster().getLoginName(),
  6. lastPost.getPostTime());
  9. 程序题:我想启动一个线程执行特定的任务,任务的具体执行内容定义在TheRunnable类中(实现了java.lang.Runnable接口):
  TheRunnable theRunnable = new TheRunnable();
  以下哪个语句可用于启动theRunnable任务线程:_____
  a) theRunnable.run();
  b) theRunnable.start();
  c) Thread thread = new Thread(theRunnable); thread.run();
  d) Thread thread = new Thread(theRunnable); thread.start();
  10. 程序题:给定一个java.util.Date对象,如何转化为”2007-3-22 20:23:22”格式的字符串。
  11. [WEB题目] 在Web应用中,各举POST请求和GET请求应用场景的一个例子。
  12. [WEB题目] Web应用MVC模型中,a) C如何向V传送M; 请试写一行代码。
  13. [Spring题目] 写出Spring框架中ServletRequestUtils类中的一个方法。
  14. [Spring题目]请举出,你用过Spring框架中“Callback模式”的一个例子。
  15. [系统设计]请简单评价该设计的优劣:身份证号码作为一个person表的主键。
  16. [Hibernate题目] Hibernate如何获取指定主键id的某对象,请举例,并进行可能的优劣比较。
  17. [Hibernate题目]判断题:使用save/persist一个对象时,便立即向数据库发送执行insert sql语句?
  Trackback: http://tb.blog.youkuaiyun.com/TrackBack.aspx?PostId=1856131

本文转自
http://blog.youkuaiyun.com/oscar999/archive/2007/10/30/1856131.aspx
6、Java源程序在转换为机器语言执行过程中既有编译也有解释。 ( ) 7、// 是java的多行注释符。 ( ) 面向对象 3.Java 仅支持间的单重继承。 ( ) 17.方法可以没有返回值,或有一个返回值,也可以有多个返回值。( ) 5.一个的定义包括定义定义体两个部分。( ) 7.的私有属性私有方法可以被其子访问。( ) 13.子不能继承父的构造函数。( ) 14.重载的方法可以通过它们的返回值型的不同来区分。( ) 16.在 Applet 的坐标系中,(0,0) 代表输出窗口左上角的象素点。( ) 18.构造函数的方法名可由编程人员任意命名。( ) 19.构造函数能继承,也能被重载。( ) 20.的构造函数名必须名相同。( ) 1、Java中所有的都是java.lang.Object的直接或间接子。 ( ) 5、只有抽象或接口中才能包含抽象方法。 ( ) 9、两个同在一个包中,那么在一个可以访问另一个的private成员变量。 ( ) 10、方法形式参数的作用域是该方法的方法体。 ( ) 8、两个同在一个包中,那么在一个可以访问另一个的private成员变量。( ) 10、方法形式参数的作用域是该方法的方法体。 ( ) 1、String abc[ ];是合法的Java语句。 ( ) 2、在Java里,允许多重继承。 ( ) 3、在Java语言里,do-while语句是先执行循环体,然后再判断的循环条件。 ( ) 4、只有抽象或接口中才能包含抽象方法。       ( ) 其他 8、StringBuffer的对象包含的字符串不可以被修改。 ( ) 8.字符串 ”\’a\’” 的长度是5。( ) 9.Java 支持多线程机制。( ) 填空题 17.Java中的的字符使用( )编码unicode 18. 在Java语言中,将源代码翻译成____________时产生的错误称为编译错误,而将程序在运行中产生的错误称为运行错误。字节码 13. Java语言中的浮点型数据根据数据存储长度数值精度的不同,进一步分为哪两种具体型,各占二进制的多少位? 16.字符串 ”\’a\’” 的长度是( )3 13. float 32位、double 64位 24.表达式2*5/2.5、1.0/2*5、1/2*3、5/3的计算结果分别是_________。 25.当整型变量n的值不能被13除尽时,其值为 false 的Java语言表达式是_______ 。 26.执行以下程序段后:x = ________, y = ________ 。 int x = 5, y=5; y = ++x * - -y; 29. 关系运算的运算结果应是( )型 30. 逻辑运算的运算对象应是( )型,运算结果应是( )型 33.下面的语句是声明一个逻辑变量并赋值,请将它补充完整: ______ b1=5!=6; 逻辑变量b1的取值是______。 34.下面的语句是声明某型变量s,并通过三目条件运算符的结果给变量s赋值,请将该语句补充完整,s的初值是什么? ______ s=(9999%2= =1) ? ”奇数” : ”偶数”; 24. 4.0; 2.5; 0; 1 25. (n%13= =0 26. 6 ;24 29. boolean型30. boolean型;boolean型 31. 略 33. boolean true 34. String ”奇数” 18.阅读下面的程序段,回答问题。 if ( x < 5 ) System.out.print(" one "); else { if ( y < 5 ) System.out.print(" two "); else System.out.println(" three "); } 问题: 1)若执行前 x=6, y=8,该程序段输出是什么? 2)若执行前 x=1, y=8,该程序段输出是什么? 18. 1)three 2)one 25.下面是一个java应用程序(Application),它的功能是在屏幕上输出26个小写英文字母,其中每个字母相隔一个制表符,请完成程序填空。 public _____ Class1 { public static void main( String args[] ) { char c='a'; for (int i=1;i<=26;i++) { System.out.print(______); } } } 26.下面是一个java应用程序(Application),它的功能是计算 s=1+2+3+...+10 ,请完成程序填空。 public _____ Class1 { public static void main( String args[] ) { int s=0; for (int i=1;i<=10;i++) { s+=______; } System.out.println("s="+s); } } 27.下面是一个java Application 的主的定义,其功能是输出乘法口诀表第一列,请完成程序填空。 import java.io.*; public class MyClass { public static void main(String[] args) { int j=1; for(int i=1; _______; i++) { System.out.println(i+"*"+j+"="+_______); } } } 25. class (c++)+"\t" 26. class i 27. i<=9 j*i 1.结构化程序设计的三种基本流程控制结构是:_______、_______、________。 10.下面程序的功能是求2 到100 之间的素数,请将程序补充完整。 public class Class1 { public static void main( String args[] ) { Label1: for(int i=2;i<100;i++) { for(int j=2;j<i;j++) { if( i%j==_____) _________; } System.out.print(i+"\t"); } } }
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值