在MVC模式中,M,V,C分别表示什么,在实际的开发过程中,这三者一般分别采用哪些技术实现?Struts是什么?Struts和MVC有关系吗? Struts1.1相对于Struts1.0,你觉得最大的改善是什么?M :module
V:view
C:controlM:模块,一般用商业逻辑来实现。
C:控制,一般为servlet
V: 视图,一般用JSP asp....struts的实现机理就是MVC

解决方案 »

  1.   

    第一题:
    J2EE(Java 2 Enterprise Edition)Java2 企业版,它提供了分布式企业应用程序的解决方案。EJB、JDBC等都是J2EE规范下的一部分。EJB是J2EE技术的核心技术,RMI是其基础。组成包括(Session Bean、Entity Bean、Message Driven Bean)JDBC是规定了数据库连接、访问的规范。
      

  2.   

    BillyW(阿弥陀佛) ,人家让你选两个啊!!!!我选 B  D
      

  3.   

    第二题:
    少if语句的作用域,可能会产生Null Pointer Exception!第三题:
    太变态了,我认为没有什么考的必要!!!第四题:
    方法一:使用序列(Sequence)
    方法二:Java数据库访问编码时生成ID编码。第五题:
    也没有必要成为考题!!第六题:
    太大了。google一下吧
      

  4.   

    第2题:
    A答案的意思是"is a kind of"B答案的意思是"implementation"
      

  5.   

    二 :
        1) String ss1 = session.getAttrbute(“login_id”).toString();
        2) if  (ss1.equals(“”))
        3) out.println(“对不起,没有授权”);
        4) int login_id = Integer.parseInt(ss1);
        5) String admin_name = ss1.substring(0,28);    我觉的有两个地方有异常啊,(4)(5) 都会有,(4)是当ssl不是数字字符串,(5)是ssl的长度也许不超过28    我就知道两个!    (2) ssl 我觉得应该是 null  而不是
      

  6.   

    2) if  (ss1.equals(“”))出错的可能
      

  7.   

    1) String ss1 = session.getAttrbute(“login_id”).toString();
    这句也可能有异常,如ss1=null时候就有
      

  8.   

    int login_id = Integer.parseInt(ss1);
    这句当然也有可能引起异常...
      

  9.   

    Hibernate解决了什么问题?试比较Hibernate与JDO、EJB技术。
    对像到关系数据库的数据映射,数据持久。::
    JDO是SUN的标准,但过于复杂,还要有预编译,有很多坏处
    Hibernate 与EJB :hibernate为轻量级的数据持久框架,而EJB是重量级的。现在EJB3.0也在按照Hibernate的实现思想来实现。
    目前Hibernate非常受欢迎,它是开发源代码的Java O/R映射框架,目的是把开发人员从繁琐的数据持久化编程中解脱出来。它也有一个标准的HQL(Hibernate 查询语言)语言,你可以在新的EJB QL中看到它的影子。Hibernate在处理如数据查询、更新、连接池、事务处理、实体关系处理等方面非常简单。
    其实他们三个本质都是一个东东,最主要的解决了数据映射二、 找出下面程序中可能引起异常的代码行,并说明原因。
    1) String ss1 = session.getAttrbute(“login_id”).toString();
    2) if  (ss1.equals(“”))
    3) out.println(“对不起,没有授权”);
    4) int login_id = Integer.parseInt(ss1);
    5) String admin_name = ss1.substring(0,28);第四句会有异常代码
    三、 JAVASCRIPT
    1、 检查身份证号码正确性
    1) 长度 15 或18位
    2) 前14位一般为数字末位可以为字母
    2、 身份证号码中带有出生日期,请编写取出出生日期的函数,格式为 YYYY-MM-DD。身份证的正则表太式:var idCard=“(([0-9]{17}([0-9]{1}|\w{1}))|([0-9]{14}([0-9]{1}|\w{1})))";
    if (!patrn.exec(idCard)) return false 
    return true 

    if (pattern.test(email)) return true; 
    var idCard='得到年月日字符串[0-9]{4}-[0-9]{2}-[0-9]{2}
      

  10.   

    function isNumber(pObj){
     var obj = eval(pObj);
     strRef = "1234567890";
     if(!isEmpty(pObj,errMsg))return false;
     for (i=0;i<obj.value.length;i++) {
      tempChar= obj.value.substring(i,i+1);
      if (strRef.indexOf(tempChar,0)==-1) {
        if(obj.type=="text") 
          obj.focus(); 
        return false; 
      }
     }
     return true;
    }function form_submit(theform){
       if (theform.IdCard.length == 15 || theform.IdCard.length == 18){
         if(!isNumber(theform.IdCard.subString(0,14))){
           alert("数据不符合要求,请检查");
         }
       }else{
         alert('Sorry!请输入正确长度');return false;
       }
    }function getBoth(){
      //shit,我的出生日期是身份证的第6位到13位,太阳了,这么变态!!!
      //你就截取就可以了!!!  
    }
      

  11.   

    四 ,我就tmd知道把id设成auto_increment的,并且是主键!!!
      

  12.   

    第三题这样比较简单:<SCRIPT LANGUAGE="JavaScript">
    <!--
    var pattern=/^(\d{6})(\d{8})(\d{3})?\w$/;
    //18位身份证号码
    var str="250322197709283216";
    if (pattern.test(str)) {
    alert("身份证号码正确!!");
    var tempstr = str.match(pattern)[2];
    var  birthstr = tempstr.substring(0,4).concat("-")+tempstr.substring(4,6).concat("-")+tempstr.substring(6,8);
    alert("出生日期为:"+birthstr)
    } else alert("身份证号码错误!!");
    //-->
    </SCRIPT>
      

  13.   

    二、 找出下面程序中可能引起异常的代码行,并说明原因。
    1) String ss1 = session.getAttrbute(“login_id”).toString();
    2) if  (ss1.equals(“”))
    3) out.println(“对不起,没有授权”);
    4) int login_id = Integer.parseInt(ss1);
    5) String admin_name = ss1.substring(0,28);有异常:第一句,第二句,第四句,第五句。
    1)因为session.getAttrbute(“login_id”)可能为null
    可改为:session.getAttrbute(“login_id”)==null?null:session.getAttrbute(“login_id”).toString();
    2)if  (ss1.equals(“”))因为如果ss1为空也会抛出异常
    4)int login_id = Integer.parseInt(ss1);这个异常就不用说了吧!
    5)String admin_name = ss1.substring(0,28);这个异常可能多种,可能ss1为空,可能不够长!
      

  14.   

    1) String ss1 = session.getAttrbute(“login_id”).toString();
    如果session.getAttrbute(“login_id”)==null,则null异常
    2) if  (ss1.equals(“”))
    如果到了此地ss1应该不会null,此处还行。
    3) out.println(“对不起,没有授权”);
    到了页面可能有编码问题
    4) int login_id = Integer.parseInt(ss1);
    Integer.parseInt()是可能抛异常得。看看javadoc就知道了
    5) String admin_name = ss1.substring(0,28);
    数组越界异常
      

  15.   

    3) out.println(“对不起,没有授权”);补充:这个可能有IllegalStateException
      

  16.   

    javasrcip:
    function isNumber(pObj){
     var obj = eval(pObj);
     strRef = "1234567890";
     if(!isEmpty(pObj,errMsg))return false;
     for (i=0;i<obj.value.length;i++) {
      tempChar= obj.value.substring(i,i+1);
      if (strRef.indexOf(tempChar,0)==-1) {
        if(obj.type=="text") 
          obj.focus(); 
        return false; 
      }
     }
     return true;
    }function form_submit(theform){
       if (theform.IdCard.length == 15 || theform.IdCard.length == 18){
         if(!isNumber(theform.IdCard.subString(0,14))){
           alert("数据不符合要求,请检查");
         }
       }else{
         alert('Sorry!请输入正确长度');return false;
       }
    }function getBoth(){}
      

  17.   

    看了前面的答案,
    对于不对与不足的答案补充一下:
    2。D E
    四。
    1。可以用递增序列
    2。可以用一个额外的表保存这个表中最大的id,当这个表中插入记录的时候用触发器往那个id加一
    3。插入的时候id用MAX(id)得到
    三个方法效率不同后面几个内容太多,自己发挥吧(搜索一下)