你应该把代码逻辑放到一个servlet的java文件中处理。

解决方案 »

  1.   

    尝试减少几个if else.....如果真要优化,画个流程图什么的可能更能发现那些代码是多余的 String uname = null;
    String path = request.getRequestURI();
    String bid = request.getParameter("bid");
    String chapter = request.getParameter("chapter")==null?"1":request.getParameter("chapter");
    String edit=request.getParameter("edit");
    boolean editable=false;//当前的可编辑状态
    //如果未登录,则去登陆然后再回来
    if ((uname = session.getAttribute("uname")==null?null:session.getAttribute("uname").toString()) == null)
    {
    if(request.getQueryString()==null)
    //这句话的用处如果通过url进来而不是会员的话就直接跳转到登陆界面
    response.sendRedirect("userlogin.jsp?jumppath=" + path);
    //这句话的用处如果通过url进来而不是会员的话就直接跳转到登陆界面
    response.sendRedirect("userlogin.jsp?jumppath=" + path + "?"
    + request.getQueryString());
    }
    if (bid == null)
    //如果bid值没有,则回到选书界面
    response.sendRedirect("usermainpage.jsp");
    if (edit!= null){
    try{
    editable = Boolean.parseBoolean(edit.toLowerCase());
    }catch(Exception ex){
    response.sendRedirect(path);  
    }   
    }
      

  2.   

    java代码不要放在页面,放在servlet里
      

  3.   

    简单的办法,可以放到request里作为一个属性来传递
      

  4.   

    简单的办法,可以放到request里作为一个属性来传递
    那是不是这么说  我制作链接的时候其实是请求的servlet这个名字 处理完了再用request.setattribute或者session.setattribute传内容,然后重定向forward到我写的jsp上面,jsp再拿数据显示 这个才是标准流程对么?
    还有疑问,上面的request和session传值有什么区别?
      

  5.   

    简单的办法,可以放到request里作为一个属性来传递
    那是不是这么说  我制作链接的时候其实是请求的servlet这个名字 处理完了再用request.setattribute或者session.setattribute传内容,然后重定向forward到我写的jsp上面,jsp再拿数据显示 这个才是标准流程对么?
    还有疑问,上面的request和session传值有什么区别?
    http://zhidao.baidu.com/link?url=mkBixZqWEdW3TtauaViNQDHz3LkRJnjtMNtVITapSdj7_edUwySU0-UmqgmbJ6vi76vpP1jkpA34WaiTH6FHua
      

  6.   

    简单的办法,可以放到request里作为一个属性来传递
    那是不是这么说  我制作链接的时候其实是请求的servlet这个名字 处理完了再用request.setattribute或者session.setattribute传内容,然后重定向forward到我写的jsp上面,jsp再拿数据显示 这个才是标准流程对么?
    还有疑问,上面的request和session传值有什么区别?
    http://zhidao.baidu.com/link?url=mkBixZqWEdW3TtauaViNQDHz3LkRJnjtMNtVITapSdj7_edUwySU0-UmqgmbJ6vi76vpP1jkpA34WaiTH6FHua

    那么在调用顺序上,实际御用过程中是我说的这个样子么?页面请求servlet然后servlet再forward jsp
      

  7.   

    简单的办法,可以放到request里作为一个属性来传递
    那是不是这么说  我制作链接的时候其实是请求的servlet这个名字 处理完了再用request.setattribute或者session.setattribute传内容,然后重定向forward到我写的jsp上面,jsp再拿数据显示 这个才是标准流程对么?
    还有疑问,上面的request和session传值有什么区别?
    http://zhidao.baidu.com/link?url=mkBixZqWEdW3TtauaViNQDHz3LkRJnjtMNtVITapSdj7_edUwySU0-UmqgmbJ6vi76vpP1jkpA34WaiTH6FHua

    那么在调用顺序上,实际御用过程中是我说的这个样子么?页面请求servlet然后servlet再forward jsp
    forward也行,使用response的out.print自己构建相应页面也行,还有一些其它方式。这个可以随便找个样例,照做就好。