2010年9月30日木曜日

笔记:第十讲 JSP与Servlet(转载)


【 来源:作者的Blog 作者:往事如风 更新时间:2004-09-16 | 字体:  
1. 动态网页和静态网页有什么区别?
2. 什么是Web应用程序?
3. 什么是Servlet,和一般Java程序有什么区别?
4. 什么是JSP,和Java是什么关系?
5. JSP和Servlet有哪些异同点?
6. JSP和Servlet的主要用途?
10.1 Servlet的概念、配置与运行
10.1.1 Java Servlet的概念
Java Servlet是一个专门用于编写网络服务器应用程序的Java组件。所有基于Java的服务器端编程都是构建在Servlet之上的。在J2EE中Servlet已经是一个标准的组件。
在J2EE中跟Servlet相关的一个包是javax.servlet,其中最基本的Servlet被声明为一个接口javax.servlet: Interface Servlet,这是Servlet最高层次的一个抽象,它是和网络协议无关的。同样在javax.servlet中,实现了一个类 javax.servlet: class GenericServlet,这个类实现了Servlet接口,也是和协议无关的。而这个类是构建其他和协议相关的Servlet子类型的通用的父类(至少HttpServlet是从它继承而来的,从它的名字也能看出这一点)。
也就是说Servlet所适用的网络协议可以是多种多样的,比如HTTP,FTP,SMTP,TELNET等,但是就目前而言,只有HTTP服务已经形成了标准的Java组件。对应的软件包有两个javax.servlet.http和javax.servlet.jsp,分别对应我们要讲解的Servlet和JSP编程。我们通常所说的Servlet编程主要就是指针对HTTP的Servlet编程,用到的就是javax.servlet.http包中的类(典型的就是HttpServlet类),实际上Java Servlet编程的概念要更广一些,在这里我们也就约定俗成的使用Servlet来指代HTTP Servlet的编程,这点读者是需要了解的。由于JSP最终都是要经过JSP引擎转换成Servlet代码的,而且Servlet编程和一般的Java编程是没有大的区别的,只需要了解一定的规范即可,所以我们在这里先讲解Servlet的编程,这样对以后理解JSP是很大的有好处的,尽管在使用的时候可能JSP更为简单一些。
目前,Servlet引擎一般是第三方的插件,它通过一定的方法连接到Web服务器,Servlet引擎把它识别为Servlet请求的那些HTTP请求截获下来处理,而其他的HTTP请求由Web服务器按照通常的方式来处理,Servlet引擎会装载合适的Servlet到内存中,如果Servlet还没有运行的话,会分配一个可以使用的线程来处理请求,再把Servlet的输出返回到发出请求的Web客户机。
Java Servlet和Java Applet正好是相对应的两种程序类型,Applet运行在客户端,在浏览器内执行,而Servlet在服务器内部运行,通过客户端提交的请求启动运行,读者在学习过程可以作简单的比较。
由于Servlet是用Java编写的,所以它与生俱来就有跨平台的特性,因此Servlet程序的设计完全和平台是无关的,同样的Servlet完全可以在Apache,IIS等不同Web服务器上执行,不管底层的操作系统是Windows,Solaris,Mac,Linux还是其他的能支持Java的操作系统。
Servlet是跟普通的Java程序一样,是被编译成字节码后由JVM执行的。相比传统的CGI,尽管CGI是用本地代码直接执行的,但是由于每次客户端发出请求,服务器必须启动一个新的程序来处理请求,这就把高负载强加给了服务器资源,尤其如果CGI使用脚本语言编写时,如perl,服务器还必须启动语言解释程序,程序越多,占用的内存就越多,消耗CPU也越多,严重影响系统性能。
Servlet运行于Servlet引擎管理的Java虚拟机中,被来自客户机的请求所唤醒,与CGI不同的是,在虚拟机中只要装载一个Servlet就能够处理新的请求,每个新请求使用内存中那个Servlet的相同副本,所以效率比CGI来得高。如果采用服务器端脚本,如ASP,PHP,语言解释程序是内置程序,因此可以加快服务器的运行,但是效率还是比不上准编译的Servlet。实际的使用也已经证明,Servlet是效率很高的服务器端程序,很适合用来开发Web服务器应用程序。
Java Servlet有着十分广泛的应用。不光能简单的处理客户端的请求,借助Java的强大的功能,使用Servlet还可以实现大量的服务器端的管理维护功能,以及各种特殊的任务,比如,并发处理多个请求,转送请求,代理等
10.1.3 Servlet的运行环境
典型的Servlet运行环境有JSWDK,Tomcat,Resin等,这几个都是免费的软件,适合用来学习Servlet和JSP。它们都自带一个简单的HTTP Server,只需简单配置即可投入使用,你也可以把它们绑定到常用的Web服务器上,如Apache,IIS等,提供小规模的Web服务。还有一些商业的大中型的支持Servlet和JSP的Web服务器,如JRun,Web Sphere,Web Logic等等,配置比较复杂,并不适合初学者。但是功能较为强大,有条件的读者可以一试。
10.1.7 Servlet的编译
Servlet的编译和一般的Java程序是完全一样的,在使用javac编译的时候不需要任何特殊的参数。只要Servlet的编写是正确的,编译完后生成的Class文件就可以做为Servlet来运行了。
简单示例:
import java.io.*;
import java.util.*;
import javax.servlet.http.*;
import javax.servlet.*;
//导入必要的包
public class HelloServlet extends HttpServlet {
//所有Servlet必须从HttpServlet派生
public void doGet (HttpServletRequest req, HttpServletResponse res)
throws ServletException, IOException
//doGet()是这个Servlet的核心,真正处理请求的地方
{
res.setContentType("text/html");
//设置相应的类型为text/html
PrintWriter pw = res.getWriter();
//从HttpServletResponse得到输出流    pw.println("");
pw.println("");
pw.println("");
pw.println("");
pw.println("");
pw.println("");
pw.println("");
pw.println("

Hello, world!

");
pw.println("");
//上面的语句都是向客户端打印HTML文本
pw.close();
//关闭HttpServletResponse,使Web服务器知道相应结束
}
public HelloServlet() {} //构造函数,可以不要
10.2 Servlet的应用实例
10.2.1 Servlet与表单交互的方法
表单是HTML中使用最广泛的传递信息的手段。搞清楚Servlet与表单的交互,就在客户端与服务器之间架起了一座桥梁。Servlet使用HttpServlet类中的方法与表单进行交互。在HttpServlet类中有几个未完全实现的方法,你可以自己定义方法的内容,但是必须正确使用方法名称以使HTTP Server把客户请求正确的映射到相应的函数上。
doHeader 用于处理HEADER请求
doGet 用于处理GET请求,也可以自动的支持HEADER请求
doPost 用于处理POST请求
doPut 用于处理PUT请求
doDelete 用于处理DELETE请求
HttpServlet的Service方法,当它接收到一个OPTIONS请求时,它会自动调用doOptions方法,当接收到一个TRACE请求时调用doTrace。DoOptions默认执行方式是自动决定什么样的HTTP被选择并返回哪个信息。
在使用这些方法时必须带两个参数。第一个包含来自客户端的数据HttpServletRequest。第二个参数包含客户端的相应HttpServletResponse。
一个HttpServletRequest对象提供请求HTTP头部数据,也允许获取客户端的数据。怎样获取这些数据取决于HTTP请求方法。
不管何种HTTP方式,都可以用getParameterValues方法返回特定名称的参数值。
(HttpServletRequest,HttpServletResponse接口分别继承于ServletRequest和ServletResponse接口,getParameterValues和getWriter方法都是其祖先接口中的方法)
对于HTTP GET请求的方式,getQueryString方法将会返回一个可以用来解剖分析的参数值。
对于用HTTP POST,PUT和DELETE请求的方式,HttpServletRequest有两种方法可以选择:如果是文本数据,你能通过getReader的方法得到BufferedReader获取数据;如果是二进制数据,可以通过getInputStream方法得到ServletInputStream获取数据。
为了相应客户端,一个HttpServletResponse对象提供返回数据给用户的两个方法:一种是用getWriter方法得到一个PrintWriter,用于返回文本数据;另一种方法是用getOutputStream方法得到ServletOutputStream,用于返回二进制数据。在使用Writer或OutputStream之前应先设置头部(HttpServletResponse中有相应的方法),然后用Writer或OutputStream将相应的主体部分发给用户。完成后要关闭Writer或OutputStream以便让服务器知道相应已经结束。
例:PrintWriter out = response.getWriter();
out.println("Request URI: " + request.getRequestURI()+"
");

我们知道在同一台机器上,所有的编码方式都是一样的,一般中文平台是gb2312,英文平台是ISO-8859-1,但是网络上的两台机器并不能保证他们的编码方式都是一样的,这时候就有可能出现乱码的问题。在进行HTTP网络传输的时候,统一采用的编码方式是ISO-8859-1,这时候如果还是按照本地编码来传输就会出现问题,这也是Servlet在实现网络传输的时候一个不完美的地方,它不会自动进行本地编码到ISO-8859-1的转换,所以直接打印的话就会出现乱码。原理上讲任何出现打印字符串的地方,都是需要进行编码转换的,但是西文字符在不同字符集下对应相同的编码,以在打印西文字符的时候就不需要转换了。在Servlet后继的规范中可能会改变这种麻烦的状况。不同的是,从网络提交的表单数据,Servlet是自动把它转换成本地编码的,所以程序中得到的name字符串变量是gb2312编码的,同样需要进行转换后才能在客户端正确打印。
字符编码转换常用的方法是
String native_encoded = "中文字符串";
//本地编码的字符串
Byte[] byte_array = native_encoded.getBytes();
//得到本地编码的字节数组
String net_encoded = new String(native_encoded, "ISO-8859-1");
//生成ISO-8859-1编码的字符串
例:out.println(new String(new String("你的姓名:").getBytes(),"ISO-8859-1"));
10.2.3 用Servlet控制会话
会话状态的维持是开发Web应用所必须面对的问题,有多种方法可以来解决这个问题,如使用Cookies,hidden类型的表单域,或直接把状态信息加到URL中等,还有Servlet本身提供了一个HttpSession接口来支持会话状态的维持,在这里我们主要介绍基于这个接口的会话状态的管理。
Session的发明是为了填补HTTP协议的局限。请注意HTTP协议是如何工作的--用户发出请求,服务器作出响应,这种用户端和服务器端的联系就是离散的,非连续的。HTTP协议不能提供允许服务器跟踪用户请求的功能。在服务器端完成响应用户的请求之后,服务器不能继续与该浏览器继续保持连接。从服务器这端来看,每一个请求都是独立的,因此HTTP协议被认为是无状态协议,当用户在多个主页间切换时,服务器无法知道他的身份。Session的出现就是为了弥补这个局限。利用Session,您就可以当一个用户在多个主页间切换的时候也能保存他的信息。这样很多以前根本无法去做的事情就变得简单多了。
    在访问者从到达某个特定的主页到离开为止的那段时间,每个访问者都会单独获得一个Session。
Java Servlet定义了一个HttpSession接口,实现的Session的功能,在Servlet中使用Session的过程如下:
(1) 使用HttpServletRequest的getSession方法得到当前存在的session,如果当前没有定义session,则创建一个新的session,还可以使用方法getSession(true)
(2) 写session变量。可以使用方法HttpSession.setAttribute(name,value)来向Session中存储一个信息。也可以使用HttpSession.putValue(name,value),但这个方法已经过时了。
(3) 读Session变量。可以使用方法HttpSession.getAttribute(name)来读取Session中的一个变量值,如果name是一个没有定义的变量,那么返回的是null。需要注意的是,从getAttribute读出的变量类型是Object,必须使用强制类型转换,比如:
String uid = (String) session.getAttribute("uid");
也可以使用HttpSession.getValue(name),但是这个方法也已经过时了。
(4) 关闭session,当时用完session后,可以使用session.invalidate()方法关闭session。但是这并不是严格要求的。因为,Servlet引擎在一段时间之后,自动关闭seesion。
HttpSession session = request.getSession(true); //参数true是指在没有session时创建一个新的
Date created = new Date(session.getCreationTime());
//得到session对象创建的时间
out.println("ID " + session.getId()+"
");
                 //得到该session的id,并打印
out.println("Created: " + created+"
");
//打印session创建时间
session.setAttribute("UID","12345678");
//在session中添加变量UID=12345678
session.setAttribute("Name","Tom");
//在session中添加变量Name=Tom  10.2.4 Servlet的生命周期
跟客户端的Applet相似,Servlet(这里Servlet的概念又回到了最原始的含义)也遵循严格的生命周期。在每个Servlet实例的生命中有三种类型的事件,这三种事件分别对应于由Servlet引擎所唤醒的三个方法:
1.init()。当Servlet第一次被装载时,Servlet引擎调用这个Servlet的init()方法,只调用一次。如果某个Sevlet需要特殊的初始化需要。那么Servlet编写人员可以重写该方法来执行初始化任务。这是一个可选的方法。如果某个Servlet不需要初始化,那么默认情况下将调用它父类的init方法。系统保证,在init方法成功完成以前,是不会调用Servlet去处理任何请求的。
2.service()。这是Servlet最重要的方法,是真正处理请求的地方。对于每个请求,Servlet引擎将调用Servlet的service方法,并把Servlet请求对象和Servlet响应对象最为参数传递给它。
3.destroy()。这是相对于init的可选方法,当Servlet即将被卸载时由Servlet引擎来调用,这个方法用来清除并释放在init方法中所分配的资源。 Servlet的生命周期可以被归纳为以下几步:
(1) 装载Servlet,这一项操作一般是动态执行的。然而,Servlet通常会提供一个管理的选项,用于在Servlet启动时强制装载和初始化特定的Servlet
(2) Server创建一个Servlet实例
(3) Server调用Servlet的init方法
(4) 一个客户端请求到达Server
(5) Server创建一个请求对象
(6) Server创建一个响应对象
(7) Server激活Servlet的service方法,传递请求和响应对象作为参数
(8) service方法获得关于请求对象的信息,处理请求,访问其他资源,获得需要的信息
(9) service方法使用响应对象的方法。将响应传回Server,最终到达客户端。Service方法可能激活其他方法以处理请求。如doGet,doPost或其他程序员自己开发的方法
(10) 对于更多的客户端请求,Server创建新的请求和响应对象,仍然激活此servlet的service方法,将这两个对象作为参数传递给它,如此重复以上的循环,但无需再次调用init方法,Servlet一般只初始化一次
(11) 当Server不再需要Servlet时,比如当Server要关闭时,Server调用Servlet的destroy
10.3 JSP简介
10.3.1 JSP的概念
JSP(Java Server Pages?)是Sun Microsystems公司倡导、许多公司参与一起建立的一种动态网页技术标准。它在HTML代码中,插入JSP标记(tag)及Java程序片段 (Scriptlet), 构成JSP页面,其扩展名为 .jsp。当客户端请求JSP文件时,Web服务器执行该JSP文件,然后以HTML的格式返回给客户。前面已经提到过JSP只是构建在Servlet之上的高层次的动态网页标准,因此,从概念上将,相对Servlet而言,JSP并没有什么新的东西,如果读者对前面的Servlet已经十分的了解,那么JSP的概念可说跟Servlet是完全一样的,只不过在实现方法上稍有不同。
10.3.2 JSP的优点
1. 一次编译,多次、多处运行,代码的执行效率高
JSP的脚本语言是JAVA语言,因此它具有JAVA语言的一切特性。同时,JSP也支持现在大部分平台。 当JSP第一次被请求时,JSP页面转换成servlet,然后被编译成.calss文件,以后(除非页面有改动或Web服务器被重新启动)再有客户请求该JSP页面时,JSP页面不被重新编译,而是直接执行已编译好的.class文件,因此执行效率特别高。
2. 组件的重用性
可重用的、跨平台的JavaBeans和EJB(Enterprise JavaBeans)组件,为JSP程序的开发提供方便,我们可以将复杂的处理程序(如页面中需要显示的动态内容及对数据库的操作)放到组件中。可以多次使用这些组件,极大的减少了在JSP页面中重写重复的代码。
3. 将内容的生成和显示进行分离
使用JSP技术,Web页面开发人员可以使用HTML或者XML标识来设计和格式化最终页面。使用JSP标识或者脚本来生成页面上的动态内容。生成动态内容的语句一般被封装在JavaBean组件、EJB组件或JSP脚本段中。这样,页面的设计人员和页面的编程人员可以同步进行。同时在客户端通过查看源文件,看不到JSP标识的语句,更看不到JavaBean和EJB组件,也可以保护源程序的代码。
10.3.3 JSP的运行方式  JSP一般的运行方式为:当服务器启动后,当Web浏览器端发送过来一个页面请求时,Web服务器先判断是否是JSP页面请求。如果该页面只是一般的HTML/XML页面请求,则直接将HTML/XML页面代码传给Web浏览器端。如果请求的页面是JSP页面,则由JSP引擎检查该JSP页面,如果该页面是第一次被请求、或不是第一次被请求但已被修改,则JSP引擎将此JSP页面代码转换成Servlet代码,然后JSP引擎调用服务器端的Java编译器javac.exe对Servlet代码进行编译,把它变成字节码(.class)文件,然后再调用JAVA虚拟机执行该字节码文件,然后将执行结果传给Web浏览器端。如果该JSP页面不是第一次被请求,且没有被修改过,则直接由JSP引擎调用JAVA虚拟机执行已编译过的字节码.class文件,然后将结果传送Web浏览器端。上面是一张JSP运行的示意图。
(例如:在resin服务器中,将一个add.jsp文件放在doc/目录下,当在浏览器中参看该页面时http://127.0.0.1:8080/add.jsp 。系统会在docWEB-INFwork_jsp目录下生成_add__jsp.class, _add__jsp.java,_add__jsp.java.smap三个文件。)
    从这里我们已经不难看出JSP和Servlet的关系,JSP引擎负责把JSP页面翻译成Servlet,因此JSP在底层完全就是Servlet(指原始概念上的Servlet,而不是HttpServlet)。前面我们提到JSP编程对应javax.servlet.jsp,更确切的讲,这个包是供JSP引擎使用的,它在做翻译的时候需要用到这个包,我们在编写JSP页面的时候是不需要涉及这个包的使用的。
为什么有了Servlet还要在高层实现一个JSP呢?这个问题跟Servlet本身编写的烦杂程度有关,如果用Servlet来控制页面外观的话,将是一件十分头疼的事情,使用JSP就把烦杂的打印任务交给了JSP引擎,程序员可以把精力集中到逻辑控制上面。在后面还会有进一步的比较。
10.3.8 JSP指令(1)
下面我们开始讲解JSP的语法。从本质上讲JSP还是Java程序,因为它最终还是会被翻译成Servlet进而编译成class文件执行。但是由于JSP是嵌入式的Java程序,有些特殊的符号还是需要学习的。下面我们一一列举,读者不必深究,多使用之后就会熟悉。
   1.HTML注释
该注释在客户端可通过查看源文件的方法看到。
JSP语法:
例1

在客户端页面源程序中显示为:

例2

-->
在客户端页面源程序中显示为:

描述
可以在注释中使用任何有效的JSP表达式。表达式是动态的,当用户第一次调用该页面或该页面后来被重新调用时,该表达式将被赋值。JSP引擎对HTML注释中的表达式执行完后,其执行的结果将直接插入到表达式显示的地方。然后该结果和HTML注释中的其它内容一起输出到客户端。之间的内容在浏览器上是看不到,但可以在客户端可通过查看源文件的方法看到该注释。
2.JSP注释
JSP注释作为JSP页面的文档资料,但是该注释在客户端通过查看源文件的方法是看不到的。即该注释不发送到客户端。
JSP语法:
注意:在JSP注释中,不能使用--%>,但是如果你一定要使用的话,可以通过使用--%>来避开。
3. 声明
在JSP页面脚本语言中声明变量或方法
JSP语法:
例子



描述
在JSP文件中,一次可以声明一个或多个变量和方法,它们之间用分号隔开。在声明时使用JAVA语言时,必须符合JAVA语言规范。
注意:
(i) 变量必须先声明,然后才能使用。
(ii) 声明必须以分号结尾,但是在表达式中则不用。
(iii) 通过page指令导入的包中已声明的变量或方法,可以在主JSP文件中直接使用它们。
(iv) 一般情况下,一个声明的有效范围是本页面。但是,如果JSP源文件用指令或include指令包含一些静态文件,声明的有效范围将会扩大,也就是说:声明在该静态文件中也有效。但是如果JSP源文件中用指令包含进来一个动态文件,主JSP文件中的声明在该动态文件中将不起作用。 4. 表达式
在JSP脚本语言中,可以使用任何有效的表达式。
JSP语法:
例子1:


例子2:
随机显示一个数字:

描述
表达式用于求值,然后其值转化为字符串,而且插入在JSP文件中显示该表达式的地方。而且可以在文本中使用表达式。表达式标签能包含符合JAVA语言规范的任何有效表达式,但是要注意:不能使用分号作为表达式的结尾,然而,在脚本段标签中,表达式要求以分号作为结尾。
5. 脚本段
在JSP页面脚本语言中,包含一段有效的代码片段。
JSP语法:
例1:



描述
在脚本段能声明多个变量和方法。能使用任何有效的表达式。能使用任何JSP隐含的对象或任何用标签声明的对象。能使用页面语言中任何有效的语句,如果使用Java语言,必须符合JAVA语言程序规范。
说明:假如脚本段有输出语句,则输出内容被存储在out对象中,通过out对象输出到JSP页面中。
10.3.8 JSP指令(2) 
1.Include指令
该指令用于包含一个文本或代码的文件。
JSP语法:
例子:

random.jsp中的随机显示的数为:


random.jsp文件中内容为:

在页面中显示为:
random.jsp中的随机显示的数为: 2148.093521070482
描述
Include指令在JSP文件中插入一个包含文本和代码的文件。被包含的文件可以是JSP文件,HTML文件或文本文件。如果被包含的文件是JSP文件,则JSP引擎编译完该JSP文件后,执行的结果将插入到主JSP文件中Include指令所在的位置。如果被包含的文件是HTML文件或文本文件,则JSP引擎不对其进行编译,直接将其内容插入到主JSP文件中Include指令所在的位置。该包含是静态包含,即被包含的文件处理完,而且结果也插入到主JSP文件完毕,主JSP文件将继续执行include指令下面的内容。
注意:
(1)被包含的文件中不能含有,,,或标签。因为被包含的文件的全部内容将被插入到JSP文件中include指令所在的地方,这些标签将会同JSP文件中已有的同样的标签发生冲突。
(2)假如被包含的文件发声变化,主JSP页面将被重新编译。
属性:
file="relativeURL"
file是被包含文件的路径名。 其值是一个URL的一部分,没有协议、端口号或域名. 如:
"error.jsp"
"/templates/onlinestore.html"
"/beans/calendar.jsp"
如果相对URL以"/"开始,这个路径是相对于JSP应用上下文而言的,JSP应用上下文是存储在application对象中的javax.servlet.ServletContext对象。如果相对URL以目录或文件名开始,这个路径是相对于当前JSP文件所在的路径而言的。
2. Page 指令
定义整个JSP页面的全局属性。
JSP语法:

例:




描述:
Page指令的作用范围是整个JSP文件和该JSP文件用include指令或包含进来的任何静态文件,整个JSP文件和这些静态文件一起叫做一个"平移单元". 注意:Page指令不适用于任何动态的包含文件。你可以在一个"平移单元"使用多个Page指令。但是每一个属性你只能使用一次,除了import(因为import属性和JAVA程序语言的import语句很类似,你能够多次使用它,就象在JAVA语言中你能够多次使用import命令一样)。不论你将Page指令放到JSP文件或被包含的文件的任何一个位置,它的作用范围都是整个"平移单元".然而,一个好的编成风格是常常将它放到文件的顶部.
language="java"
在JSP文件的脚本段、声明和表达式中使用的语言。现只允许用"JAVA"。   extends="package.class"
该属性用于指明JAVA类文件超类全名。使用该属性时要小心,因为,它会限制JSP引擎编译文件的能力。   import= "{ package.class | package.* }, ..."
JSP文件中导入的一个或多个用逗号隔开的包的列表。这些包(和它们的类)可以在JSP文件的脚本段、表达式、声明和标签中使用。你必须将import属性放到调用被到入的类的标签前面。如果你想导入多个包,你可以在import后面用逗号将每个包隔开即可,或你可以在一个JSP文件中使用多个import.   session="true|false"
该属性用于确定JSP页面是否使用HTTP session.假如这个值是true, 则sesssion引用的是当前或新的session. 假如这个值是false,则在JSP文件中,不能使用session对象。默认值是true.   buffer="none|8kb|sizekb"
设置buffer缓冲区的大小,当out对象将被编译的JSP页面向客户Web浏览器端输出时使用。它的默认值是8kb.假如你指定了buffer缓冲区的大小,这个输出量将不低于你指定的大小。   autoFlush="true|false"
该属性指出:当缓冲区充满时,是否自动刷新。如果值为true(默认值为true),则自动刷新。如果值为false,则当缓冲区溢出时,将会产生错误。而且如果buffer属性的值设为none,autoFlush属性的值不能设为false.   isThreadSafe="true|false"
假设这个值设为true,多个线程能同时访问一个JSP页面。假如这个值为false,对一个JSP页面,JSP引擎一次只能响应一个用户的请求。默认值为true。   info="text"
关于作者、版本和著作权等信息,可以通过javax.sevlet.Servlet.getServletInfo()方法查到该信息的详细情况。   errorPage="relativeURL"
该属性用于设置处理例外事件的JSP文件的路径名。假如这个路径名以"/"开始,则这个路径名是JSP应用文档根目录而言的,而且由Web服务器决定。否则,这个路径是相对于当前JSP文件而言的。   isErrorPage="true|false"
JSP文件是否显示错误页面。 如果这个值为true,你可以使用例外exception对象。如果这个值为false(默认值也为false),在JSP文件中,不能使用exception对象。   contentType="mimeType [ ;charset =characterSet ]" |
"text/html;charset=ISO-8859-1"
JSP文件中使用的MIME type和character encoding(字符编码)是用于响应客户端的请求。你可以使用JSP引擎中有效的任何MIME type或character set(字符集).默认的MIME type是text/html,而且默认的字符集合是ISO-8859-1。 3.元素
将客户端的请求转交给一个HTML文件、JSP文件或脚本段处理。
JSP语法:
例子:

描述:
标签将请求对象从一个JSP文件转交给另一个文件处理。
特别注意:JSP引擎对主JSP页面下面的代码不再执行。
说明:如果JSP文件的输出被设置为缓冲输出(即使用默认的Page指令值或直接设置缓冲区的buffer大小),则在请求被转交之前,缓冲区被清空。如果输出被设置为非缓冲输出(即用Page指令设置buffer=none),而且输出区中已经有内容,则使用元素,将会导致非法例外。
属性   page="{ relativeURL | }"
该属性用于设置将要转交的文件的相关URL.
该URL不能包含协议名、端口号或域名,相对于当前JSP文件来说的。如果它是绝对地址(以"/"开始),该路径由你的Web或应用服务器决定。 4.
取得Bean属性的值,以便在结果页面中显示。
JSP语法:
例:
Bean的程序代码为:
package AccessDatabase;
public class Readdate
{
private String username="changcheng";
public String void getUsername(){return username; }
}
JSP文件的内容为:


从Bean中取得属性名为username的值为:


执行后显示结果为:
从Bean中取得属性名为user的值为:changcheng
描述:
在使用前,你必须使元素创建或调用一个Bean实例。标签是用于取得JavaBeans属性值,相当于调用Bean中的某个属性的getXXX()方法。
属性:
name="beanInstanceName"
标签中声明的Bean实例的名字。
property="propertyName"
Bean属性的名字。
说明:使用元素时如上例中:,username必须是Bean(Readdate)中的属性,且该Bean中要有getUsername()方法,否则编译时会出错。 5.
在JSP文件中,包含一个静态或动态文件.
JSP语法
例子:



属性:
标签允许你包含一个静态文件或动态文件。一个静态文件被执行后,它的内容插入在主JSP页面中。一个动态文件对请求作出响应,而且将执行结果插入到JSP页面中。
标签能处理两种文件类型,当你不知道这个文件是静态或动态的文件时,使用该标签是非常方便的。
当include动作执行完毕后,JSP引擎将接着执行JSP文件剩下的文件代码。   page="{ relativeURL | }"
该属性指出被包含文件相关URL;该URL不能包含协议名、端口号或域名。该URL是绝对或相对于当前JSP文件来说的。如果它是绝对地址(以"/"开始),该路径由你的Web或应用服务器决定   flush="true"
在JSP文件中,常设置flush="true",因为它不是一个默认值。 6.
下载一个plugin插件到客户端以便执行applet或Bean
JSP语法:

type="bean|applet"
code="classFileName"
codebase="classFileDirectoryName"
[ name="instanceName"]
[ archive="URIToArchive, ..." ]
[ align="bottom|top|middle|left|right" ]
[ height="displayPixels"]
[ width="displayPixels"]
[ hspace="leftRightPixels"]
[ vspace="topBottomPixels"]
[ jreversion="JREVersionNumber | 1.1"]
[ nspluginurl="URLToPlugin"]
[ iepluginurl="URLToPlugin"]>
[
[ ]+
]
[ text message for user ]

例子:





Unable to load applet




元素在计算机启动时,给applet或Bean传递参数及其值。如果plugin没有启动,〈jsp:fallback>元素将给使用者提供一条信息。如果plugin启动了但是applet或Bean没有启动,plugin常常弹出一个window窗口,该用户解释出错的原因。
属性:
type="bean|applet"
   plugin将执行的对象的类型。你必须指定Bean或applet,因为这个属性没有默认值。   code="classFileName"
plugin将执行的JAVA类文件的名字。在文件名后面必须跟上.class扩展名。文件名是相对于codebase属性中命名的目录。   codebase="classFileDirectoryName"
包含applet代码的目录名的相对或绝对地址。如果没有提供该值,调用的JSP文件的路径将被使用。   name="instanceName"
Bean或applet实例的名字,相同的JSP文件通过它可以相互通信。   archive="URIToArchive, ..."
一个用逗号隔开的路径列表,该路径列表指出用类装载器装载的类文件的位置。类装载器是位于codebase属性中命名的目录。   align="bottom|top|middle|left|right"
applet或Bean中显示的图象的位置是相对于JSP结果页面中的这样的行来说的,该行是JSP文件中包含的行。不同值的显示结果如下:
bottom使图象的底部与下一文本行的基线对齐。
Top使图象的顶部与下一文本行的顶部对齐。
Middle使图象的垂直中心与下一文本行的基线对齐。
Left使图象左对齐.
Right使图象右对齐.   height="displayPixels" width="displayPixels"
applet或Bean以像素为单位显示的初始高度和宽度,不包括applet或Bean弹出的任何窗口和对话框.   hspace="leftRightPixels" vspace="topBottomPixels"
applet或Bean以像素为单位显示的图象的左右(或上下)之间间距的大小。一般是一个非常小的非零值。
jreversion="JREVersionNumber|1.1"
applet或Bean要求的JAVA运行时环境(JRE)的版本。默认的值是1.1   nspluginurl="URLToPlugin"
用户使用Netscape Navigator浏览器时需下载JRE插件的URL。它是完整的URL地址,有协议名、端口号和域名。   iepluginurl="URLToPlugin"
用户使用Internet Explorer浏览器时需下载JRE插件的URL.它是完整的URL地址,有协议名、端口号和域名。   [ ]+
传递给applet或Bean的参数和值。为了传递多个参数和值,你可以在〈jsp:params>元素中使用多个标签. Applets取得参数是通过java.applet.Applet.getParameter方法。    text message for user
如果plugin插件不能使用时,显示给用户的文本信息  7.
设置Bean的一个或多个属性值。
JSP语法:

{
property= "*" | property="propertyName" [ param="parameterName"] | property="propertyName" value="{ string | }"
}
/>   例子:



属性:
标签用于设置JavaBean组件中的属性值。在你使用元素前,你必须使用标签  声明这个Bean.在中的name的值必须和在〈jsp:useBean>中的id的值一致.
一般设置属性的值有三中方法:
(i)使用方法 ,即可将用户请求中的所有值(这些值一般是客户  表单中的元素的值,且作为参数存储在request对象中)和Bean中的相匹配的属性赋值。此时,Bean中属性的名字必须和客户端表单中元素的名字一样。

(ii)使用方法, 用请求对象中一个特定的值和Bean中相匹配的属性赋值或不相匹配的属性赋值。
(iii)使用方法,用字符串的值或表达式的值直接设置为Bean的属性
属性和用法: name="beanInstanceName"
标签中被创建或调用的Bean的实例名. Name的值必须和中的id的值一致。   property="*"
该属性用于一次性设置Bean属性的值。客户端表单中元素的值一次性赋予Bean中相匹配的属性赋值。另外,如果Bean有一个属性没有和它对应的表单元素,则这个属性将不被设置。   property="propertyName" [ param="parameterName"]
当用表单中一个元素的值给Bean中一个属性赋值,而且元素名和属性名不一样时,则必须用param指定一个参数。  8.
调用或创建一个指定名字和使用范围的Bean.
JSP语法:

id="beanInstanceName"
scope="page|request|session|application"
{ class="package.class"| type="package.class"|
class="package.class" type="package.class"|
beanName="{ package.class | }" type="package.class"
}
{ /> |
> other tags

}   例子:




  属性:
标签首先调用一个指定的名字和使用范围的Bean,如果这个Bean不存在,则创建该 Bean。
属性和用法   id="beanInstanceName"
被调用或创建的Bean的名字.你可以在JSP文件的表达式、脚本段中使用该变量名。如果该Bean已经被另一个创建,id值必须同原来的标签中使用的id号相同.   scope="page|request|session|application"
定义Bean存在的范围。默认值是page。Bean的必须在其指定的范围内使用,否则使用它,将会出错。   class="package.class"
指定Bean的存放位置即存在哪个包中的哪个类。该类不能是抽象类,而且有一个公共的、无参数构造函数。包和类名是严格区分大小写的。   class="package.class" type="package.class"
类型type的值可以和类、该类的超类或该类实现的接口的类型一样。 以上就是编写JSP要用到的一些语法,读者不必也不可能一下子掌握,在需要的时候进行查询即可,在使用中会自然而然的熟练起来。
10.3.9 JSP中的隐藏对象(1)
由于JSP是嵌入式的语言,不能显式的把一些必须的参数传递进来,比如Request对象,Response对象等,所以在JSP规范中提供了几个隐含的对象来实现折椅功能。所谓隐含的对象,就是大家约定好使用一个名字来指代某个特定的对象,在编写JSP的时候不用显式的声明就能使用,由JSP引擎负责在解释的时候把隐含对象加入到解释完的.java文件中。常用的隐含对象有application, session, request, response, out, page, exception, pageContext。
1.session对象
前面在Servlet部分已经提到,过当客户第一次访问Web服务器发布目录(一个Web服务器有一个或多个"发布目录")下的网页文件时,Web服务器会自动创建一个session对象,并为其分配唯一的ID号,客户可以将其需要的一些信息保存到该session对象,以便需要时使用。session对象就是指通过getSession法办法得到的对象,在JSP中是隐含对象,关于session对象的使用读者可以参见Servlet API 2.application对象
当Web服务器启动时,Web服务器会自动创建application对象。Application对象一旦创建,它将一直存在,直到Web服务器关闭。因此,application对象可以实现多客户间的数据共享。
一个Web服务器常常有多个发布目录,当Web服务器启动时,它自动为每个发布目录都创建一个application对象,这些application对象各自独立,而且和发布目录一一对应。
application的生命周期:从Web服务器启动到Web服务器关闭。
application在生命周期内的作用范围:在同一个发布目录A下的所有网页文件中,都可以对"和发布目录A对应"的application对象进行操作,而且访问发布目录A的所有客户都共用一个application对象。因此,当在该application中存放数据信息时,所有访问该发布目录A的客户都能够对其进行访问,实现了多客户之间的数据共享。
application对象的基类是:javax.servlet.ServletContext类。可以用该类中的getServletContext()方法取得application。具体的使用方法参见Servlet API。  3.request对象
request对象主要用于取得客户在表单中提交的数据信息及多个网页之间数据信息传递等。同时通过它也可以取得Web服务器的参数。跟Servlet参数中的Request对象是相对应的。
request对象的基类为:javax.servlet.ServletRequest
如果传输协议是http,则是javax.servlet.HttpServletRequest
具体的使用方法参见Servlet API。  4. respose对象
respose对象主要用于向客户端输出信息,响应客户端的请求。跟Servlet参数中的Response对象是相对应的。
respose对象的基类是:javax.servlet.ServletResponse
如果传输协议是http.则为javax.servlet.HttpServletResponse.
具体的使用方法参见Servlet API。  5.out对象
out对象用于向客户端输出数据。
out对象基类是:javax.servlet.JspWriter类,跟Servlet中由HttpServletResponse得到的PrintWriter略有不同,但是都是从
Writer继承而来,所以基本上还是一样的。
具体的使用方法参见Servlet API。  6.page对象
page对象是当前JSP页面本身的一个实例。它的类型是:java.lang.Object。
其方法就是Object类中的方法。如:Class getClass()返回一个对象在运行时所对应的类的表示,从而可以得到相应的信息。String toString()返回当前对象的字符串表示。page对象在当前页面中可以用this代替。
7.exception对象
当JSP页面在执行过程中发生例外或错误时,会自动产生exception对象。
在当前页面用设置后,就可以使用该exception对象,来查找页面出错信息。
exception对象的类型是:java.lang.Exception类.
exception对象的常用方法为:
String getMessage()
返回页面的出错信息,如果没有则返回null
void printStackTrace()
以标准错误输出流的形式,打印并显示当前exception对象及其执行轨迹.
10.4 JSP和Servlet的结合使用
在使用JSP技术开发网站时,不强调使用Servlet。,这是为什么呢?Servlet的应用是没有问题的,它非常适合服务器端的处理和编程。但是如果用Servlet处理大量的HTML文本,那么将是一件及其繁琐的事情。这种事情更适合机器去做,否则就是浪费程序员的体力。所以Servlet更适合处理后端的事务,前端的效果用JSP来实现更为合适。
早期的JSP标准给出了两种使用JSP的方式。这些方式都可以归纳为JSP模式1和JSP模式2,主要的差别在于处理大量请求的位置不同。在模式1中,JSP页面独自响应请求并将处理结果返回客户。这里仍然有视图和内容的分离,因为所有的数据都依靠bean来处理。尽管模式1可以很好的满足小型应用的需要,但却不能满足大型应用的需要。大量使用模式1,常常会导致页面被嵌入大量的Script和Java代码。特别是当需要处理的商业逻辑很复杂时,情况会变得很严重。也许这对于Java程序员来说,这不是大问题。但是如果开发者是前台界面设计人员,在大型项目中,这是很常见的,则代码的开发和维护将出现困难。在任何项目中,这样的模式多少总是会导致定义不清的响应和项目管理的困难。下图是模式1的示意图:  JSP模式2是一种面向动态内容的实现,结合了Servlet和JSP技术。它利用两种技术原有的优点,采用JSP来表现页面,采用Servlet来完成大量的处理,Servlet扮演一个控制者的角色,并负责响应客户请求。接着,Servlet创建JSP需要的Bean和对象,再根据用户的行为,决定将哪个JSP页面发送给用户。特别要注意的是,JSP页面中没有任何商业处理逻辑,它只是简单的检索Servlet先前创建的Beans或者对象,再将动态内容插入预定义的模板。
从开发的观点来看,这一模式具有更清晰的页面表现,清楚的开发者角色划分,可以充分的利用开发小组中的界面设计人员。事实上,越是复杂的项目,使用模式2的好处就越突出。
使用模式2,JSP和Servlet可以在功能最大幅度的分开。正确的使用模式2,导致一个中心化的控制Servlet,以及只完成显示的JSP页面。另一方面,模式2的实现很复杂,因此,在简单应用中,可以考虑使用模式1。下面是模式2的示意图: 在Web的建设中到底使用哪一种模式是很重要的事前规划,只有积累了大量的经验才能作出正确而有效的选择。总之网站建设不光是技术的问题,总体的规划是很重要的,读者在学习JSP和Servlet的同时更应该注意从中吸取思想的精华,技术是会过时的,而思想却是永远有价值的。

  • 转载请注明来源:IT学习者 网址:http://www.itlearner.com/



2010年9月29日水曜日

どうやって日本で中国の映画かドラマが見えます

答え:

中国が「优酷」や「土豆」などのビデオサイトがあります。

proxyを使って中国のIPをはいてその映画かドラマが見えます。

注意するポイント:
法律を守って見てください。

中国は十年以内アジアで一番大きな留学生の目的地になりたい

中国の教育省の公開した「中国で留学する計画」によると、2020年まで、中国はアジアで一番大きな留学目的地になるために頑張るつもりことが分かります。

「中国で留学する計画」はペキンで行った中国で留学する会議で世界に公開されました。その会議は中国の外国人の中国で留学するために第四回の会議なんです。

「中国で留学する計画」の目標は2020年まで、全国で大陸の大学と高校と中学の中で外国の留学生の人数は50万人以上になることです。

1950年に中国の始めいてとうヨーロッパの留学生を受けたことから、60年間中国もう外国の留学生を169万人うけた。最近、中国の国の力が増えると中国政府もう中国で留学することを注意してます。留学生の選択学校と専門もうだんだん多くなっています。

北京大学
清華大学

转载——360对腾讯发出恐吓 隐私保护器被指QQ抹黑器

鉴于有同感,故在此转载,版权归原网站所有
说起奇虎公司可能有的人不知道,但它旗下的360安全卫士却是路人皆知。借助360安全卫士,奇虎由一家论坛聚合网站变身成网络安全厂商。随着用户量的增长,奇虎公司的胃口也越来越大,在行业内四处出击,中国互联网几乎所有有影响的企业都曾经或正在遭遇奇虎的进攻。现在,“360”又将矛头指向了腾讯,用一款名为“隐私保护器”的产品向腾讯宣布开战。
微软记事本也能窥探用户隐私?
360对腾讯发出恐吓 隐私保护器被指QQ抹黑器
将微软记事本改为qq.exe后,保护器会告诉你记事本也在窥探你的隐私
用户下载到的360隐私保护器明确只针对QQ进行隐私扫描。令人不解的是,虽然它宣称QQ触及了用户的隐私文件,但却没有给出任何“保护”措施。更可笑的是,把任何一款可执行文件改名为QQ.exe 再运行,360都会对之进行“监控”,并煞有介事地给出该程序所触碰的文件名单。结果有用户发现,微软记事本、Office都落下了嗅探用户隐私的莫须有罪名。
对于360的这种行为,腾讯做了低调声明,表示是为保护用户网络账户和虚拟财产安全而进行的安全扫描,绝无窥探用户隐私。
“近年来互联网安全环境正在日益恶化,并出现众多针对QQ的盗号木马,直接威胁到广大用户的网络账户与虚拟财产安全。为更好地保护用户账号安全,腾讯QQ不断强化安全特性,对QQ用户上网环境加强安全检测,以预防木马盗号。”
9月27日,有媒体报道《360 新推软件指QQ侵犯隐私》。“文章中提及的所谓‘隐私扫描’内容,是对QQ安全功能的误解,我们在此强调,腾讯QQ软件绝对没有窥探用户隐私的行为,也绝不涉及任何用户隐私的泄露。”
腾讯在官方声明中透露,目前QQ安全检测模块日均清除盗号木马170 万个,拦截恶意攻击日均超过1500万次,有效保护了QQ用户的信息安全。该报道对用户具有误导性,因此,腾讯公司“特此声明,以正视听”。
互联网安全专家、安天实验室技术负责人肖新光认为,“很多客户端都会有搜索、查看客户硬盘文件的行为,比如杀毒软件要检测病毒、媒体播放器要生成媒体库,都必然要读文件。”360这种随意给QQ定性的行为,在专家看来颇为莫名其妙。
仓促出炉可能构成不正当竞争
360对腾讯发出恐吓 隐私保护器被指QQ抹黑器
将360 浏览器改为qq.exe,同时将属性做如图修改
360对腾讯发出恐吓 隐私保护器被指QQ抹黑器
启动隐私保护器后,将发现360 浏览器也在窥探你的电脑文件。
据业内人士分析,360突然针对腾讯推出这样一个隐私保护器,也许并非出于对用户隐私的关心,而是由于腾讯中秋期间大面积升级了QQ电脑管家,使360感受到巨大威胁,才因此铤而走险。
QQ电脑管家是腾讯公司出品的一款安全软件,除通常的网络安全防护和软件管理功能外,还提供软件搬家、硬件检测、QQ账号保护等全新功能。尽管这款产品面世时间不长,但由于功能新颖实用,对360安全卫士形成了后来居上的态势。而360通过购买杀毒引擎等方式在安全市场耕耘数年,已经把安全产业当成了自己的“自留地”。现在腾讯挟强大的客户端优势来袭,360当然要全力反扑。
网友李铁军(微博)发布微博称:“有网友试着将记事本改名为QQ.exe用360的隐私保护来监测,结果是:记事本在窥视隐私……”网友博盛也做了相应的实验,其报告称“在一台没有qq的电脑上,把系统自带的notepad.exe(记事本)改名为qq.exe,运行此程序,点击‘打开’菜单,此时,360隐私保护器就报150个文件被偷窥! 记事本也偷窥用户隐私? 大家再用word 改名看看,效果更明显!”这样一看,这款软件其实是一款“QQ抹黑器”。甚至更有网友担心,在下载使用所谓的隐私保护器后,自己电脑里的隐私反倒更有泄露风险。
但这款仓促上线的软件,也许伴随着不小的法律风险。知名律师于国富(微博)分析,“目前360与腾讯之间在某些产品上存在针锋相对的竞争关系,是同业竞争者。如果360为了市场竞争需要,故意通过此款定制软件抹黑腾讯QQ,以达到诋毁竞争对手及其产品的目的,获取不当的竞争优势,很可能构成不正当竞争”。自己所有行动的解释通通是“为用户着想”,因此有网友无奈调侃道,“求求你了,别为我着想。”
360对腾讯发出恐吓 隐私保护器被指QQ抹黑器
将飞信改为qq.exe 后,会显示飞信也在窥探隐私。
网友调侃:“求求你了,别为我着想”
搜狐CTO王小川在接受采访时表示:“保护隐私受大家欢迎,但关键是要有公平的态度,对360是否出于其他目的有担忧。”王小川称,保护用户隐私需要公信力,未来呼吁政府做这件事,而不是公司之间“打打杀杀”。
众所周知,部分安全厂商惯用“安全恐吓”来占领用户桌面,并藉此在互联网上获得难以企及的产品影响力和话语权。这和早期新浪用媒体的声音、后来百度用流量的管道来获得的影响力和话语权不同,一家过于强横的安全厂商,将直接卡住每一个竞争对手或者合作伙伴的命脉。
这个世上当然不会有完美的产品,每一个软件产品或者互联网产品都难以100%地避免出现bug。可以想见,如果届时360 对某次bug突然弹出窗口,说某家勇于创新的公司产品“可能”有安全隐患,这对于一款产品来说绝对是灭顶之灾,对那些初出茅庐的小公司来说,更是万劫不复。
安全恐吓,当然是一种道德审判的“大杀器”,一旦某公司把这种武器用的得心应手起来,互联网上谁的日子就都不会好过。不能犯错、交认证费才能活下去、不能跟某安全厂商麾下任何产品有竞争、必须毕恭毕敬,这样的市场环境持续下去, 中国互联网难有未来。
不久前可牛免费杀毒上线刚刚几分钟时间,就遭到360安全卫士的“云拦截”,粗暴阻止用户安装使用。据悉,360拦截可牛杀毒方法在于:360客户端只判断文件是否为可牛杀毒, 是否拦截的命令由服务端随时发送。可牛杀毒负责人傅盛(微博)指出:“这样360 能做到想拦就能随时拦, 竞争对手怎么躲避也躲避不了;随时想不拦就不拦,一声令下之后,全中国谁也看不到拦截框。”著名IT评论人Keso 感慨,“中国人的大多数聪明才智,都用在打击对手上了。”
此前,以安全之名,360与金山、瑞星、可牛、遨游浏览器等同行企业打了无数口水官司,而无辜用户的电脑也沦为各方厮杀的战场。当然,“专业”安全厂商对自己所有行动的解释通通是“为用户着想”,因此有网友无奈调侃道,“求求你了,别为我着想。”

今日新四期生と東北大学の皆さんのパーテイ

今日新四期生と東北大学の皆さんのパーテイでした。

始めいて日本で水の餃子を食べました。

中国の料理は世界でも一番美味しいですね。

日本語の祝い言葉

メールを書くとき、いい言葉。
お祝い言葉。

祝贺祝愿
90、おめでとうございます。
恭喜,恭喜。
91、心からお祝(いわ)い申し上げます。
由衷地祝贺你。
92、あけましておめでとうございます。
新年好!
93、母の日おめでとうございます。
母亲节好!
94、メリークリスマス。
圣诞快乐。
95、お誕生日(たんじょうび)おめでとうございます。 
生日快乐。
96、ご成婚(せいこん)おめでとうございます。
新婚愉快。
97、ご卒業(そつぎょう)おめでとう。 
恭喜你毕业。
98、ご成功(せいこう)おめでとうございます。
恭喜你取得成功。
99、開業(かいぎょう)おめでとうございます。
100、ご一家(いっか)の幸(しあわ)せをお祈(いの)りします
祝你合家幸福。
101、健康(けんこう)をお祈りします。 
祝你健康。
102、一層(いっそう)のご活躍(かつやく)をお祈りします。
祝你工作顺利。
103、私どもの協力(きょうりょく)が発展(はってん)しますように。 
祝我们合作顺利。

2010年9月28日火曜日

也说关于《360新推软件指QQ侵犯隐私》的声明

今日360又把矛头指向腾讯了。

忽然想到的是疯狗战略……

我心目中的IT企业是有层次的:
Google,微软,腾讯,卡巴这是第一层次的。
360,是第三个层次的。


你们不要越级指责好不好……

当然,我很喜欢360,自己的电脑一直安装的有。可是这一次360有点过了吧

2010年9月26日日曜日

内存的分类和介绍


根据内存的工作原理可以划分出两种内存:DRAM和SRAM
          ①DRAM表示动态随机存取存储器。这是一种以电荷形式进行存储的半导体存储器。DRAM中的每个存储单元由一个晶体管和一个电容器组成。数据存储在电容器中。电容器会由于漏电而导致电荷丢失,因而DRAM器件是不稳定的。为了将数据保存在存储器中,DRAM器件必须有规律地进行刷新。 
          ②SRAM是静态的,因此只要供电它就会保持一个值。一般而言,SRAM 比DRAM要快,这是因为SRAM没有刷新周期。每个SRAM存储单元由6个晶体管组成,而DRAM存储单元由一个晶体管和一个电容器组成。相比而言,DRAM比SRAM每个存储单元的成本要高。照此推理,可以断定在给定的固定区域内DRAM的密度比SRAM 的密度要大。 
           
          SRAM常常用于高速缓冲存储器,因为它有更高的速率;而DRAM常常用于PC中的主存储器,因为其拥有更高的密度。 

Flash的分类与特点

Flash的分类列举如下:
          闪存分三类:并行,串行,不可擦除。
          ①并行Parallel flash
           NOR
          Flash,Intel于1988年发明.随机读取的速度比较快,随机按字节写,每次可以传输8Bit。一般适合应用于数据/程序的存贮应用中.NOR还可以片内执行(execute-in-place)XIP.写入和擦除速度很低。
           NAND
          Flash,1989年,东芝公司发明.是以块和页为单位来读写的,不能随机访问某个指定的点.因而相对来说读取速度较慢,而擦除和写入的速度则比较快,每次可以传输16Bit,一般适用在大容量的多媒体应用中,容量大。如:CF,SM.
          ②串行Serial Flash 是以字节进行传输的,每次可以传输1-2Bit.如:MMC,SD,MS卡.串行闪存器件体积小,引脚也少,成本相对也更低廉。 
          ③不可擦除Mask Rom Flash的特点是一次性录入数据,具有不可更改性,经常运用于游戏和需版权保护文件等的录入。其显著特点是成本低。 
          注意:任何flash器件的写入操作只能在空或已擦除的单元内进行,所以大多数情况下,在进行写入操作之前必须先执行擦除。NAND器件执行擦除操作是十分简单的,而NOR则要求在进行擦除前先要将目标块内所有的位都写为0。

2010年9月25日土曜日

もう入学しました

今日四期生たち一緒に京都で入学式を参加しました。

立命館大学の学長川口清史もう出席しまた。

後は入学の手伝い。もう日本に来た半年ぐらいですので、そのことは私たちの関係が全然ありません。

ごご一時間半その手伝いじっと終わりました。私のお腹は2時間前からもうすきています。

後南草津へ帰りました。

でも、新四期生の自転車はほかのマンションで止まったのは法律違反ですから。1万円の罰金をされました。残念ですね。

もう係員に連絡したのに担当者はいないでした。それから、皆は後で連絡するしか何もできません。

西装的穿着常识

本文来自网络,作为笔记而用:



一、西装的穿着常识


西装要穿着合体、优雅、符合规范。打领带时,衣领的扣子一定要系好,领带一定要推到领扣的上面,下端尽量不要超过腰带,冬天穿毛衣、毛背心,领带要放在毛衣、毛背心的里面。如果别领带夹,应在衬衣第二、三纽扣之间,千万不要别在领口。如果不系领带,应把领口解开,不要让人觉得是忘记打领带,衬衣领也可翻到西服外面。

一般西服是两个扣子,应记住:扣子只系上面是正规,都不系是潇洒,两个都系是土气,只系下面是俗气。如果三粒扣子,则第一个和第三个是样扣,只应扣中间一粒或都不扣。

西装领上有个“美人眼”,指在西装左侧的翻领上有一个扣眼,而在右侧的领子上则没有相应的扣子。也有人称这个扣眼为“花眼”。西方人通常在这个扣眼上插一朵鲜花,或者别上一枚别针、徽章之类的饰品以示雅观。

西装左胸口袋只起装饰作用,不能像穿中山装那样用来插钢笔、装钱包、放证件。钢笔应放在西装马甲的左胸口袋内,如果不穿马甲,则应插在西装里面的口袋里。钱包、证件也应放在西装里面的口袋里。

穿着西装,常常用手帕卷成各种花型露出在上衣装饰袋上,所以这个口袋又叫“手巾袋”。手帕成方形,边长约20厘米,不能太大 。颜色应随西装而变化,深色服装宜配浅色手帕,浅色服装应配深色手帕。

衬衣应放在裤子里面,领子、袖口应露在西服外面1厘米。夏天即使没有外衣,也要注意不要把衬衣袖子卷起来。

穿西装要走有走相,站有站相,不能把双手插在西装上衣口袋里,如果一定要把手插在口袋里的话,应插在裤兜里。

二、男西服穿着常识


本站内容请务必标明摘自成都服装厂并加上链接★

西服上衣袖子应比衬衫袖短1-3厘米,千不要忘记摘除袖口的商标。西服的上衣、裤子袋内不能鼓鼓囊囊。双排扣西装一定要全部扣上,单排双扣扣上面一颗或全部不扣,单排三扣扣中间一颗或全部不扣,单排四扣扣中间两颗。

领带颜色应和谐不可刺目,一般领带长度应是领带尖盖住皮带扣。领带夹的位置放在衬衫从上往下数的第四粒钮扣处,西服扣上扣子后应看不到领带夹。

衬衫领子不能太大,佩戴领带一定要扣好衬衫扣,领脖间不能存在空隙。

标准的西裤长度为裤管盖住皮鞋,手不能常插在裤袋内。皮鞋和鞋带、袜子颜色应协调,袜子的颜色应比西服深。



三、女西服穿着常识





女西服没有固定穿着格式,穿着时需注意无论哪种西装,首先要穿着合体,女西服套装应能突出女性的体型美,具体参见体型与服装的配合。
一般女西服最好选择质地较好的纯毛面料。西服上装与下装不一定穿颜色相同,只要颜色和谐就行。
女士穿西服需要考虑年龄、体型、肤色、气质、职业等特点。年龄较大或较胖的女性可穿一般款式的西服。
女西服穿着还要注意服装与服饰的和谐。可选择飘带领的顺色衬衫;里边穿高领毛衣时,还可以配戴精巧漂亮的胸花。应避免看到里面多件保暖衣。
此外,还要注意皮鞋、皮包的式样、颜色与西服颜色的搭配,并辅以优美大方的发型。

四、西装穿着常识20条

2009.9.9

西服本身具有严谨的结构和特有穿着规则,不同于其它便服可以“随乡入俗”。以下是穿西服应注意的细节。
1、西服通常要求和配套的西裤搭配,不要将不成套的西服和西裤混穿,尤其不要穿着深色西服搭配浅色西裤。
2、西服的做工和布料都不能差,否则不如不穿。
3、穿西服一般应该打领带。领带是西服的表情,如果是在不太严肃的场合,领带的花色可以活泼些。如果在不重要的场合而不打领带,那么衬衫的第一粒纽扣应该打开,切忌扣上。
4、西服不允许与正式衬衫之外的其他内衣搭配。衬衫下摆要放入裤子里,衣领要比西服领高出2cm以上,衬衫的袖口必须露出于上装袖口1~1.5cm。
5、从上装的后领必须能看见衬衫露出1.5~2cm。如果是按规定露出,这就能证明领圈部和肩胛骨处很服贴,看上去会给人一种端正、清洁的感觉。
6、穿着深色西服出门时,别忘了清除衣服上沾有的白色毛屑,一卷粘胶带也许能帮上您的大忙,专用的工具自然更好。
7、西服胸前的胸袋是装饰性的,不要剪开。衣袖上的商标在买到西服时就应当剪掉了。
8、穿着西服不允许卷起衣袖,那样象工作服了。
9、上装衣兜兜盖在一般的场合下通常以翻出来为好。上衣、裤子袋内不能鼓鼓囊囊。

10、穿一粒扣西装时,根据场合正式与否,决定是否系扣。穿两粒扣西服时,系上面一粒扣表示郑重,不系扣表示气氛随意。穿三粒扣西装时,如果是出席重要场合或是拍照,应系上面2粒。坐下工作或用餐时或户外活动时,可以解开衣扣,显示出融洽的气氛。穿双排扣西服站立时应将纽扣全部全部扣上,并且不得内穿背心。
11、上装的驳口、衬衫的领、领带的宽度,这三者的尺寸必须协调,不要有太大差距。比如:穿窄驳头西服配大尖领衬衫或宽领带,就显得极不协调。

12、第一粒钮扣部分的驳口,最好自然随意地翻出,没有折线。

13、领带的下端不可以从西服的从摆缝中露出来。一般领带长度应是领带尖盖住皮带扣。如果领带过长,则可以把领带下端长的部分塞进裤腰里。
14、穿西服最好不要穿毛衣,如果天气冷,可以穿一件“V”领的羊毛衫在衬衫里面,但不穿最好。可在西服外面加穿大衣以御寒。

15、西裤的长度是以裤管轻轻自然地盖在鞋面上为基准。长度以人笔直站着时,前摆缝轻轻碰到鞋面并稍微有一点向前折皱为最合适的。现在国际上是以盖住半个鞋后跟为主流。
16、西裤的臀部处不应出现烫缝。西裤的中缝经过整烫会给人一种挺拔精干的感觉,但是最好烫到臀部以下。因为烫缝延伸到臀部后,会影响腿的美观度。

17、配套西装的袜子一定要是正装袜,颜色与西服同色或近似色。千万不要是白色,也不要太短。
18、穿西服要注意整体形象的整洁,头发要打理干净,不要让西装上粘上头屑。
19、要注意皮鞋、皮包的式样、颜色与西服颜色的搭配。
20、穿西装要根据时间、地点、环境来穿衣。同时,穿着西服时还要注意自己语言要美、行为要美、姿态要美,那么西装在身上会显示大度、热情奔放的风度。

五、西装衬衣搭配常识

2008.8

1、衬衫款型要分清。正式场合配穿西装或礼服时,应选穿内穿型衬衫;衬衫穿在夹克衫或中山装里面时,以内穿型最好,内外兼穿型次之。当衬衫仅作外衣穿着时,外穿型或内外兼穿型是比较适当的选择。

2、正规场合应穿白衬衫或浅色衬衫,配之以深色西装和领带,以显庄重。

3、衬衫袖子应比西装袖子长出一厘米左右,这既体现出着装的层次,又能保持西装袖口的清洁。

4、当衬衫搭配领带穿着时(不论配穿西装与否),必须将领口钮、袖口钮和袖*钮全部扣上,以显男士的刚性和力度。

5、衬衫领子的大小,以塞进一个手指的松量为宜。脖子细长者尤忌领口太大,否则会给人羸弱之感。

6、不系领带配穿西装时,衬衫领口处的一粒钮扣绝对不能扣上,而门襟上的钮扣则必须全部扣上,否则就会显得过于随便和缺乏修养。

7、配穿西装时,衬衫的下摆忌穿在裤腰之外,这样会给人不伦不类,不够品位的感觉;反之,则会使人更显得精神抖擞、充满自信。

8、应尽量选穿曲下摆式样的衬衫,既便于下摆掖进裤腰内,又使穿着舒适,腰臀部位平服美观。

9、外穿型衬衫忌穿在任何外套里面(尤其是西装),避免给人以臃肿、不和谐的感觉。

10、正规的短袖衬衫可配戴领带出现于正式场合。这既适应气候环境,又不失男子汉风度。

11、新买来的衬衫,须洗涤之后再穿,以除去生产过程中可能存在的脏污,确保贴身穿着时清洁卫生。

12、男士衬衫应勤洗勤换,穿脏领子衬衫者,会给人不负责任之嫌。

六、穿着西装应遵循以下礼仪原则

2008.8

中国职业装制作,职业装定做知识。职业装定做知识

1.西服套装上下装颜色应一致。在搭配上,西装、衬衣、领带其中应有两样为素色。
2.穿西服套装必须穿皮鞋,便鞋、布鞋和旅游鞋都不合适。
3.配西装的衬衣颜色应与西服颜色协调,不能是同一色。白色衬衣配各种颜色的西服效果都不错。正式场合男士不宜穿色彩鲜艳的格子或花色衬衣。衬衣袖口应长出西服袖口1—2厘米。穿西服在正式庄重场合必须打领带,其他场合不一定都要打领带。打领带时衬衣领口扣子必须系好,不打领带时衬衣领口扣子应解开。
4.西服纽扣有单排、双排之分,纽扣系法有讲究:双排扣西装应把扣子都扣好。单排扣西装:一粒扣的,系上端庄,敞开潇洒;两粒扣的,只系上面一粒扣是洋气、正统,只系下面一粒是牛气、流气,全扣上是土气,都不系敞开是潇洒、帅气,全扣和只扣第二粒不合规范;三粒扣的,系上面两粒或只系中间一粒都合规范要求。
5.西装的上衣口袋和裤子口袋里不宜放太多的东西。穿西装内衣不要穿太多,春秋季节只配一件衬衣最好,冬季衬衣里面也不要穿棉毛衫,可在衬衣外面穿一件羊毛衫。穿得过分臃肿会破坏西装的整体线条美。
6.领带的颜色、图案应与西服相协调,系领带时,领带的长度以触及皮带扣为宜,领带夹戴在衬衣第四、第五粒纽扣之间。
7.西服袖口的商标牌应摘掉,否则不符合西服穿着规范,高雅场合会让人贻笑大方。
8.注意西服的保养。保养存放的方式,对西服的造型和穿用寿命影响很大。高档西服要吊挂在通风处并常晾晒,注意防虫与防潮。有皱折时可挂在浴后的浴室里,利用蒸气使皱折展开,然后再挂在通风处。
女性:女性穿西服套裤(裙)或旗袍时,需要穿肉色的长统或连裤式丝袜,不准光腿或穿彩色丝袜、短袜。穿衬衫时,内衣与衬衫色彩要相近、相似;穿面料较为单薄的裙子时,应着衬裙。
男性:男性出席正式场合穿西装、制服,要坚持三色原则,即身上的颜色不能超过三种颜色或三种色系(皮鞋、皮带、皮包应为一个颜色或色系),不能穿尼龙丝袜和白色的袜子。
领带夹的用法:应在穿西服时使用,也就是说仅仅单穿长袖衬衫时没必要使用领带夹,更不要在穿夹克时使用领带夹。穿西服时使用领带夹,应将其别在特定的位置,即从上往下数,在衬衫的第四与第五粒钮扣之间,将领带夹别上,然后扣上西服上衣的扣子,从外面一般应当看不见领带夹。因为按照妆饰礼仪的规定,领带夹这种饰物的主要用途是固定领带,如果稍许外露还说得过去,如果把它别得太靠上,甚至直逼衬衫领扣,就显得过分张扬。



七、职业服装礼仪

2008.8

穿着职业服装不仅是对服务对象的尊重,同时也使着装者有一种职业的自豪感、责任感,是敬业、乐业在服饰上的具体表现。规范穿着职业服装的要求是整齐、清洁、挺括、大方。

整齐。服装必须合身,袖长至手腕,裤长至脚面,裙长过膝盖,尤其是内衣不能外露;衬衫的领围以插入一指大小为宜,裤裙的腰围以插入五指为宜。不挽袖,不卷裤,不漏扣,不掉扣;领带、领结、飘带与衬衫领口的吻合要紧凑且不系歪;如有工号牌或标志牌,要佩戴在左胸正上方,有的岗位还要戴好帽子与手套。
清洁。衣裤无污垢、无油渍、无异味,领口与袖口处尤其要保持干净。
挺括。衣裤不起皱,穿前要烫平,穿后要挂好,做到上衣平整、裤线笔挺。
大方。款式简练、高雅,线条自然流畅,便于岗位接待服务。



八、男女西服穿着常识

2008.8

西服上衣袖子应比衬衫袖短1-3厘米,千不要忘记摘除袖口的商标。西服的上衣、裤子袋内不能鼓鼓囊囊。双排扣西装一定要全部扣上,单排双扣扣上面一颗或全部不扣,单排三扣扣中间一颗或全部不扣,单排四扣扣中间两颗。

领带颜色应和谐不可刺目,一般领带长度应是领带尖盖住皮带扣。领带夹的位置放在衬衫从上往下数的第四粒钮扣处,西服扣上扣子后应看不到领带夹。
衬衫领子不能太大,佩戴领带一定要扣好衬衫扣,领脖间不能存在空隙。
标准的西裤长度为裤管盖住皮鞋,手不能常插在裤袋内。皮鞋和鞋带、袜子颜色应协调,袜子的颜色应比西服深。
女士
女西服没有固定穿着格式,穿着时需注意无论哪种西装,首先要穿着合体,女西服套装应能突出女性的体型美,具体参见体型与服装的配合。
一般女西服最好选择质地较好的纯毛面料。西服上装与下装不一定穿颜色相同只要颜色和谐就行。
女士穿西服需要考虑年龄、体型、肤色、气质、职业等特点。年龄较大或较胖的女性可穿一般款式的西服。
女西服穿着还要注意服装与服饰的和谐。可选择飘带领的顺色衬衫;里边穿高领毛衣时,还可以配戴精巧漂亮的胸花。应避免看到里面多件保暖衣。
此外,还要注意皮鞋、皮包的式样、颜色与西服颜色的搭配,并辅以优美大方的发型。1、衬衫款型要分清。正式场合配穿西装或礼服时,应选穿内穿型衬衫;衬衫穿在夹克衫或中山装里面时,以内穿型最好,内外兼穿型次之。当衬衫仅作外衣穿着时,外穿型或内外兼穿型是比较适当的选择。
2、正规场合应穿白衬衫或浅色衬衫,配之以深色西装和领带,以显庄重。
3、衬衫袖子应比西装袖子长出一厘米左右,这既体现出着装的层次,又能保持西装袖口的清洁。
4、当衬衫搭配领带穿着时(不论配穿西装与否),必须将领口钮、袖口钮和袖*钮全部扣上,以显男士的刚性和力度。
5、衬衫领子的大小,以塞进一个手指的松量为宜。脖子细长者尤忌领口太大,否则会给人羸弱之感。
6、不系领带配穿西装时,衬衫领口处的一粒钮扣绝对不能扣上,而门襟上的钮扣则必须全部扣上,否则就会显得过于随便和缺乏修养。
7、配穿西装时,衬衫的下摆忌穿在裤腰之外,这样会给人不伦不类,不够品位的感觉;反之,则会使人更显得精神抖擞、充满自信。
8、应尽量选穿曲下摆式样的衬衫,既便于下摆掖进裤腰内,又使穿着舒适,腰臀部位平服美观。
9、外穿型衬衫忌穿在任何外套里面(尤其是西装),避免给人以臃肿、不和谐的感觉。
10、正规的短袖衬衫可配戴领带出现于正式场合。这既适应气候环境,又不失男子汉风度。
11、新买来的衬衫,须洗涤之后再穿,以除去生产过程中可能存在的脏污,确保贴身穿着时清洁卫生。
12、男士衬衫应勤洗勤换,穿脏领子衬衫者,会给人不负责任之嫌。

2010年9月24日金曜日

DSPIC33FJ12MC202系列单片机的资料真少

DSPIC33FJ12MC202系列单片机的资料真少。
过几天我整理出来一点。icd调试的也不好找……
困死了。休息……

2010年9月23日木曜日

中国はパキスタンに25億円を援助する予定です


今年の7月から、パキスタンは大きな洪水を被ました。中国はよくパキスタンを手伝いました。それはほんとの「中国とパキスタンの友情」といいます。

9月22日、中国の温首相は「中国はパキスタンに160億円を援助する予定です」と言いました。今年の7月から中国もう40億円を援助しました。

中国の政府と国の会社と国民全部は中国のいい友達を手伝いしたいです。

中国はほかの条件がなくで国際人道的の目的でパキスタンを援助しています。

国連の報告によると、洪水のためにもうパキスタンの20パセントの地域が影響されましたし、被害者は2000万になったそうです。

今日のごご肉十八で食べ放題をしました

今日、友達と一緒に肉十八で放題をしました。七月から自由で肉を食べることをないですから、いつも、放題をしたいですのに一緒に行く人はないです。

私は放題をする時いつも肉だけたべます。

実は昨日私も中国の友達一緒に焼肉の放題をしました。昨日は中秋ですから、皆は中秋を祝うために国際の先生の手伝いをもらって一緒に外で晩ご飯を食べました。食べた後で、写真を取りました。写真を取る時、私たちはほかの人を迷惑したくないでひとりは皆に写真を取ってくれたし。でも、そのやき肉の店員は来て「写真を取ってくれませんか」と言いました。それから、全部人が写真を取れます。
日本人の優し人は多いですね!

中国首善陈光标回应承诺裸捐质疑---评论


陈光标在中华慈善总会成立十五周年暨中华慈善突出贡献奖表彰大会上
导读:
在中国第一个公开承诺裸捐,却承受了无数人的质疑和谩骂;第一个每年拿出企业净利润的50%做慈善,却被解读成“伪善”。中秋见月心更闲,被誉为“中国首善”的陈光标,在中秋节前接受晨报记者专访时却显得语气急促,对现在嫌他讨厌的那些人,陈光标相信总有一天他们会感谢他。

评论
中国的富人真不容易,连想做个善事都会被人质疑和谩骂。
这就和中国民间的一些事一样,例如,有人做了什么好事,马上就有一些人开始骂这个人,说这个人想做“好事”来出名。
而这一次,更是有一些“经济学家”说他对市场经济不好,不值得推广……,人家为别人捐款怎么了,还上纲上线了,都违背市场经济了……难道每个人都一点也不关心社会公益,每个人都唯利是图,那样才好吗?
真不知道这些所谓的经济学家操地什么心。

登山注意事项


登山对人的身心健康大有好处,但也潜伏着一定危险。为了保证安全,应该做到;  l.登山时要尽量和多的人一起去,要集体行动。 单个人无法应对突发事故。 2.登山的地点应该慎重选择。要向附近居民了解清楚当地的地理环境和天气变化的情况,选择一条安全的登山路线,并做好标记,防止迷路。可能的话最好带着指南针和地图,GPS更好  3.备好运动鞋、绳索、干粮和水。在夏季,一定要带足水,因为登山会出汗,如果不补充足够的水分,容易发生虚脱、中暑。 不要在口渴了才喝水。 4.最好随身携带急救药品,如云南白药、止血绷带等,以便在发生摔伤、碰伤、扭伤时派上用场。  5.登山时间最好放在早晨或上午,午后应该下山返回驻地。不要擅自改变登山路线和时间。  6.背包不要手提,要背在双肩,以便于双手抓攀。还可以用结实的长棍作手杖,帮助攀登。绳子也最好带着。  7.千万不要在危险的崖边照相,以防发生意外。

今日の文

ココ空いていますか?

2010年9月22日水曜日

今日は中秋です

今日は中秋です。
皆お元気ですか?
もう月餅をたべましたか?
皆さん生活が幸せになるようお祈りします。

今までもう六月ぐらい日本に滞在します。
時間がいつも早く過ごしました。

2010年9月21日火曜日

世界で一番長いワサビ

イギリスのメディアによると、長さが1.3メトルと体重が22キーログラムの名前がだリュスというワサビが世界で一番長いワサビになるそうです。

ダルスは12月ぐらいですが、お母さんより1フィート長いです。ダルスの身長は6歳ぐらいの女の人の身長と同じです。

今、ダルスはジーニス世界の確認を待っています。人は新しい記録を作るためにワサビにたくさん餌をやったことがあるですから、ジーニスは今ワサビの身長について判断します。


ウィリアムとポテトチップス

ウィリアムは料理を作ることの専門課です。彼はオーストラリアで有名なレストランで務めています。ある日、お客さまは彼のポテトチップスが厚いと言いました。ウィリアムはそんなことがありませんと思います、でも、お客様はもう言いました、それに、彼はその人に喧嘩したくないです。ウィリアムさんはもう一度ポテトチップスを作ります。

作った後で、ウィリアムさんはポイントが薄く切ったので味がなくなったことを心配して、塩をポテトチップスに付いました。その客様はその料理がとても美味しいといいます。結局、その料理は有名な料理に何ました。それはポテトチップスといわます。

悯农

中国古诗学习
中国の漢詩を勉強しましょう
(一)
题目:悯农
作者:李绅

chūn zhǒnɡ yī lì sù ,
春 种 一 粒 粟 ,
qiū shōu wàn kē zǐ 。
秋 收 万 颗 子 。
sì hǎi wú xián tián ,
四 海 无 闲 田 ,
nónɡ fū yóu è sǐ 。
农 夫 犹 饿 死 。
意思(意味):
農民に同情します
春、ひとつのライスのシードを土地の中で植でも
秋たくさんなライスができます。
しかし、全国で使わない土地は少ないですから
農民は飢え(うえ)のために亡くなりました。

第一段と第二段は簡単です。土地があれば、食べ物を取るのは易しです。
第三段と第四段は実の様子を説明します。全国の土地は農民の土じやない。農民は自分の植えられる土地がありません。食べ物がないですから、農民はなくなりました。

この漢詩は中国の唐代の詩人書きましだ。その時、全国の土地は国と地主(じぬし)のです。詩人は田舎へ帰る時、田舎の近くの土地のライスはもう黄色くなりましたが、田舎のたくさんの人は食べ物がないですからなくなりました。そのことを考えて「悯农」を書きました。
この詩から、詩人が社会の不公平に嫌い気持ちと農民の生活の苦難(くなん)に同情(どうじょう)することが分かります。

今日二期生の歓送会のために草津駅に行った

来週、二期生が卒業するつもりです。皆は二期生に歓送会したいです。私と中国の友達はパーテイの間のギムを担当します。それから、今日私は草津駅の近くのスーパへ行ったギムの道具を買いました。道具はいろいろな種類の布です。とても綺麗いです。

布をかった後で、店員にほかの道具の買うところについて聞きました。それは哺乳瓶(ほにゅうびん)と言います。もう一個単語を勉強しました。将来のこともにいいと思う単語です。

自分の赤ちゃんのためにたくさんのお母さんとおじさんを見て、各類の昔のことが頭に出ます。私の母と父は素晴らしい人ですね。

2010年9月20日月曜日

今日はじめて日本人と友達になりました

今日はじめて日本人と友達になったし日本語と中国語で一時間半喋たし嬉しかったですね。

そのおばさんは優しくおも白い人です。

ほかの面白かったことはおばさんと一緒に御飯を食べたおじさんもう「段」といいます。

今日から、日本語を身に付くために一生懸命しましょう!

陕西神木原书记:我这样下台实际上就是被贬——随想

新闻在凤凰网地址如下:http://news.ifeng.com/mainland/detail_2010_09/19/2552935_0.shtml

经典句子摘录:


在中国,还是一把手政治,很多事情都是一把手说了算。推行过程中,例如救助残疾孩子的“康复工作委员会”和救助孤寡老人的“特殊人群工作委员会”,我要求自己做主任,我不做,难推行呀。
搞不搞免费医疗,其实关键不是有没有钱,而是一把手的执政理念。
背景:
2009年3月1日,神木在全国率先推行全民免费医疗改革:凡是拥有当地户籍并参加医疗保险的城乡居民患者(占当地人口的99%点多),在指定的乡镇医院住院开支200元以上、县级医院住院开支400元以上部分,均由县财政埋单,每人每年的医疗费用最高可以报销30万元。
感想:
不知道为什么,就这样一个第一个在全中国实行全民免费医疗的的一个县书记就这样被实际的免职了。不明白为什么……。我们平时看到的就是某个县长和县委书记组织强制拆迁,最终是被拆迁人为了保卫自己的家园而以死相争——自焚……这些官员想过为民着想吗?想过自己本应该是人民公仆吗?
后续:
江西抚州市委17日对宜黄县“9·10”拆迁自焚事件中的8名相关责任人作出处理决定,其中,负有重要领导责任的宜黄县委书记邱建国、县长苏建国被立案调查。希望这些官员得到应有的惩罚,而不是就此杳无音讯。

2010年9月19日日曜日

如果为了维护这个博客

如果我为了维护这个博客每天发布一篇日文和中文和英文的帖子?

那样对我的语言学习是不是会很有好处呢?

我想是的,要不然就从今天开始坚持?

简单的语言翻译也是学习的一种办法吧,我想。

个人记帐的在线网站

说起个人记帐在线网站,我还是比较推荐财客在线的,或者说我只用这个网站。

它可以使我更方便的知道我的各个部分都花了多少钱,对自己以后的理财意识可以有一定的培养。

还有我比较喜欢的是还可以支持日语并且可以自定义各种货币。

至于具体的功能可以自己去看。

地址:http://www.caakee.com/

声明:个人评价而已。

野外生存攻略——对你外出和应对野外环境会有好处的

序言

人类自远古洪荒中走来,我们的祖先,从茹毛饮血的年代起,就用自制的粗陋工具,在与自然界的各种灾害和猛兽的搏斗中,描绘着人类进化的轨迹,当 他们在这一艰苦卓绝的过程中,不断地积累着生存的经验,并用智慧逐步改善着自己的生存环境的同时,终于完成了划时代的进化,成为当之无愧的万物之灵,人类 在自然的怀抱中创造了文明,而钢筋水泥的高楼大厦却让文明使人类远离自然,与自然对话,还原一下人类做为大自然中的一员的本色,在大自然的怀抱里,人类永 远不会孤独,可是,对于熟捻于都市生活的你,来到野外,身处真正的自然,那一切对你来说却可能是陌生的,你兴许会面对一捆潮湿的薪柴,不知该怎样让它燃起 温暖的火焰,你兴许在林中迷失方向,却不知该如何利用地图和星斗指引你走向北方。

人与大自然,向来有着朋友与对手的辩证关系,只有当你与它实力相当时,方能体会到”棋逢对手”的乐趣。

我们为此而来,用我们野外生活的经验,给渴望走向大自然的你一点有益的帮助,我们望你能由衷感到:”人类与自然,永恒的主题。”

※※※※※※安全篇※※※※※※


迷路时:

a.回到认识的地方。山野行走,一旦迷失方向,赶快回到自己所认识的地方,用罗盘和地图确定所处方位和目的地方位。休息时多注意周围风景与标志,不要直走下坡路,因为下坡路视野范围小,方向不易确认。

b.山路上用塑料胶带,树枝或石头做记号,走在前方领头的人,遇到情况,要做标志通知后面跟来的人,标志要放在易见又安全的地方,不要随便做些无意义的记号,混淆其记号。

遇到落石:

有时自己不小心踏落石头,要立刻发声,通知由下而上来的人。通常易浮动的石头,我们称浮石,多石头的地方,浮石的颜色比周围石头新,仔细观察即可分辩,走路时要避免踩踏浮石。

预知打雷和雷击:

首先看到乱云变大,不久即变成雷云,赶紧想办法到安全地方躲一躲。如用小型收音机收听广播时,有刺耳的杂间,即表示附近有雷云,忽然下大粒雨滴,这也是打雷的预兆。

避免雷击:

a、快跑向低地;

b、离开高树或密叶树林;

c、离开铁塔,去除身上金属物;

d、在河中游泳的,要赶快上岸;

e、不要许多人集中在一起,而要分散开;

f、附近有小屋,躲入屋内,汽车也可以,但不要靠墙,雷击时,会经过墙壁传电到地面。

身体不适时

a、解去束缚;

b、依脸色判断,呼吸急促,脸色发红,但不出汗,很可能是中暑,这时应将不适者抬到树荫下休息并将头部垫高,身体躺开,保持安静;

c、有呕吐症状时,应俯卧,右手放在下巴,当作枕头,放松身体,安静休息。

植物刺伤和虫蛇咬伤

a、用水冷却或涂软膏,穿长袖衬衫和长裤,可避免受伤;

b、野外露营带蚊香、花露水或风油精、涂擦暴露在外的表皮,尽量不要用手抓痒;

c、避免被蛇咬,蛇属夜间活动的动物,白天多在洞里休息。因此,在山野中行走,避免夜晚出行,更不要把手放在自己看不到的地方;

d、若被毒蛇咬,未送医院前,先用绳子绑紧伤口上方靠近心脏地方,避免毒液随血液循环到人体内,然后把伤口切开,用口吸毒,必须是口腔没有破口。在安定患者情绪的情况下,赶快送医院或用蛇药急救。

断水

一种是无任何水源可以饮用,另一种是无干净卫生饮用水。第一种情况一般野外不多见,第二种情况则比较多见了。如有携带的饮用水用水用尽,而附近山水有泥沙或污染,就需要进行净化处理,一般净化取水法有:地汽取水法、渗水净化法、人工净化法。

※※※※※※生存篇※※※※※※


野外篝火:从事野外活动的人,无论登山、探险、旅游、狩猎或科考都能深刻体会篝火在野外生活中的重要性。没有篝火,就无法烧水做 饭,不能烘烤潮湿的衣物,夜里也不能露营,常用的篝火方式有框架式,放射式与排列式(1)框架式:将木柴交互成90度搭成”#”字形框架,层层上叠从底部 点燃;(2)放射式,将木柴或树枝以某点为圆心呈放射状形排放,从中心点燃,可用于做饭;(3)排列式:取3-5根较粗木材平行排列,两端用树枝或石块垫 起,木柴下放置引火的干柴树枝,用于做饭与露营极佳,注意的是干燥,未腐朽的木柴点火好,腐朽木柴火势小,无木炭,不宜用,栎树、山樱桃之类的硬杂木和松 木比较好,可燃点。

寻找水源:寻找水源在野外活动中非常重要,寻找水源遵循听,嗅与观察三种基本方法,听:凭借灵敏的听觉器官,注意山脚与山涧,断 崖盆地是否有山溪瀑布流水声;嗅:到山林中潮湿的气味;观察:走去观察动植物与气象和地理环境,也可找到水源,例如香蒲、沙柳、马莲、金针、水芥的地方水 位比较高,且水质也好。

紧急取水:直接从植物中取水,在南方丛林中,到处都有野芭蕉,也叫仙人蕉,这种植物内芯含水量很大,此外竹子的根部几个竹节中也 可以储水,摇晃竹茎,听到汩汩水声,就在每个竹节底部用刀切个小口,倒出里面的水便可饮用,上述方法在紧急缺少水是有效的。宿营:宿营地要因地制宜,在山 地和海岸边露营,应尽量利用自自然的洞穴,找不到合适洞穴,可选一个背风的岩壁露营,在丛林中可利用树木、竹、藤、茅草搭架形式遮棚,保温、防风、防湿、 控制食品燃料,用量数目,休息好,用身边的物品确保安全。

野外取火:野外活动中,检验人的野外生存能力,某种程度上可以取决于取火的能力,可采用手搓式与弓切式钻木取火,打一根粗 1-2CM的枯枝,用刀削光滑,枯枝一端削尖,引火物可找一些干燥的树叶、杂草,在木板边缘用刀削一个V形缺口,将枯枝置于V形缺口,用两手反复搓捻枯 枝,引火物引燃。

※※※※※※生活篇※※※※※※


野外活动时着装,在体现个性的同时,必须考虑其实用性,野外活动的着装,应以宽松、舒适、耐磨、随意为基本原则,贴身的衣服,应选择柔软吸汗的 纯棉制品,切忌尼龙纤维,春秋两季,外罩一件纯棉或宽松外套及防风衣,耐磨程度异常重要,一般的野外活动,牛仔裤是不错的选择,宽松式的牛仔裤和棉制的休 闲裤都会给你以舒适潇洒,另外,别忘了带上一有檐的遮阳帽,在野外,鞋和袜基本功能用来保护你的双脚,野外活动最好不要穿新鞋,皮面的旅游鞋柔软,舒适便 于行走,是较为明智选择,也是首选,袜子以穿纯棉制的袜子为最佳选择,它柔软、吸汗,使你的脚部时时保持干爽,一双合适的鞋加上柔软干爽的袜子,你的户外 活动就有了保障,与此同时,还要加上一个普通的太阳镜。还应该具备有雨具及保护双手的手套,应备两副,防止丢失。

野外生活中利用地形地物建野炊灶是野外生活很重要的一种技能,是野炊的基础和必备条件,常用的野炊炉灶有三石炉灶,吊灶与木架灶,均是常用的野 炊方式,三石炉灶是最简单且历史最久远的一种炉灶,取三块高度相同的石块是三角形摆放,锅或壶架放在当中,吊灶:在森林地区有时找不到合适的石块建灶,可 找4-6 根,长约30-40公分粗树枝,将锅或壶架在木桩上,下方生火。炕灶:在既无合适石块又无树枝的情况下,可在地上挖坑灶,选择食物应为好吃、有营养、不复 杂,烹饪前不必特别处理。能配合所携炊具、不浪费水,尽量不要有剩余,还有可利用高压锅煮饺子,做烙饼,蒸馒头5-6个人,可用直径为22-40CM的 锅,在野外还要注意保存食物,可因地制宜采取一些切实可行的土办法加工和保持食物,熏晒法如在野外钓到鱼就可以用晒制法将鱼晒成鱼干保存或食用,风干法, 秋季将牛肉挂在背阴处,靠干燥风吹,将肉中水分去掉,风干后食用,靠热风吹干,肉不宜太厚,食用时将风干食物烹熟食用。

在野外活动时,住宿露营非常重要,营地的选择应遵循安全,避风、近水,平坦这四项基本原则:a、安全:营地选择必须避开各种危险,即营地应远离 裂石间危险的威胁,有些地方貌似安全,其实有极大的隐患;b、避风:野外的强风可将帐篷吹跑,扯破,最好选在屏障的避风处,如山丘或巨石的背后;c、近 水:营地是活动人员过夜,生活的临时场所,接近水源会带来许多方便,但苦在河流两岩设营必须充分考虑水道水流的涨落,以免涨水淹没帐篷;d、平坦:营地建 在平坦土地面或雪面上要比凹凸不平的碎石堆上要舒服的多,软土是理想的建营场所,地面若有碎石和荆棘应予以清除,准备宿营时,应首先搭建公用帐篷,在营地 的下风处首先搭好炊事帐篷,建好炉灶,烧上一锅水,然后再依次向上风处搭建存放公用装备的仓库帐篷和各自的宿营帐篷。另外,千万别忘了,在下风处,远离水 源的地方再搭上一个简易厕所,以免用时着急。

野外行走,走路是生活基本技能,野外走路,是野外生存活动的基本技能,基本原则是安全,即避免危险事故和迷失方向,节省体力提高行进速度,山路 行进的原则是走梁不走沟,走纵不走横,有路时自不必说沿路走,而不要穿林翻山,没有路时则尽量在山脊,山梁林木稀疏的地方,这些地方地形相对简单,视野较 开阔,非不得已不要在深沟和密林,灌丛及竹林中行走,山谷行军。河流横渡,不要草率入水,应仔细观察,沼泽地行进,避开或绕行,渡河是野外活动常遇到的障 碍,有的河流缓缓而过,清澈见底,有的则是水深流急,侦察做到心中有数,观察后确定渡河的地点及方法,选择河水较浅、水流平缓、无暗礁、暗流和漩涡的地 点,涉水过河时,应当穿鞋,可避免河底尖石划破脚,同时也可以更好地保持平衡,如果河底是淤泥底,应脱掉鞋袜,赤足过河。

※※※※※※遇险篇※※※※※※


迷路:

a、迷路十分危险,在野外生活中切记勿离开队伍,小组为单位一起行动,休息与行军应全队统一进行,避免单独行动;

b、学会利用地形图,指南针和高度针,参加活动之前记住路线上的特征点,距离、高度等数据,并在图上做好标记;

c、行动中要处处留意观察并留下标记,在不曾去过的山区或茂密的森林中行军时应处处留意,观察周围的地形;

d、在天气恶劣或大雾天的时候最好暂停活动,原地休息或扎营。

冻伤预防

a、要选择高营养、高热量的食物;

b、冬季野外活动,穿着的服装与内衣应选择柔软,质轻吸排汗性能好的,如纯棉毛;

c、保护血液循环的末稍部分,如手指、脚趾、要戴好手套及穿上厚袜子。

溺水

a、涉水过河的地点应选择在水深最浅并且水流平稳之处,避免在急流及瀑布上游处渡河,以免不慎滑倒,就已接近危险区;

b、在山间,选择营地时,不可在河道里,河岸两旁边和河水上涨时能危及到地方扎营;

c、当天气不好或下大雨时,应当绕开需涉水过河的路线,河水上涨,不可冒险强行涉过。

※※※※※※环保篇※※※※※※


不要破坏自然界平衡的状态:大自然中的植物彼此保持着很微妙的平衡,一块狭小的空地,表面看起来没有生物存在,实际上生物正在那活跃着。接触大自然时,不要破坏这种平衡,不乱折花木,不乱捕鸟兽,享受大自然就应遵守规则。

恢复自然界原有的风貌才离开:有时我们看天人们离开野外后,留下肮脏的垃圾,阴暗处的空罐头、堆积的塑料袋、吃剩的鱼肉汤肴,不堪入目。因此不要忘记,保存自然原有的风貌处理掉垃圾,将临时厕所掩埋好,把不能燃烧化解的塑料集散带走,后来的人,才能享受干净的大自然。

野外收拾工作:碗盘尽量不要用洗洁剂来洗,尤其不要在河中漂洗化学剂污染的物品,以免污染水源。

做好的餐饭,尽量吃完,不要残留下来,如果不够,可用干粮或其他速食品补充。其他垃圾,能燃烧的物品用火焚烧掉(注意不要引起火灾)或埋掉,不易分解的玻璃空罐,塑胶等用备用袋装走。

烹饪用火要特别小心,临走前要检查火星是否熄灭,分多次浇水,并用手轻拨沙土加以掩灭。