小妖女 发表于 2015-1-18 11:06:56

JAVA编程:Java Servlet 编程及使用之四

Java的B/s开发是通常是javaweb开发,又叫J2EE开发,J2SE是手机开发。C#的C/s和B/s开发是说.net和Asp开发。。u在这里说明一点;资深一点的Java和C#程序员都明白一点  HttpServlet是从GenericServlet承继而来,因而它具有GenericServlet相似的办法和对象,是我们利用Servlet编程常常用到的包,它撑持HTTP的post和get等办法。
  编程思绪:上面的例子,运转了局是输入复杂地前往客户发送给服务器的哀求行和头部信息,和一些可会见的HTTP信息等。
  SnoopServlet.java的源代码以下:
importjava.io.IOException;
importjava.io.PrintWriter;
importjava.util.Enumeration;
importjavax.servlet.*;
importjavax.servlet.http.*;
publicclassSnoopServletextendsHttpServlet{
 publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse)
 throwsServletException,IOException
 {
  PrintWriterout=response.getWriter();
  response.setContentType("text/plain");
  out.println("SnoopServlet");
  out.println();
  out.println("Servletinitparameters:");
  Enumeratione=getInitParameterNames();
  while(e.hasMoreElements()){
   Stringkey=(String)e.nextElement();
   Stringvalue=getInitParameter(key);
   out.println(""+key+"="+value);
  }
  out.println();
  out.println("Contextinitparameters:");
  ServletContextcontext=getServletContext();
  Enumerationenum=context.getInitParameterNames();
  while(enum.hasMoreElements()){
   Stringkey=(String)enum.nextElement();
   Objectvalue=context.getInitParameter(key);
   out.println(""+key+"="+value);
  }
  out.println();
  out.println("Contextattributes:");
  enum=context.getAttributeNames();
  while(enum.hasMoreElements()){
   Stringkey=(String)enum.nextElement();
   Objectvalue=context.getAttribute(key);
   out.println(""+key+"="+value);
  }
  out.println();
  out.println("Requestattributes:");
  e=request.getAttributeNames();
  while(e.hasMoreElements()){
   Stringkey=(String)e.nextElement();
   Objectvalue=request.getAttribute(key);
   out.println(""+key+"="+value);
  }
  out.println();
  out.println("ServletName:"+getServletName());
  out.println("Protocol:"+request.getProtocol());
  out.println("Scheme:"+request.getScheme());
  out.println("ServerName:"+request.getServerName());
  out.println("ServerPort:"+request.getServerPort());
  out.println("ServerInfo:"+context.getServerInfo());
  out.println("RemoteAddr:"+request.getRemoteAddr());
  out.println("RemoteHost:"+request.getRemoteHost());
  out.println("CharacterEncoding:"+request.getCharacterEncoding());
  out.println("ContentLength:"+request.getContentLength());
  out.println("ContentType:"+request.getContentType());
  out.println("Locale:"+request.getLocale());
  out.println("DefaultResponseBuffer:"+response.getBufferSize());
  out.println();
  out.println("Parameternamesinthisrequest:");
  e=request.getParameterNames();
  while(e.hasMoreElements()){
   Stringkey=(String)e.nextElement();
   String[]values=request.getParameterValues(key);
   out.print(""+key+"=");
   for(inti=0;i<values.length;i++){
     out.print(values+"");
   }
   out.println();
  } 
  out.println();
  out.println("Headersinthisrequest:");
  e=request.getHeaderNames();
  while(e.hasMoreElements()){
    Stringkey=(String)e.nextElement();
    Stringvalue=request.getHeader(key);
    out.println(""+key+":"+value);
  }
  out.println();
  out.println("Cookiesinthisrequest:");
  Cookie[]cookies=request.getCookies();
  if(cookies!=null){
   for(inti=0;i<cookies.length;i++){
    Cookiecookie=cookies;
    out.println(""+cookie.getName()+"="+cookie.getValue());
   }
  }
  out.println();
  out.println("RequestIsSecure:"+request.isSecure());
  out.println("AuthType:"+request.getAuthType());
  out.println("HTTPMethod:"+request.getMethod());
  out.println("RemoteUser:"+request.getRemoteUser());
  out.println("RequestURI:"+request.getRequestURI());
  out.println("ContextPath:"+request.getContextPath());
  out.println("ServletPath:"+request.getServletPath());
  out.println("PathInfo:"+request.getPathInfo());
  out.println("PathTrans:"+request.getPathTranslated());
  out.println("QueryString:"+request.getQueryString());
  out.println();
  HttpSessionsession=request.getSession();
  out.println("RequestedSessionId:"+
  request.getRequestedSessionId());
  out.println("CurrentSessionId:"+session.getId());
  out.println("SessionCreatedTime:"+session.getCreationTime());
  out.println("SessionLastAccessedTime:"+session.getLastAccessedTime());
  out.println("SessionMaxInactiveIntervalSeconds:"+session.getMaxInactiveInterval());
  out.println();
  out.println("Sessionvalues:");
  Enumerationnames=session.getAttributeNames();
  while(names.hasMoreElements()){
   Stringname=(String)names.nextElement();
   out.println(""+name+"="+session.getAttribute(name));
  }
 }
}  编程技能申明:

其实产生见解的过程就是训练自己发现问题,分析问题的能力。根据以上的认识我想谈下传统的学习与通过视频独立学习的优缺点:

爱飞 发表于 2015-1-20 14:43:00

关于设计模式的资料,还是向大家推荐banq的网站 http://www.ckuyun.com/,他把GOF的23种模式以通俗易懂的方式诠释出来,纯Java描述,真是经典中的经典。

老尸 发表于 2015-1-29 09:54:11

你快去找一份Java的编程工作来做吧(如果是在校学生可以去做兼职啊),在实践中提高自己,那才是最快的。不过你得祈祷在公司里碰到一个高手,而且他 还愿意不厌其烦地教你,这样好象有点难哦!还有一个办法就是读开放源码的程序了。我们知道开放源码大都出自高手,他们设计合理,考虑周到,再加上有广大的程序员参与,代码的价值自然是字字珠叽,铿锵有力(对不起,偶最近《金装四大才子》看多了)。

海妖 发表于 2015-2-6 00:19:09

一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从

小魔女 发表于 2015-2-14 14:56:18

当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?

仓酷云 发表于 2015-3-4 07:19:37

是一种使网页(Web Page)由静态(Static)转变为动态(Dynamic)的语言

透明 发表于 2015-3-11 17:53:21

不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。

灵魂腐蚀 发表于 2015-3-19 04:51:26

所以现在应用最广泛又最好学的就是J2EE了。 J2EE又包括许多组件,如Jsp,Servlet,JavaBean,EJB,JDBC,JavaMail等。要学习起来可不是一两天的事。那么又该如何学习J2EE呢?当然Java语法得先看一看的,I/O包,Util包,Lang包你都熟悉了吗?然后再从JSP学起。

若天明 发表于 2015-3-27 08:09:28

任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
页: [1]
查看完整版本: JAVA编程:Java Servlet 编程及使用之四