易截截图软件、单文件、免安装、纯绿色、仅160KB

JSP与Servlets的区别

JSP与Servlets的区别   
      
    
  JSP和SERVLET到底在应用上有什么区别,很多人搞不清楚。我来胡扯几句吧。简单的说,SUN首先发展出SERVLET,其功能比较强劲,体系设计也很先进,只是,它输出HTML语句还是采用了老的CGI方式,是一句一句输出,所以,编写和修改HTML非常不方便。    
  后来SUN推出了类似于ASP的镶嵌型的JSP,把JSP   TAG镶嵌到HTML语句中,这样,就大大简化和方便了网页的设计和修改。新型的网络语言如ASP,PHP,JSP都是镶嵌型的SCRIPT语言。    
  从网络三层结构的角度看,一个网络项目最少分三层:data   layer,business   layer,   presentation   layer。当然也可以更复杂。SERVLET用来写business   layer是很强大的,但是对于写presentation   layer就很不方便。JSP则主要是为了方便写presentation   layer而设计的。当然也可以写business   layer。写惯了ASP,PHP,CGI的朋友,经常会不自觉的把presentation   layer和business   layer混在一起。就象前面那个朋友,把数据库处理信息放到JSP中,其实,它应该放在business   layer中。    
  根据SUN自己的推荐,JSP中应该仅仅存放与presentation   layer有关的东东,也就是说,只放输出HTML网页的部份。而所有的数据计算,数据分析,数据库联结处理,统统是属于business   layer,应该放在JAVA   BEANS中。通过JSP调用JAVA   BEANS,实现两层的整合。    
  实际上,微软前不久推出的DNA技术,简单说,就是ASP+COM/DCOM技术。与JSP+BEANS完全类似,所有的presentation   layer由ASP完成,所有的business   layer由COM/DCOM完成。通过调用,实现整合。    
  为什么要采用这些组件技术呢?因为单纯的ASP/JSP语言是非常低效率执行的,如果出现大量用户点击,纯SCRIPT语言很快就到达了他的功能上限,而组件技术就能大幅度提高功能上限,加快执行速度。    
  另外一方面,纯SCRIPT语言将presentation   layer和business   layer混在一起,造成修改不方便,并且代码不能重复利用。如果想修改一个地方,经常会牵涉到十几页CODE,采用组件技术就只改组件就可以了。    
&


相关文档:

struts2中action如何获取jsp页面参数


1. ActionContext
在Struts2开发中,除了将请求参数自动设置到Action的字段中,我们往往也需要在Action里直接获取请求(Request)或会话
(Session)的一些信息,甚至需要直接对JavaServlet
Http的请求(HttpServletRequest),响应(HttpServletResponse)操作.
我们需要在Action中取得request请求参数"username"的值: ......

jsp页面传值的乱码问题的解决

jsp页面之间的传值乱码问题,总结如下:
a.jsp往b.jsp传值:
a.jsp页面内容:
<%@ page language="java" import="java.util.*" pageEncoding="GB2312"%>
<form action="b.jsp">
      name:<input type=text name=name>
      <input type=s ......

jsp乱码问题

  学习jsp时,乱码也是一个很头痛的事。
1.在jsp文件开头加上<%@ page contentType="text/html; charset=GBK"%>
2.解决post方式提交内容的乱码:request.setCharcterEncoding("GBK");
3.解决url(get,超链接)方式乱码问题是配置servlet.xml.在<Connector>标签中添加一句URIEncoding="GBK" 或者 string ......

利用jsp上传excel

一、上传
引入包:org.apache.commons.fileupload.*
jsp代码: DiskFileUpload fu = new DiskFileUpload();
      List list = fu.parseRequest(request);
      if(list != null){
       System.out.println(list.size());
  ......

Servlets/JSP开发技术问答


为什么GenericServlet在init(ServletConfig config)基础上增加了一个init()方法?
init()方法被GenericServlet.init(ServletConfig config)方法调用。
init()方法方便了开发人员定制Servlet的初始化,而无须去维护ServletConfig对象的存储工作。
重写GenericServlet.init(ServletConfig config)必须要显示的调用super ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号