Tomcat中Servlet类的原理

Tomcat执行的事情为:向服务器发起连接,接受浏览器发送的请求,响应浏览器的请求,关闭连接

首先,需要知道Servlet是什么东西,在自己新建的类中为什么可以不需要main函数就可以运行在web上。

Servlet是运行在服务器端的Java应用程序,可以生成动态的web。不需要main函数就可以运行,是由于java的反射机制,在Tomcat中应用java的反射机制来生成一个Servlet对象,并通过这个对象来获取Servlet中的方法(如doGet(),doPost(),service())。

给代码演示

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		// TODO Auto-generated method stub
//		response.getWriter().append("Served at: ").append(request.getContextPath());
		String name = request.getParameter("username");
		System.out.println(name);
		
		
		response.setContentType("text/html");
		PrintWriter pw = response.getWriter();
		pw.println("<div>hobby<ul><li>swimming</li><li>play game</li></ul></div>");
//		pw.println("<span><p>Hello</p></span>");
//		pw.println(str);
		pw.flush();
		pw.close();
	}

在上面的doGet()方法中,提到的HttpServletRequest与HttpServletResponse两个类实现方法与Servlet实现方法是一样的,也是通过java的反射机制。前者是浏览器传过来的数据包,后者是响应数据包。上面代码提到的只是简单的演示。

浏览器上有一个表单属性,通过submit按钮来提交整个表单的属性,之后通过request.getParmeter("name"),其中name为表单中标签的name属性。通过此种方法即可获取浏览器发送form表单中的数据。

响应请求,发送数据包给浏览器,这是一个读写的过程,通过调用java.io中的输入输出流来给数据包中写入数据。如此一个简单的B/S开发就完成了。


最后,新人上路,还有许多不明白之处,不足之处请指出。



  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值