⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 index_jsp.java

📁 本书由浅入深、循序渐进地介绍了MVC的体系结构和如何构建一个基于MVC的Web框架
💻 JAVA
字号:
package org.apache.jsp.WEB_002dINF.jsp;

import javax.servlet.*;
import javax.servlet.http.*;
import javax.servlet.jsp.*;
import java.sql.*;
import java.sql.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.text.*;
import com.gd.mvc.util.GdDate;
import java.math.*;
import com.myContent.vo.ContentType;
import com.myContent.vo.Content;
import com.gd.mvc.io.InfoInAndOut;
import com.gd.mvc.io.impl.GdInfoInAndOut;

public final class index_jsp extends org.apache.jasper.runtime.HttpJspBase
    implements org.apache.jasper.runtime.JspSourceDependent {

 public static final String _AppId = "index"; 
  private static java.util.List _jspx_dependants;

  private javax.el.ExpressionFactory _el_expressionfactory;
  private org.apache.AnnotationProcessor _jsp_annotationprocessor;

  public Object getDependants() {
    return _jspx_dependants;
  }

  public void _jspInit() {
    _el_expressionfactory = JspFactory.getDefaultFactory().getJspApplicationContext(getServletConfig().getServletContext()).getExpressionFactory();
    _jsp_annotationprocessor = (org.apache.AnnotationProcessor) getServletConfig().getServletContext().getAttribute(org.apache.AnnotationProcessor.class.getName());
  }

  public void _jspDestroy() {
  }

  public void _jspService(HttpServletRequest request, HttpServletResponse response)
        throws java.io.IOException, ServletException {

    JspFactory _jspxFactory = null;
    PageContext pageContext = null;
    HttpSession session = null;
    ServletContext application = null;
    ServletConfig config = null;
    JspWriter out = null;
    Object page = this;
    JspWriter _jspx_out = null;
    PageContext _jspx_page_context = null;


    try {
      _jspxFactory = JspFactory.getDefaultFactory();
      response.setContentType("text/html; charset=GBK");
      pageContext = _jspxFactory.getPageContext(this, request, response,
      			"", true, 8192, true);
      _jspx_page_context = pageContext;
      application = pageContext.getServletContext();
      config = pageContext.getServletConfig();
      session = pageContext.getSession();
      out = pageContext.getOut();
      _jspx_out = out;

      out.write("\r\n");
      out.write("\r\n");
      out.write('\r');
      out.write('\n');

	InfoInAndOut infoOut = (request.getAttribute("infoOut") == null) ? new GdInfoInAndOut() : (InfoInAndOut)request.getAttribute("infoOut");
	Map mapContents = infoOut.get("mapContents") == null ? new HashMap(): (HashMap)infoOut.get("mapContents");
	List contentTypeList = infoOut.get("contentTypeList") == null ? new ArrayList(): (ArrayList)infoOut.get("contentTypeList");

      out.write("\r\n");
      out.write("\r\n");
      out.write("<html>\r\n");
      out.write("<head>\r\n");
      out.write("<title>内网首页</title>\r\n");
      out.write("<style>\r\n");
      out.write("*{font-size:12px}\r\n");
      out.write(".style1 {\r\n");
      out.write("\tfont-size: x-large;\r\n");
      out.write("\tfont-weight: bold;\r\n");
      out.write("}\r\n");
      out.write("</style>\r\n");
      out.write("<!--defer可以让脚本在整个页面装载完成之后再解析,而非边装载边解析。   \r\n");
      out.write("这对于只包涵事件触发的js脚本而言,可以提高整个页面的加载速度。-->\r\n");
      out.write("<script  defer>\r\n");
      out.write(" var draged=false;//表示状态为是否在拖动状态\r\n");
      out.write(" tdiv=null;\r\n");
      out.write(" //鼠标按下,开始拖动\r\n");
      out.write("function dragStart(){\r\n");
      out.write(" ao=event.srcElement;//获取鼠标点击事件\r\n");
      out.write(" if(ao.className!=\"mainShow\") return;//当鼠标点击的不是classname为mainShow的div时,不做任何反应\r\n");
      out.write(" draged=true;//标识为开始拖动\r\n");
      out.write(" tdiv=document.createElement(\"div\");//创建一个div\r\n");
      out.write(" tdiv.innerHTML=ao.outerHTML;//将要拖动的内容付给这个div\r\n");
      out.write(" //以下为设定这个div的属性\r\n");
      out.write(" tdiv.style.display=\"block\";\r\n");
      out.write(" tdiv.style.position=\"absolute\";\r\n");
      out.write(" tdiv.style.filter=\"alpha(opacity=70)\";//设定为半透明\r\n");
      out.write(" tdiv.style.cursor=\"move\";\r\n");
      out.write(" tdiv.style.width=ao.offsetWidth;\r\n");
      out.write(" tdiv.style.height=ao.offsetHeight;\r\n");
      out.write(" tdiv.style.top=getPosition(ao).top;//获取点击div的位置\r\n");
      out.write(" tdiv.style.left=getPosition(ao).left;\r\n");
      out.write(" document.body.appendChild(tdiv);\r\n");
      out.write(" lastX=event.clientX;\r\n");
      out.write(" lastY=event.clientY;\r\n");
      out.write(" lastLeft=tdiv.style.left;\r\n");
      out.write(" lastTop=tdiv.style.top;\r\n");
      out.write(" try{\r\n");
      out.write("  ao.dragDrop();//使点击的div处于拖动状态\r\n");
      out.write(" }catch(e){}\r\n");
      out.write("}\r\n");
      out.write("//开始拖动div\r\n");
      out.write("function draging(){\r\n");
      out.write(" if(!draged)return;//假如不在拖动状态,则返回\r\n");
      out.write(" var tX=event.clientX;\r\n");
      out.write(" var tY=event.clientY;\r\n");
      out.write(" tdiv.style.left=parseInt(lastLeft)+tX-lastX;\r\n");
      out.write(" tdiv.style.top=parseInt(lastTop)+tY-lastY;//移动后来又创建的div\r\n");
      out.write(" var rowsDivs=document.getElementsByTagName(\"div\");//获取所有的div\r\n");
      out.write(" for(var i=0;i<rowsDivs.length;i++){\r\n");
      out.write("   if(rowsDivs[i].className!=\"rowsShow\")continue;//只对className为rowsShow中的div进行处理,即只对列中的div进行处理\r\n");
      out.write("   //获取这个div的位置\r\n");
      out.write("   var parentDiv=getPosition(rowsDivs[i]);\r\n");
      out.write("   //判断目前鼠标的位置在哪个列中\r\n");
      out.write("   if(tX>=parentDiv.left&&tX<=parentDiv.right&&tY>=parentDiv.top&&tY<=parentDiv.bottom){\r\n");
      out.write("\t//在其中的一个列中\r\n");
      out.write("   \tvar mainShows=rowsDivs[i].getElementsByTagName(\"div\");\r\n");
      out.write("\t//如果该列中没有div,即没有栏目\r\n");
      out.write("   \tif (mainShows.length ==0 ) {\r\n");
      out.write("   \t\tif(tX>=parentDiv.left&&tX<=parentDiv.right&&tY>=parentDiv.top&&tY<=parentDiv.bottom){\r\n");
      out.write("   \t\t\t//则将要移动的div添加进这一列\r\n");
      out.write("     \t\t\trowsDivs[i].appendChild(ao);\r\n");
      out.write("    \t\t}\r\n");
      out.write("    \t\tbreak;\r\n");
      out.write("   \t}\r\n");
      out.write("   \t//如果该列中有栏目\r\n");
      out.write("   \tfor(var j=0; j<mainShows.length;j++){\r\n");
      out.write("\t\t//获取每个栏目的位置\r\n");
      out.write("    \t\tvar mainShow=getPosition(mainShows[j]);\r\n");
      out.write("    \t\t//如果鼠标在其中的一个栏目中,则将要移动的栏目添加在这个栏目前\r\n");
      out.write("    \t\tif(tX>=mainShow.left&&tX<=mainShow.right&&tY>=mainShow.top&&tY<=mainShow.bottom){\r\n");
      out.write("     \t\t\trowsDivs[i].insertBefore(ao,mainShows[j]);\r\n");
      out.write("     \t\t\tbreak;\r\n");
      out.write("    \t\t//如果不在,则添加到这个栏目后\r\n");
      out.write("    \t\t}else{\r\n");
      out.write("     \t\t\trowsDivs[i].appendChild(ao);\t\r\n");
      out.write("    \t\t}\r\n");
      out.write("   \t}\t\r\n");
      out.write("   }\r\n");
      out.write(" }\r\n");
      out.write("}\r\n");
      out.write("//拖动结束\r\n");
      out.write("function dragEnd(){\r\n");
      out.write(" if(!draged)return;\r\n");
      out.write(" draged=false;//状态为拖动结束\r\n");
      out.write(" mm=rollback(150,15);//恢复位置\r\n");
      out.write("}\r\n");
      out.write("//取得一个对象的坐标\r\n");
      out.write("function getPosition(o){\r\n");
      out.write(" var to=new Object();//new一个对象\r\n");
      out.write(" to.left=to.right=to.top=to.bottom=0;//将该对象的位置都置为0\r\n");
      out.write(" var twidth=o.offsetWidth;\r\n");
      out.write(" var theight=o.offsetHeight;\r\n");
      out.write(" while(o!=document.body){//判断是否为body\r\n");
      out.write("  to.left+=o.offsetLeft;\r\n");
      out.write("  to.top+=o.offsetTop;\r\n");
      out.write("  o=o.offsetParent;//一直到获取到相对于屏幕的位置\r\n");
      out.write(" }\r\n");
      out.write("  to.right=to.left+twidth;\r\n");
      out.write("  to.bottom=to.top+theight;\r\n");
      out.write(" return to;\r\n");
      out.write("}\r\n");
      out.write("//用于恢复位置\r\n");
      out.write("function rollback(aa,ab){\r\n");
      out.write(" var ac=parseInt(getPosition(tdiv).left);//获取新建div的左坐标\r\n");
      out.write(" var ad=parseInt(getPosition(tdiv).top);//获取新建div的上坐标\r\n");
      out.write(" var ae=(ac-getPosition(ao).left)/ab;\r\n");
      out.write(" var af=(ad-getPosition(ao).top)/ab;\r\n");
      out.write(" return setInterval(function(){if(ab<1){//直到新建的div消失\r\n");
      out.write("       clearInterval(mm);\r\n");
      out.write("       tdiv.removeNode(true);//移除新建div的结点\r\n");
      out.write("       ao=null;\r\n");
      out.write("       return\r\n");
      out.write("      }\r\n");
      out.write("     ab--;\r\n");
      out.write("     ac-=ae;\r\n");
      out.write("     ad-=af;\r\n");
      out.write("     tdiv.style.left=parseInt(ac)+\"px\";\r\n");
      out.write("     tdiv.style.top=parseInt(ad)+\"px\"\r\n");
      out.write("    }\r\n");
      out.write(",aa/ab)\r\n");
      out.write("}\r\n");
      out.write("function init(){//将各个栏目的div与上述的3个方法进行绑定\r\n");
      out.write("//首先获取网页中所有的div\r\n");
      out.write("var mainDivs=document.getElementsByTagName(\"div\");\r\n");
      out.write("for(var j=0;j<mainDivs.length;j++){\r\n");
      out.write("   if(mainDivs[j].className!=\"mainShow\")continue;//只绑定calssname为mainShow的div\r\n");
      out.write("   mainDivs[j].calssName = \"mainShow\";\r\n");
      out.write("   mainDivs[j].attachEvent(\"onmousedown\",dragStart);//绑定鼠标按下事件\r\n");
      out.write("   mainDivs[j].attachEvent(\"ondrag\",draging);//绑定拖动事件\r\n");
      out.write("   mainDivs[j].attachEvent(\"ondragend\",dragEnd);//绑定拖动结束事件\r\n");
      out.write("}\r\n");
      out.write("}\r\n");
      out.write("init();\r\n");
      out.write("</script>\r\n");
      out.write("</head>\r\n");
      out.write("<body >\r\n");
      out.write("<!-id为gf的div用来定位其他div-->\r\n");
      out.write("<div align=\"center\" class=\"style1\" style='float:left;width:100%;height:10%;border: 1px solid #BA5B57;' >\r\n");
      out.write("内网首页\r\n");
      out.write("</div>\r\n");
      out.write("<div id='gf' style='float:left;width:100%;height:100%;border: 1px solid #BA5B57;' >\r\n");

          	   for (int i = 0; contentTypeList != null && contentTypeList.size() > i; i++) {
      			ContentType contentType = (ContentType)contentTypeList.get(i);
      			if (i%2 == 0) {
          
      out.write("\r\n");
      out.write("\t<!-表示一列,为左边一列-->\r\n");
      out.write("<div class=\"rowsShow\" style='float:left;width:33%;height:500;border: 1px solid red;'>\r\n");
}
      out.write("\r\n");
      out.write("\t<!-表示一个栏目,为公司新闻栏目-->\r\n");
      out.write("\t\t<div class=\"mainShow\" style='width:100%;border: 1px solid yellow;'>\r\n");
      out.write("\t\t");
      out.print(contentType.getContentTypeName());
      out.write('\r');
      out.write('\n');

    List contentList = (List)mapContents.get(contentType.getId());
    for (int j = 0; contentList != null && contentList.size() > j; j++) {
      			Content content = (Content)contentList.get(j);

      out.write("\t\t\t\t\r\n");
      out.write("\t\t\t<!-每个div表示一条新闻-->\r\n");
      out.write("<div style='width:100%;border: 1px solid red;'>\r\n");
      out.write("\t\t\t\t<a href=\"show.htm\">");
      out.print(content.getTitle());
      out.write("</a>\r\n");
      out.write("\t\t  </div>\r\n");
      out.write("\t\t");
}
      out.write("\r\n");
      out.write("\t\t\t<div style='width:100%;border: 1px solid red;' align='right'>\r\n");
      out.write("\t\t\t\t<a href=\"showMore.htm\">更多内容</a>\r\n");
      out.write("\t\t\t</div>\r\n");
      out.write("\t\t</div>\r\n");
      out.write("\t");

	if (i%2 != 0) {
	
      out.write("\t\r\n");
      out.write("\t</div>\r\n");
      out.write("\t\r\n");
}}
      out.write("\t    \r\n");
      out.write(" </div>\r\n");
      out.write("</div>\r\n");
      out.write("<script language=\"javascript1.2\">\r\n");
      out.write("window.name = \"");
      out.print("index_"+session.getId());
      out.write("\";    \r\n");
      out.write("</script>\r\n");
      out.write("</body>\r\n");
      out.write("</html>\r\n");
    } catch (Throwable t) {
      if (!(t instanceof SkipPageException)){
        out = _jspx_out;
        if (out != null && out.getBufferSize() != 0)
          try { out.clearBuffer(); } catch (java.io.IOException e) {}
        if (_jspx_page_context != null) _jspx_page_context.handlePageException(t);
      }
    } finally {
      if (_jspxFactory != null) _jspxFactory.releasePageContext(_jspx_page_context);
    }
  }
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -