仓酷云

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

[学习教程] JAVA网页编程之Java Servlet及Cookie的利用

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

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

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

x
J2ME在手机游戏开发的作用也是无用质疑的。至于桌面程序,可能有人说java不行,界面不好看,但是请看看NetBeans和Eclipse吧,他们都是利用java开发的,而他们的界面是多么的华丽,所以界面决不是java的缺点。还有一个不得不提的优点就是大多java人员都挂在嘴边的java的跨平台性,目前这确实也是java优点之一。cookie|servlet本文先容了JavaServlet编程所需的软件及情况设置。只需你有一台安装Windows95/98了的PC机,即可以依照本文的步骤开辟Servlet程序了。本文同时给出了经由过程JavaServlet向用户的硬盘写进和读取Cookie的办法及例程。经由过程它能够完成网上罕见的本性化网页、网上购物篮、暗码考证等。


  JavaServlet是运转于Web服务器上的Java代码,它能够承受用户哀求,举行响应的处置,并向用户供应反应。其感化相似于CGI程序,能够完成网页中良多交互式效果,但比CGI程序效力更高。Cookies是用户会见Web服务器时由Web服务器写进用户盘算机特定目次的一小段信息,JavaServlet中供应了Cookie类,能够对Cookie举行操纵。在特准时候将Cookie写进用户盘算机,在必要时可再掏出来利用。

  1.软件下载

  PC机,安装Windows95/98,具有IP地点(假如没有能够任意配一个)。开辟软件有两个:JDK1.3和JSWDK1.0.1。

  到http://java.sun.com,点击"Products&APIs”链接,能够点击下载"JavaTM2SDK,StandardEdition,v1.3”。下载后的文件安装到你的盘算机上。

  JSWDK1.0.1只要763,414bytes,可从在http://java.sun.com/products/jsp/download.html下载。下载上去的jswdk1_0_1-win.zip用Winzip软件解紧缩至某个目次,如:d:app,该目次下将主动创建一个子目次:jswdk-1.0.1。这时候JSWDK1.0.1便已安装在d:appjswdk-1.0.1目次下了。

  2.启动JSWDK1.0.1

  翻开一个DOS窗口,以下图点击窗口左上角DOS图标,选择属性菜单,在接着呈现的窗口中点击"内存”,在"初始情况”后的下拉菜单中将"主动”改成2816,点击"exit”按钮加入窗口,再从头进进DOS窗口。该设置只必要做一次。

  在该DOS窗口中运转以下DOS命令设置好情况变量:

  setCLASSPATH=c:jdk1.3bin;.

  setpath=c:jdk1.3bin;c:windows;c:windowscommand

  假如你的JDK1.3和Windows操纵体系安装在其他目次,DOS命令中的目次称号应作响应修正。

  然后在该DOS窗口顶用CD命令进进JSWDK1.0.1安装目次(如d:appjswdk-1.0.1)运转startserver.bat便可。

  注重:

  关于JDK1.3,即本文所述的情况,需修正startserver.bat,将源文件中的

  startjavacom.sun.web.shell.Startup%1%2%3%4%5%6%7%8%9

  remjavacom.sun.web.shell.Startup%1%2%3%4%5%6%7%8%9

  改成:

  remstartjavacom.sun.web.shell.Startup%1%2%3%4%5%6%7%8%9

  javacom.sun.web.shell.Startup%1%2%3%4%5%6%7%8%9

  若利用的是老版本的JDK1.2,不必要修正startserver.bat,实行后会呈现另外一个DOS窗口。

  运转后显现一串字符串,最初显现endpointcreated:localhost/127.0.0.1:8080。标明一般启动终了。但它不撑持数据库中笔墨段和中文值的查询。

  翻开一个扫瞄器,输出:http://你的呆板IP地点:8080,这时候扫瞄器中显现有缺省的页面,在该页面中可检察Servlet例子。
  JavaServlet中供应了Cookie类,其机关器有两个参数,分离代表Cookie的名字和值。Cookie类中供应了各类办法设置Cookie的属性,如经由过程setMaxAge()办法能够设置Cookie的保存工夫。若保存工夫为负值,代表扫瞄器封闭Cookie即消散。保存工夫为0,代表删除Cookie,保存工夫为负数,代表Cookie存在几秒。

  同时Servlet中的HttpServletResponse类供应了addCookie()办法能够将创立好的Cookie写进用户盘算机。

  以下面的代码可向用户的盘算机写进两个Cookie,一个称号为my1,值为hi1,另外一个称号为my2,值为hi2

  importjavax.servlet.*;

  importjavax.servlet.http.*;

  importjava.io.*;

  publicclassxxextendsHttpServlet

  {

  publicvoidservice(HttpServletRequestrq,HttpServletResponserp)

  throwsServletException,IOException

  {Cookiec;

  c=newCookie("my1","hi1");

  c.setMaxAge(100*60);

  rp.addCookie(c);

  c=newCookie("my2","hi2");

  c.setMaxAge(-1);

  rp.addCookie(c);

  }

  }

  该程序中,利用Cookiec=newCookie("my1","hi1");创立了一个Cookie,它实践上是两个配对的字符串。第一个字符串代表Cookie的名字,第二个字符串代表Cookie的值。然后利用rp.addCookie(c);将其写进用户的盘算机中。Cookiemy1保存工夫为100*60秒即100分钟,而my2则在封闭扫瞄器时主动消散。

  在后面的DOS窗口中输出命令:

  setpath=c:jdk1.3bin;c:windows;c:windowscommand

  setCLASSPATH=c:jdk1.3bin;d:appjswdk-1.0.1libservlet.jar

  以设置好情况变量。

  javacxx.java编译Java程序

  copy*.classD:appjswdk-1.0.1examplesWEB-INFservlets

  将编译后的程序拷贝到JavaServlet运转目次。

  *若利用老版本的JDK1.2,为了运转该JavaServlet程序,还必要修正一个文件:

  D:appjswdk-1.0.1examplesWEB-INFservlets.properties

  用文本编纂器翻开该文件,在其最初加上几行:

  xx.code=xx

  xx.initparams=foo

  在扫瞄器中输出http://呆板的IP地点:8080/examples/servlet/xx即可以向用户的盘算机写进Cookie了。

