您的位置:首页 > 运维架构 > Linux

嵌入式Linux系统搭建[转]

2008-05-30 16:29 162 查看
1.学习Java Web应用开发,需要安装一个支持JSP、Servlet等技术的Web服务软件,这样的软件称为Web容器,而将安装Web容器的计算机称为Web服务器。支持JSP的Web容器负责运行JSP程序,并将结果以网页的形式返回给客户端。

2.如果Tomcat安装时选择“Full”完全安装,Tomcat服务器安装目录的webapps文件夹下包含docs、examples等目录,这些目录实际上也是Web服务目录,他们是Tomcat自带的Web项目设置的Web服务目录,例如访问http://localhost:8080/examples/,就可以访问本地Tomcat服务器上自带的JSP和Servlet例子。

事实上,在webapps目录下任何一个子目录都可以作为一个Web服务目录。假设在webapps目录下新建一个文件夹JSPTest,那么JSPTest也是一个Web目录,如果将JSP页面文件test.jsp保存至JSPTest目录下,那么用户在此Tomcat服务上使用如下URL即可访问test.jsp:http://localhost:8080/JSPTest/test.jsp.

当然也可以将其他目录作为Web服务目录,只需要设置此目录为虚拟目录即可。假设设置Tomcat服务器所在的计算机的D://WebPages目录设为虚拟目录,且虚拟目录名称为web,那么具体步骤为:

1:打开Tomcat安装目录/conf/server.xml;

2:修改<Host>元素。在server.xml中找到<Host>元素并为其增加<Context>子元素:<Context path="web" docBase='D:/WebPages" debug="0‘ reloadable="true"/>

3:保存并且重启Tomcat即可。

3.设置端口号

1:打开Tomcat安装目录/conf/server.xml;

2:<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443'

4:简介Web项目下的文件

src:主要存放Java源文件,项目中的JavaBean、Servlet等java源文件

build:主要存放JSP编译之后的中间字节码文件

WebContent:主要存放Web资源,如JSP页面、HTML页面、图片、CSS等文件。WEB-INF子文件夹主要存放库文件(lib)JavaBean和Servlet编译之后生成的中间字节码文件(classes)和配置文件(web.xml),META-INF子文件夹包含一个文件MANIFEST.MF,主要用于jar打包。

5:JSP运行机制

JSP是如何运行的呢?以Hello.jsp为例,当客户想Tomcat服务器发送请求访问Hello.jsp页面时,Tomcat服务器将启动一个线程,该线首先将Hello.jsp转化成一个Servlet即Hello_jsp.java,然后再将此Servlet编译成中间字节码文件并加载运行。一旦该客户请求完成时,线程进入死亡状态,但是该中间字节码文件却一直长住在Tomcat服务器内存,直至Tomcat服务器终止运行。当又有客户端请求该页面时,Tomcat服务器将在启动一个线程,直接执行长住内存的中间字节码文件并将结果以HTML的形式响应客户。由此可见,仅仅当JSP页面第一次被请求是被编译,以后再次请求时将直接运行。

注:Hello_jsp.java将保存在Tomcat安装目录下的work文件夹内。

6:HTTP协议简介

1.无连接指的是每次连接只处理一个请求。服务器处理完客户的请求,并收到客户的应答后,即断开连接。

2.无状态指的是对事务处理没有记忆功能。因为无连接即一旦处理完即断开连接,并不保存本次连接的任何信息,这就意味着如果后续处理需要前面的信息,他就必须重新传输。

7:HTML元素简介

1.DOCTYPE声明元素,即文档类型(Document Type)在页面中用来指定页面所使用的HTML(或者XHTML)版本。语法格式(即DTD);<!DOCTYPEHTML顶级元素可用性“注册//组织//类型标签//定义语言”“URL”

8:注释

1HTML注释.<!-- -->在源代码中可以看到

2.JSP注释<%-- -->JSP引擎忽略JSP注释,用户在客户端看不到

9:JSP脚本元素

1.<%! %>表示声明

2.<%= %>表示表达式

3.<% %>表示代码段

注意:使用<%! %>声明的变量和方法是页面级别的(相当于用static修饰),即他们在声明语句所在的页面有效。因为Tomcat将JSP页面转换为Java类时,声明的变量将作为类的成员变量,声明的方法作为类的方法。

10:使用<jsp:forward page="">动作标记跳转页面时,其URL并不会随之改变为跳转后的页面地址。

11:Request请求报文分为四部分请求行(Request Line)、请求首部(Request Header)、空行(Blank Line)、请求数据(Body)

请求行 :GET /JSPRequest.jsp HTTP/1.1第一部分GET表示get请求,第二部分(/)表示请求的是该域名的根目录,最后一部分说明使用的是HTTP1.1版本

请求首部:

Accept:text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8

Accept-Language:zh-CN,zh;q=0.8

Accept-Encoding:gzip,deflate

User-Agent:Mozilla/5.0 (Windows NT 6.1) AppleWebKit/535.1 (KHTML, like Gecko) Chrome/14.0.802.30 Safari/535.1 SE 2.X MetaSr 1.0

Host:localhost:8080

Connection:keep-alive

下面是获取该内容的源码及其他:

<%
Cookie c1 = new Cookie("name","java");
Cookie c2 = new Cookie("password","123");

c1.setMaxAge(180);//秒
c2.setMaxAge(180);//秒

response.addCookie(c1);
response.addCookie(c2);
%>
方法	说明
Class getClass()	获取page对象的类
int hashCode()	获取page对象的hash码
boolean equals(Object obj)	判断此对象是否与obj相等
String toString()、void copy(Object obj)、Object clone()、void notify()、void notifyall()
void wait()、void wait(int timeout)、void enterMonitor()、void exitMonitor()
加锁和解锁


<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"
import="soft.app.one.bean.*"                                                                                 -->导入JavaBean所在包名
%>
<!-- 使用jsp:useBean声明一个JavaBean对象,这样在指定范围内就可以调用该 JavaBean -->
<jsp:useBean id="rectangle" class="soft.app.one.bean.Rectangle" scope="session" />
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>

<FORM action="" method="post">
<!-- 使用jsp:setProperty为指定的javabean对象的属性赋值  -->
<!--
<jsp:setProperty property="width" name="rectangle" value="100"/>
<jsp:setProperty property="length" name="rectangle" value="200"/>
-->
<!-- *表示自动匹配,它将<input>标签中name属性值同名的javabean属性匹配,并为之赋值  -->
<jsp:setProperty property="*" name="rectangle"/>
width: <input type="text" name="width" /> <br />
length:<input type="text" name="length" /><br />
<input type="submit" value="计算" />

</FORM>

<br/>
矩形的长为:<jsp:getProperty property="length" name="rectangle"/>;宽为:<jsp:getProperty property="width" name="rectangle"/>
<br/>

<jsp:getProperty property="calculate" name="rectangle" />

</body>
</html>

[code]
[/code]







                                            
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: