域名忘记续费了!orz

2008-02-02 – 10:33 - 160 views

今天想打开博客,突然发现不能打开了,很是郁闷,以为是服务器问题,GTALK上东哥也不在线,自己查看了下FTP发现FTP正常,又ping了下域名,发现问题了,"Ping request could not find host www.iroader.cn. Please check the name and try again.”我忽然意识到,域名可能失效了。

上网一查,果然如此!我的域名注册到2008-1-31,而今天已经是2月2日了,难怪会访问不了,想想自己这个域名已经一年了,使我不得不感觉时间过的飞快~我这个米虽然是CN的,但不是一元米哦,呵呵,想到这个就有点不爽,当初准备弄博客的时候空间、程序很快就搞定了,但是域名问题就比较难搞了,很难想有什么好的或者有意义的域名,后来也不知道怎么就想了这个iRoader.cn,现在看来好难记啊,而且也没什么特色,失败!

我这个人有时候大脑会发热,想到什么立马就干,想弄博客之后就立马开始买域名,当时CN米还要50块钱左右呢,正好当时在CNZZ论坛上面转悠,看到一个人的签名是便宜出售COM/CN/NET/ORG……然后就跟这个人联系了下,打听了一下CN米最低25元可以买到,所以我就贪了这个便宜买了个CN米,买好之后那个人才告诉我,这个米是“黑米”,以后想续费必须找他续费,我晕!~可是已经买来了,也么有办法之后继续用直至上个月底。

今天我发现域名过期之后想找那个人续费,但是我翻遍我的QQ好友再也找不到那个当初卖我域名的人了,难道被我清理掉了,额滴神啊~

懊恼了半天,我做出了一个决定...

不续费了,等15天之后花一元重新注册,嘎嘎,又省了点钱了!~(*^__^*)

 Tags: , , ,

(七)JSP基本语法--session对象

2008-01-31 – 13:25 - 206 views

session对象

  • session对象主要用于保存用户的各种信息,知道它的生命周期(一般是900S)超时或者被人为释放为止
  • 可以通过session对象来判断此用户是否是合法用户
  • 在服务器上通过session来区分每一个上网用户
  • session对象属于javax.servlet.http.HttpSession接口的实例化对象
    • session属于HTTP协议范畴之内的对象,所以只有唯一的一个http包下有此接口,没有任何继承关系
    • 用户只要一连接服务器则立刻分配一个session给用户

session的主要方法

  1. 服务器上通过session来分别不同的用户-->sessionID:任何连接到服务器上的用户,服务器都会为之分配唯一一个不会重复的sessionID
    • sessionID是由服务器同意管理的,人为不能控制
    • 方法:session.getId()
    • sessionID的长度为32位
  2. 判断是不是新的session
    • Public boolean isNew(),判断当前的session是否是新建立的session
  3. session的属性设置
    • 设置属性setAttribute()
    • 取得属性getAttribute()
    • 删除属性removeAttribute()
    • 通过session能够对用户是否登陆做出验证
  4. 用户注销:让用户的session失效
    • 若用户的session失效,则在session所保留的全部操作也会消失
    • 方法:Public Void invalidate()使session失效(需手工操作)
    • 若session长时间不被使用,也会自动失效
  5. 得到session的创建时间
    • 方法:Public long getCreationTime(),此方法返回一个long类型,通过Date类可以取得一个完整的时间
  6. 取得用户最后一次操作的时间
    • 方法:Public long getLastAccessedTime()
    • 用户在线时间=session最后一次操作时间-session创建时间

session与Cookie区别:

  • session将信息保存在服务器上而Cookie保存在客户端上
  • session比Cookie更安全,session比Cookie更占资源
  • 开发原则:
    • sessiom要尽量少使用--尽量少向session中保存信息
    • session使用Cookie机制,若Cookie被禁用,则session也无法使用
 Tags: , , ,

(六)JSP基本语法E--response对象

2008-01-31 – 12:57 - 305 views

response对象:服务器端回应客户端的请求

  • 所属接口:javax.servlet.http.HttpServletResponse,其父接口是ServletResponse,而且ServletResponse也现在只有唯一一个HttpServletResponse子接口,主要原因是,现在的J2EE的WEB程序主要以HTTP协议为主要通讯协议。

response对象的功能:

  1. 设置头信息:response.setHeader("头信息内容","头信息参数");
    • 常用的刷新refresh,例如:response.setHeader("refresh","1");
      • 几秒后跳转:response.setHeader("refresh","2:URL=XXX");
  2. 重定向--response跳转response.sendRedirect("跳转地址");
    • 此语句执行后,页面地址也变为跳转后的地址
    • 面试中常见问题:两种跳转的区别:
      • <jsp:forward page="xxx" />:
        1. 地址栏不改变--属于服务器端跳转
        2. 执行到跳转语句后无条件立刻跳转--之后的代码将不再执行
          • 注意:若使用forward跳转则一定要在跳转前释放掉全部资源;
          • 使用forward时,request设置的属性(setAttribute)依然能保留到下一个页面
        3. 通过<jsp:Param name="" value="" />传递参数
      • response.sendRedirect("跳转地址"):
        1. 地址栏改变--属于客户端跳转
        2. 页面的所有代码执行完毕之后再跳转
          • 不能保存request属性,地址栏改变了,客户端跳转
        3. 通过对URL地址的重写传递参数
  3. 设置Cookie
    • Cookie是服务器端保存在客户端的一组资源
    • 通过Cookie实现保存密码或者多长时间无需再输入密码等功能
    • 设置Cookie的方法:Public Void addCookie(Cookie cookie)
    • Cookie是通过服务器端设置到客户端上去的--response
      • 如果要在服务器端取得Cookie--request
      • 在request对象中有Public Cookie[] getCookies()方法
      • 在使用request对象取得全部Cookie时会出现JSESSIONID,表示唯一的客户端在服务器上的编号,这个值在客户端第一次访问服务器端之后设置
    • 默认情况下Cookie只针对当前浏览器有效,如果需要长留在计算机上,可以设置Cookie的保存时间,通过设置Cookie最大保留时间方法:setMaxAge()
 Tags: , , , ,

