1.Statement和PreparedStatement之间的区别?
2.jsp怎么与servlet建立联系,怎么从servlet中取值?
3.如果要比较对象string中字符串str是否为空,"".equals(str)和str.equals("")这两种写法在程序中将会产生什么效果?

解决方案 »

  1.   

    1.Statement和PreparedStatement之间的区别?
    //前者是执行完整的sql语句;后者是使用于定义格式,将sql中的where部分参数化,对于大量相同的sql语句的执行,后者的效率高,而且可以防止sql注入;
    3.如果要比较对象string中字符串str是否为空,"".equals(str)和str.equals("")这两种写法在程序中将会产生什么效果?
    //前者比较好,因为如果str为null的话,后者会报空指针异常,而前者不会
      

  2.   

    huyc_fly() ( ) 1.Statement和PreparedStatement之间的区别?
    //前者是执行完整的sql语句;后者是使用于定义格式,将sql中的where部分参数化,对于大量相同的sql语句的执行,后者的效率高,而且可以防止sql注入;
    3.如果要比较对象string中字符串str是否为空,"".equals(str)和str.equals("")这两种写法在程序中将会产生什么效果?
    //前者比较好,因为如果str为null的话,后者会报空指针异常,而前者不会------------------------
    1.可以防止sql注入是什么意思?
    2.我常用的就是这种方式str.equals(""),用来判断字符串是否为空,不会出错的
      

  3.   

    1.因为如果用户恶意输入username ' and 1=1';的话,sql语句将会被截断,可能构成where语句永真;就会造成用户的非法入侵;这只是简单举例;但是由于PreparedStatement使后面where条件产生化后,sql语句将不会被截断,所以可一定程度上防止sql注入;
    3.你试一试如下的代码,你看看会不会报异常:
      String str=null;
      if(str.equals(""))
      System.out.println("没有异常产生");
      

  4.   


    不能这样写:str.equals(""),超级大BUG第二题能说得详细一点吗?
      

  5.   

    第三题好象楼上的兄弟们分析的不对啊,试试下面的就知道了
    class TestEquals
    {
    public static void main(String[] args)
    {
    String str=null;//如果用第一个if判断的话,无论str空与否,都打印"NO"
    if("".equals(str))
    // if(str.equals(""))
    System.out.println ("YES");
    else
    System.out.println ("NO");
    }
    }
      

  6.   

    1.statement执行完整的sql语句,prepared statement是预定义sql语句
    2.str.equals("")如果str=null会发生空指针异常
      

  7.   

    ("")其实有自己的常量对象,因此 ("").equals(str)) 是比较 str是否为(""),而不是判断str是否为null;同理,str.equals("")是比较str的值是否为("")。
      

  8.   

    LZ对对象和primitive type 没搞清楚啊
      

  9.   

    ""是表示一个合法的字符串,而str=null;则str没有指向一个合法的字符串;所以它要操作equals方法的话就会报空指针异常;
      

  10.   

    1.Statement和PreparedStatement之间的区别?
    2.jsp怎么与servlet建立联系,怎么从servlet中取值?
    3.如果要比较对象string中字符串str是否为空,"".equals(str)和str.equals("")这两种写法在程序中将会产生什么效果?
    答:1.Statement和PreparedStatement可以接受SQL查询的条件参数
       2.jsp请求servlet,然后进入servlet具体的方法,用request对象取值。
       3。用第一种,可以避免因str为null时抛出NullPointerException异常
      

  11.   

    4.比如一个表info中有一万条记录,其中有name字段,怎么统计出100-200条记录,并按name降序排列?
    5.在表info中统计出2006-1-1到2006-4-1之间,名字为“shenli”的每天的信息发送量,其中字段有id,name,date,send(发送内容)?
    6.数据库中索引的优点和缺点?
      

  12.   

    7.JDK1.5中有什么新的特性,表现在那些方面?
      

  13.   

    public static void main(String[] args) 
        {
            try
            {
                String str = null;
            
                if(str.equals(""))
                {
                    System.out.println("equal");
                }
                else
                {
                    System.out.println("not equal");
                }
            }
            catch(Exception e)
            {
                System.out.println("Exception:" + e.getMessage());
            }
        }