java测试题总结

1.Struts2处理来自多个页面的同一个Action请求,那么它们是不是同一个action。

  struts2中每个请求都是独立的。每一次请求都会去new一个新的action,所有写在action中的变量是不会出现并发的错误。

  2.action如何接受参数。

  Struts2中Action接收参数的方法主要有以下三种:
   1).使用Action的属性接收参数:
      a.定义:在Action类中定义属性,创建get和set方法;
      b.接收:通过属性接收参数,如:userName;
      c.发送:使用属性名传递参数,如:user1!add?userName=Magci;
   2).使用DomainModel接收参数:
      a.定义:定义Model类,在Action中定义Model类的对象(不需要new),创建该对象的get和set方法;
      b.接收:通过对象的属性接收参数,如:user.getUserName();
      c.发送:使用对象的属性传递参数,如:user2!add?user.userName=MGC;
   3).使用ModelDriven接收参数:
      a.定义:Action实现ModelDriven泛型接口,定义Model类的对象(必须new),通过getModel方法返回该对象;
      b.接收:通过对象的属性接收参数,如:user.getUserName();
      c.发送:直接使用属性名传递参数,如:user2!add?userName=MGC

  3.说一下application,session,response的作用范围。

    在一个页面范围内:page

   在一次服务器请求范围内:request

   在一次会话范围内:session

   在一个应用服务器范围内:application

  4.说一下pulibc,protected,private的作用

  修饰符	类内部	同一个包	子类	任何地方
  private Yes
  default Yes Yes
  Protected Yes Yes Yes
  public Yes Yes Yes Yes

  对于class的权限修饰符只可以用public和default
   a.Public类可以在任意地方被访问
   b.default类只可以被同一个包内部的类访问
c.protected类只可以被同一个包内部的类和子类访问
d.private类只可以被内部的类访问
  5.说一下方法的重载与覆盖   
   重载:同一各类中,方法名相同,参数的列表或返回值不同,与返回类型无关!
   覆盖:子类继承父类而且这是必须的。在子类里面重新定义这个方法。

   重载与覆盖的区别
    1、方法的覆盖是子类和父类之间的关系,是垂直关系;方法的重载是同一个类中方法之间的关系,是水平关系。
    2、覆盖只能由一个方法,或只能由一对方法产生关系;方法的重载是多个方法之间的关系。
    3、覆盖要求参数列表相同;重载要求参数列表不同。
    4、覆盖关系中,调用那个方法体,是根据对象的类型(对象对应存储空间类型)来决定;重载关系,是根据调用时的实参表与形参表来选择方法体的。
  6.MVC中的M表示什么意思
    mvc全名是Model View Controller,是模型(model)-视图(view)-控制器(controller)的缩写。
      Model(模型)表示应用程序核心(比如数据库记录列表)。
      View(视图)显示数据(数据库记录)。
      Controller(控制器)处理输入(写入数据库记录)。
  7.如何修改数据库中的字段内容,举例说明
    修改:update 数据表 set 字段1=值1,字段2=值2 where id=接收到的ID参数
    扩展一下:
    增加:insert into 数据表(字段1,字段2,字段3) values(值1,值2,值3)

    删除:delete from 数据表 where id=接收到的ID参数
    查询:select 字段 from 数据表 where id = 接收到的ID参数
 
原文地址:https://www.cnblogs.com/zhoudi/p/5820623.html