(五)JSP基本语法D--request对象

2008-01-29 – 23:16 - 262 views

request对象其实是服务器端接受客户端请求的信息的,在接受信息之后做进一步处理

常用方法:getParameter(),getParameterValues(),getParameterNames()

在接受参数之后若页面中包含中文则会出现乱码,之所以会出现这样根本原因就是此文字不在正常的编码范围之中,解决方法有:

  1. 对所有的数据进行在编码:ISO8859-1编码
    • String类中的getBytes("ISO8859-1") ;
    • getBytes()方法的定义:Public byte[] getBytes("encoding")再将byte数组重新变为字符串。e.g.String name=new String(request.getParameter("uname").getBytes("ISO8859-1"));
  2. 设置同意的字符编码
    • Public void setCharacterEncoding(String env)

在J2EE中,最大的问题是乱码问题--要做到国际通用

若传递的内容是数组(复选框的情况下、多个下拉列表项)使用request的一下方法取得数据:

  • Public String[] getParameterValues(String name)

隐藏域是开发中较为常用的表单控件,其作用是将内容隐藏起来,使用户不能修改,之后随表单一起提交到服务器上显示。

地址重写

  • 通过地址重写,可以将内容传递到服务器端--服务器端只认HTTP协议而不管接受的内容是以何种形式传递过来的,若有多个参数用&连接

★getParameterNames主要用来接受参数名称

  • Public Enumeration getParameterNames()

取得客户端IP地址的方法:Public String getRemoteAddr()

★★总结:

  • 只要是客户端的信息,在服务器端都可以通过request对象取得
  • 只需要注意中文乱码问题即可
  • 必须掌握的方法getParameter(),getParameterValues(),setCharacterEncoding()
 Tags: , , ,

(四)JSP基本语法C--JSP内置对象

2008-01-28 – 22:54 - 191 views

Java中的对象必须先实例化再用:分配内存空间

在JSP中,由WEB容器对对象进行实例化

常见对象及作用域:

对象名 类型 作用域
request javax.servlet.ServletRequest的子类 Request
response javax.servlet.ServletResponse的子类 Page
pageContext javax.servlet.jsp.PageContext Page
session javax.servlet.http.HttpSession Session
application javax.servlet.ServletContext Application
out javax.servlet.jsp.JspWriter Page
config javax.servlet.ServletConfig Page
page java.lang.Object Page
exception java.lang.Throwable Page

!!最重要的概念:四种属性的保存范围

  1. 设置属性:Public abstract Void setAttribute(java.lang.String name,java.lang.Object attribute)  ★★属性名称为字符串、属性值可以为任意对象
  2. 取得属性:Public abstract Void setAttribute(java.lang.String name)

四种属性保存范围:

  1. 在一个页面范围内 :page
  2. 在一次服务器请求范围内:request
  3. 在一次会话范围内:session
  4. 在一个应用服务器范围内:application

page范围:

  • 在jsp中设置一个页的属性范围必须通过pageContext完成
  • pageContext属性范围是最为重要的JSP属性之一,但是如果使用纯粹的JSP代码开发,则此属性显示不出用处

request范围★:

  • 将属性保存在一次请求范围内的前提是,必须使用服务器端跳转<jsp:forward />
    • 应用点:MVC设计模式、Struts、Webwork

session范围:

  • 只保留一个用户的信息
  • 只要设置了属性,则不管是什么跳转都可以取得属性
  • 与session有关的任何打开页面都可以取得session
  • ★session的主要功能:用于验证用户是否登陆

application范围:

  • 只要设置一次则所有的网页窗口都可以取得数据
  • 如果要释放application资源只能重新启动服务器
    • 应用点:在线人员统计、在线人员名单列表

application、session、request都需要跨多个页

保持性能不降低的原则:若能用request就不不要使用session,能使用session就不要使用application

★★重要概念:

  • pageContext默认情况下表示一个页面的保存范围
  • 另一种设置属性的方法Public abstract Void setAttribute(java.lang.String name,java.lang.Object attribute,int scope)
    • scope可以取:Public Static final int APPLICATION_SCOPE、Public Static final int SESSION_SCOPE、Public Static final int REQUEST_SCOPE、Public Static final int PAGE_SCOPE
  • ★★总结:四种属性范围都是依靠pageContext展开的,但是在开发中,往往使用session、request范围最多。
    • 四种属性范围是整个J2EE WEB端开发必须深刻记住的概念,包括设置属性和取得属性的参数类型,返回值类型。
 Tags: , , , ,