仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 347|回复: 9
打印 上一主题 下一主题

[学习教程] JAVA教程之成绩集锦:Servlets/JSP开辟手艺问答

[复制链接]
若天明 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:11:15 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
JAVA学习必须明确这是一项投资,对于大多数的人来说,学习JAVA是为了就业,还有就是刚走向工作位置的朋友想尽快赶上工作的节奏。js|servlet|成绩  为何GenericServlet在init(ServletConfigconfig)基本上增添了一个init()办法?
  
  init()办法被GenericServlet.init(ServletConfigconfig)办法挪用。
  
  init()办法便利了开辟职员定制Servlet的初始化,而不必往保护ServletConfig对象的存储事情。
  
  重写GenericServlet.init(ServletConfigconfig)必需要显现的挪用super.init(config)办法。
  
  ServletContext.getContect(java.lang.Stringuripath)的感化是甚么?
  
  前往统一Server中指定的path对应的ServletContext对象,经由过程该对象能够完成与Server中的其他Context打交道。
  
  uripath必需是以"/"入手下手(该路径的寄义是相对全部Servlet文档的根路径,而不是以后ServletContext的根路径)。
  
  Servlet性命周期是甚么?
  
  一样平常的Servlet(GenericServlet,即与协定有关的Servlet)的性命周期:init()-->GenericServlet.service(ServletRequestreq,ServletResponseres)-->destroy.
  
  HttpServlet的性命周期:init()-->GenericServlet.service(ServletRequestreq,ServletResponseres)--->service(HttpServletRequestreq,HttpServletResponseresp)-->doXXXX()-->destroy.
  
  有无需要重写GenericServlet.service()办法?
  
  关于HttpServlet来讲没有需要。只必要重写它的doXXXX()办法就能够了。HttpServlet中service()办法会主动的依据用户哀求范例把哀求转发给响应的doXXXX()办法(比方doGet()办法)。
  
  ServletRequest.getReader()和ServletRequest.getInputStream()怎样利用?
  
  注重两个办法不克不及同时利用。
  
  ServletRequest.getRealPath(Stringpath)办法已不保举利用。
  
  请利用ServletContext.getRealPath(Stringpath)办法。
  
  ServletResponse缺省的字符集(charset)是甚么?
  
  ServletResponse缺省的字符集(charset)是ISO-8859-1,能够经由过程setContentType(java.lang.String)办法改动新的字符集。
  
  比方:setContentType("text/html;charset=Shift_JIS").
  
  关于字符集信息,能够扫瞄RFC2045
  
  HttpServletRequest.getRequestURI()和HttpServletRequest.getRequestURL()区分是甚么?
  

  request.getRequestURI()前往值相似:/xuejava/requestdemo.jsp
  
  request.getRequestURL()前往值相似:http://localhost:8080/xuejava/requestdemo.jsp
  
  HttpServletRequest.encodeURL()和HttpServletRequest.encodeRedirectURL(()区分是甚么?为何要有两个分歧的办法呢?
  
  当用URL-rewriting体例来办理Session的时分,必要用到以上的两个办法。
  
  两个办法的分歧点是:两个办法断定是不是必要包括sessionID的逻辑分歧。
  
  在挪用HttpServletResponse.sendRedirect前,应当先挪用encodeRedirectURL()办法,不然大概会丧失Sesssion信息。...
  
  怎样使你的Servlet大概JSP完成SingleThreadModel?
  
  关于Servlet完成javax.single.SingleThreadModel接口。
  
  关于JSP,在PageDirective中写以下的语句<%@pageisThreadSafe="false"%>
  
  JSPTag和JSPXML-basedTag
  
  ...
  
  怎样把某一个JSPPage界说成为ErrorPage?为何要如许做?
  
  完成办法:<%@pageisErrorPage="true"%>
  
  为何?由于必要猎取Exception对象(缺省情形下,在JSPPage中是不克不及间接利用“隐含对象”exception的)。
  
  JSPPage的实行按次是怎样的?
  
  JSPPage的实行按次以下:
  
  JSPPageTranslation.JSPPage-->Servletsourcecode.
  JSPPageCompilation.Servletsourcecode-->Servletclass.
  LoadClass(Firsttimeortheserverrestarted)
  
  Createinstance(大概会良多次,假如JSPPage中声了然<%@pageisThreadSafe="false"%>)
  
  CalljspInitmethod(一样平常的JSPPage都没有重写这个办法,重写必要在声明语句段中)。
  
  Call_jspServicemethod(相似与一样平常HttpServlet的doGet和doPost办法,可是能够同时用来处置Post和Getq哀求)。
  
  CalljspDestroymethod(Server在卸载Servet的时分,比方当Servlet好久没有利用的情形)。
  
  JSPPage中有哪些隐含对象(ImplicityObject)?各自的范例和感化是甚么?
  
  request--
  reponse--
  session--
  application--
  out--
  page--
  pagecontext--
  exception--只要在以后JSPPage为ErrorPage的时分才无效。
  config--
  
  <jsp:includepage="/foo/foo.jsp"%>和<@includefile="/foo/foo.jsp"%>的区分是甚么?
  

  <jsp:include...--requesttime.
  <@include...--Pagetranslationtime.
  
  Servlets/JSPContainer(Engine)有几种运转体例?
  
  Standalone
  Tomcatstandalonemode
  In-process
  TomcatrunninginsideApacheWebServer.
  Out-of-process
  Apache+mod_jk+Tomcat
  
  Servlet,Servlet开辟职员,ServletAPI,ServletContainer的干系是甚么?
  
  Servlet,Servlet开辟职员--->ServletAPI-->ServletContainer
  ThepartsofanHTTPmessage
  
  MessagepartDescription
  Theinitialline:Specifiesthepurposeoftherequestorresponsemessage
  例子:GET/reports/sales/index.htmlHTTP/1.0
  Theheadersection:Specifiesthemeta-information,suchassize,type,andencoding,
  aboutthecontentofthemessage
  Ablankline:
  Anoptionalmessagebody:Themaincontentoftherequestorresponsemessage
  
  上面是一个Response的例子:
  
  HTTP/1.0200OK
  Date:Tue,01Dec200123:59:59GMT
  Content-Type:text/html
  Content-Length:52
  
  <html>
  <body>
  <h1>Hello,John!</h1>
  </body>
  </html>
  
  HTTP标准中界说了哪些办法?各自有甚么用处?
  
  GET
  HEAD
  POST
  从Http1.1标准入手下手,增添了以下的办法:
  
  PUT
  OPTIONS
  TRACE
  DELETE
  CONNECT
  
  ServetRequest中为何要界说:getContentType(),getContentLength()办法。
  
  依据HTTP协定标准,Request和Response一样也有这些必不成少的内容!
  
  以是必要起首懂得HTTPMessage的观点和其内容的格局,这些工具关于Request和Reponse是一样的。
  
  关于GET体例发送的哀求,其内容范例为:null
  
  关于POST体例发送的哀求,其内容范例为:application/x-www-form-urlencoded
  
  POST体例发送哀求的内容相似于:username=xuejava.
  
  RequestDispatcher.forward()和HttpServletResponse.sendRedirect()的区分是甚么?
  
  RequestDispatcher.forward()是在服务器端运转;HttpServletResponse.sendRedirect()是经由过程向客户扫瞄器发送死令来完成。
  
  以是RequestDispatcher.forward()关于扫瞄器来讲是“通明的”;而HttpServletResponse.sendRedirect()则不是。
  
  别的,还要注重RequestDispatcher.forward()在挪用的时分Response不克不及已Commit了(Response.isCommitted())。
  
  ServletContext.getRequestDispatcher(Stringurl)和ServletRequest.getRequestDispatcher(Stringurl)的区分是甚么?为何?
  
  ServletContext.getRequestDispatcher(Stringurl)中的url只能利用相对路径;而ServletRequest.getRequestDispatcher(Stringurl)中的url可使用绝对路径。
  
  由于ServletRequest具有绝对路径的观点;而ServletContext对象无次观点。
  
  怎样把哀求转移到别的一个WebApp中的某个地点?
  
  ServletContext.getRequestDispatcher(Stringurl)和ServletRequest.getRequestDispatcher(Stringurl)只能把哀求转移到统一个WebApp中的地点。
  
  假如必要把哀求转移到别的一个WebApp中的某个地点,能够按上面的做法:
  
  1.取得别的一个WebApp的ServletConext对象(currentServletContext.getContext(uripath)).
  
  2.挪用ServletContext.getRequestDispatcher(Stringurl)办法。
微软什么都提供了。你可以试想一下,如果你是新手,你是希望你点一下按钮程序就能运行那,还是想自己一点一点的组织结构,然后打包发部,调错再打包......
第二个灵魂 该用户已被删除
沙发
发表于 2015-1-20 16:21:24 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
透明 该用户已被删除
板凳
发表于 2015-1-21 21:02:49 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
不帅 该用户已被删除
地板
发表于 2015-1-29 12:52:07 | 只看该作者
是一种突破用户端机器环境和CPU
若天明 该用户已被删除
5#
 楼主| 发表于 2015-2-3 08:32:40 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
冷月葬花魂 该用户已被删除
6#
发表于 2015-2-8 20:01:39 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
莫相离 该用户已被删除
7#
发表于 2015-2-26 02:11:30 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
精灵巫婆 该用户已被删除
8#
发表于 2015-3-8 11:23:01 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
爱飞 该用户已被删除
9#
发表于 2015-3-15 22:15:51 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
蒙在股里 该用户已被删除
10#
发表于 2015-3-22 16:49:43 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-28 15:19

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表