ubuntu 12.04 tomcat + jsp的入门

1.apt-get install tomcat6 tomcat6-docs tomcat6-examples tomcat6-admin tomcat6-common
2.修改/var/lib/tomcat6/conf/tomcat-users.xml
增加
<user username=”fool” password=”123456″ roles=”admin,manager”/>
配置一个后台管理的用户fool
3.通过sudo /etc/init.d/tomcat6 restart重启服务
4.访问http://localhost:8080/
就可以看到页面

5.实际上各个子目录的配置放在这个目录下面

/var/lib/tomcat6/conf/Catalina/localhost/

比如

/var/lib/tomcat6/conf/Catalina/localhost/examples.xml

对应的代码放在这里
/usr/share/tomcat6-examples/examples
所以我在/var/lib/tomcat6/conf/Catalina/localhost/下新建一个配置,叫learning.xml
内容如下
<?xml version=”1.0″ encoding=”UTF-8″?>
<Context path=”/learning”
docBase=”/usr/share/tomcat6-learning/miniprog/java/jsp-learning”
antiResourceLocking=”false” />
然后代码放在/usr/share/tomcat6-learning/miniprog/java/jsp-learning目录下
7.JSP的写法:
jsp/hello.jsp
<html>
<head>
<title>my first jsp program</title>
</head>
<body>
<%
out.println(“Hello World!”);
out.println(“I love the world!”);
%>
</body>
</html>
有点类似于ASP,html中内嵌入代码。
直接访问http://localhost:8080/learning/jsp/hello.jsp,就可以获得访问的结果
按网上的说法,tomcat收到get请求后,通过JSP container(这里叫Catalina),先把hello.jsp转成helloServlet.java,里面的标签都通过
out.pringln输出。然后把helloServlet.java编译成helloServlet.class。最后运行它。
8.servlet的写法
servlet/HelloWorldServlet.java

import java.io.*;
import javax.servlet.*;
import javax.servlet.http.*;

public class HelloWorldServlet extends HttpServlet {

public void doGet(HttpServletRequest request, HttpServletResponse response)
throws IOException, ServletException
{
response.setContentType(“text/html”);
PrintWriter out = response.getWriter();
out.println(“<html>”);
out.println(“<head>”);
out.println(“<title>Hello World Servlet!</title>”);
out.println(“</head>”);
out.println(“<body>”);
out.println(“<h1>Hello World Servlet!</h1>”);
out.println(“</body>”);
out.println(“</html>”);
}
}
类似于ccdb中用python写的运维系统的那个web界面,也是通过继承python版本的servlet对象,实现doGet doPost,write HTML code来生
成网页内容的。
实际上servlet的写法与JSP的写法等价,省略了把jsp文件转成java文件的过程。但是jsp的写法更加简洁。
如果通过servlet执行,还需要做一些其它操作
a.servlet/下面
mkdir -p WEB-INF/classes
b.编译,要考虑依赖servlet的库
javac -cp /usr/share/java/tomcat-servlet-api-3.0.jar HelloWorldServlet.java
cp HelloWorldServlet.class ../WEB-INF/classes
c.配置WEB-INF/web.xml

<?xml version=”1.0″ encoding=”ISO-8859-1″?>
<web-app xmlns=”http://java.sun.com/xml/ns/javaee”
xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:schemaLocation=”http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd”
version=”2.5″>

<description>
Servlet and JSP Examples.
</description>
<display-name>Servlet and JSP Examples</display-name>
<!– Define servlets that are included in the example application –>
<servlet>
<servlet-name>HelloWorldServlet</servlet-name>
<servlet-class>HelloWorldServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>HelloWorldServlet</servlet-name>
<url-pattern>/servlet/HelloWorldServlet</url-pattern>
</servlet-mapping>
</web-app>

servlet标签定义servlet的名字
servlet-mapping标签定义servlet和url的映射关系
之后/etc/init.d/tomcat6 restart
访问

http://localhost:8080/learning/servlet/HelloWorldServlet

把jsp servlet与python django作个简单的类比,可以发现
WEB-INF/web.xml有点像python django框架里的urls.py
jsp文件类似于template文件
d.如果遇到乱码,在jsp文件第一行加上
<%@ page language=”java” contentType=”text/html; charset=UTF-8″ pageEncoding=”UTF-8″%>

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值