经由过程HttpServletRequest类的getCookies()办法能够从响应用户读取Cookie列表,放在Cookie范例的数组中。经由过程数组中各个Cookie的getName()和getValue()办法能够猎取各个Cookie的称号和值。

  上面的例子能够打印出由Servlet地点服务器写进用户呆板上的Cookie称号和值的列表。如有称号为my1的Cookie,则将其值加上一个字符x。它相似一个计数器,能够复杂地统计在Cookie保存时代该用户的会见词典。

  importjavax.servlet.*;

  importjavax.servlet.http.*;

  importjava.io.*;

  publicclassyyextendsHttpServlet

  {Cookiex[];

  publicvoidservice(HttpServletRequestrq,HttpServletResponserp)

  throwsServletException,IOException

  {inthave=0;

  Cookiec;
首先java功能强大的背后是其复杂性,就拿web来说,当今流行的框架有很多,什么struts,spring,jQuery等等,而这无疑增加了java的复杂性。
谁可相欹 该用户已被删除
沙发
发表于 2015-1-21 13:27:57 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
蒙在股里 该用户已被删除
板凳
发表于 2015-1-30 19:09:25 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
admin 该用户已被删除
地板
发表于 2015-2-2 22:06:13 | 只看该作者
有时间再研究一下MVC结构(把Model-View-Control分离开的设计思想)
第二个灵魂 该用户已被删除
5#
发表于 2015-2-8 09:47:15 | 只看该作者
任职于太阳微系统的詹姆斯·高斯林等人于1990年代初开发Java语言的雏形,最初被命名为Oak,目标设置在家用电器等小型系统的程序语言
再见西城 该用户已被删除
6#
发表于 2015-2-25 08:36:34 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
金色的骷髅 该用户已被删除
7#
发表于 2015-2-28 15:04:29 | 只看该作者
Java语言支持Internet应用的开发,在基本的Java应用编程接口中有一个网络应用编程接口(java net),它提供了用于网络应用编程的类库,包括URL、URLConnection、Socket、ServerSocket等。Java的RMI(远程方法激活)机制也是开发分布式应用的重要手段。
海妖 该用户已被删除
8#
发表于 2015-3-7 11:23:05 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
因胸联盟 该用户已被删除
9#
发表于 2015-3-12 15:14:34 | 只看该作者
Java 不同于一般的编译执行计算机语言和解释执行计算机语言。它首先将源代码编译成二进制字节码(bytecode),然后依赖各种不同平台上的虚拟机来解释执行字节码。从而实现了“一次编译、到处执行”的跨平台特性。
活着的死人 该用户已被删除
10#
发表于 2015-3-19 23:22:17 | 只看该作者
一直感觉JAVA很大,很杂,找不到学习方向,前两天在网上找到了这篇文章,感觉不错,给没有方向的我指了一个方向,先不管对不对,做下来再说。
再现理想 该用户已被删除
11#
发表于 2015-3-25 21:12:38 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
灵魂腐蚀 该用户已被删除
12#
发表于 2015-4-4 20:31:32 | 只看该作者
另外编写和运行Java程序需要JDK(包括JRE),在sun的官方网站上有下载,thinking in java第三版用的JDK版本是1.4,现在流行的版本1.5(sun称作J2SE 5.0,汗),不过听说Bruce的TIJ第四版国外已经出来了,是专门为J2SE 5.0而写的。
兰色精灵 该用户已被删除
13#
发表于 2015-4-6 09:03:13 | 只看该作者
一般学编程语言都是从C语开始学的,我也不例外,但还是可能不学过程语言而直接学面向对象语言的,你是刚接触语言,还是从C开始学比较好,基础会很深点,如果你直接学习JAVA也能上手,一般大家在学语言的时候都记一些语言的关键词,常有的包和接口等。再去做逻辑代码的编写,以后的学习过程都是从逻辑代码编写中提升的,所以这方面都是经验积累的。你要开始学习就从
只想知道 该用户已被删除
14#
发表于 2015-4-6 10:05:21 | 只看该作者
我大二,Java也只学了一年,觉得还是看thinking in java好,有能力的话看英文原版(中文版翻的不怎么好),还能提高英文文档阅读能力。
爱飞 该用户已被删除
15#
发表于 2015-4-11 00:41:45 | 只看该作者
接着就是EJB了,EJB就是Enterprise JavaBean, 看名字好象它是Javabean,可是它和Javabean还是有区别的。它是一个体系结构,你可以搭建更安全、更稳定的企业应用。它的大量代码已由中间件(也就是我们常听到的 Weblogic,Websphere这些J2EE服务器)完成了,所以我们要做的程序代码量很少,大部分工作都在设计和配置中间件上。
愤怒的大鸟 该用户已被删除
16#
发表于 2015-6-8 19:24:31 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
乐观 该用户已被删除
17#
发表于 2015-6-21 01:32:36 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
深爱那片海 该用户已被删除
18#
发表于 2015-7-1 21:36:51 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
小女巫 该用户已被删除
19#
发表于 2015-7-9 17:23:27 | 只看该作者
自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environment)体系。J2SE就是Java2的标准版,主要用于桌面应用软件的编程;J2ME主要应用于嵌入是系统开发,如手机和PDA的编程;J2EE是Java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和ERP系统。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

GMT+8, 2024-12-29 09:02

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

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