首先:

java EE 上的hello2项目是一个部署在glass fish上的开发源码的java web项目,在终端通过命令行使用maven进行打包成.war文件,最后部署到相关的glass fish服务器上。

Java EE 的hello2 不同于hello1 的不同之处在于,前者可以直接通过hello1项目名进行访问文件,后者需要通过访问编写的greeting的web文件才能够访问到hello2文件。

其中的原因在于如下:

1:在hello2的项目中,采用的是Java servlet  技术来采取对项目的整体框架的搭建。编写另一个greeting的java文件,实现了一个greeting的java类来覆盖url的doGet方法,

这个Java类重写了关于HTTP的get 方法,因此通过访问相关的url 即可以访问到编写的Java servlet 文件。主要的实例如下:

@Override
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException { response.setContentType("text/html");
response.setBufferSize(8192);

这个重写的doGet方法传入了一个request 和 response参数,对请求得到的响应进行处理,返回相关的编写的html类型的java web文件和并且设定最大的字节数为8192字节。

http://host:port/context-root[/url-pattern

@WebServlet("/greeting")
public class GreetingServlet extends HttpServlet {
...}
通过分析可知,这个Greeting继承了HttpServlet包,从而实现关于http的servlet方法,完成了url到web组件的映射。
if (username != null && username.length()> 0) {
RequestDispatcher dispatcher =
getServletContext().getRequestDispatcher("/response"); if (dispatcher != null) {
dispatcher.include(request, response);
}

编写的实例类实现了一个关于用户名和用户名长度的判别方法,对用户输入的信息进行判别,并通过responseServlet进行处理,相关的实例如下:

@WebServlet("/response")
public class ResponseServlet extends HttpServlet { @Override
public void doGet(HttpServletRequest request,
HttpServletResponse response)
throws ServletException, IOException {
try (PrintWriter out = response.getWriter()) { // then write the data of the response
String username = request.getParameter("username");
if (username != null && username.length()> 0) {
out.println("<h2>Hello, " + username + "!</h2>");
}
}
}

当用户输入信息时,后端对输入的信息做出响应,呈现出java web的servlet HTML组件。

总结:

Servlet 技术首先编写一个java 类实现一个servlet接口,其次将开发好的Java web类部署到web 服务其中,即glass fish服务器中,即可以实现javaweb简单部署。

Servlet程序是由服务器调用,当服务器收到客户端的http请求时:

1:  首先判断是否是第一次访问Servlet程序,如果是则创建Servlet实例,调用实例对象的init()方法。

2 : 创建一个用于封装HTTP请求消息的HttpServletReqset对象和一个代表HTTP响应消息的HttpServletResponse对象。

3 :    最后调用doGet()方法将请求参数和响应参数传递进去。

通过以上的步骤,客户端通过请求上下文的URL即 ”http://host:port/context-root[/url-pattern]“ 能够访问到部署在glass fish服务器上的Java Servlet项目 即hello2。



最新文章

  1. java反射机制,通过类名获取对象,通过方法名和参数调
  2. linux格式批量转换为dos格式
  3. 在当前Server上找某某object,注意只需修改&quot;要找的object&quot;就可以使用
  4. ida GDB 远程调试
  5. MySQL join buffer使用
  6. apache ambari web页面无法访问解决办法
  7. codevs 3119 高精度练习之大整数开根 (各种高精+压位)
  8. OpenStack简单测试性能监控数据记录
  9. Ural 1297 Palindrome 【最长回文子串】
  10. php 使用curl发起https请求
  11. 201521123059 《Java程序设计》第七周学习总结
  12. Codeforce 854 A. Fraction
  13. Python3爬虫登录模拟
  14. File API文件操作之FileReader
  15. 极客时间 深入拆解java虚拟机 一至三讲学习总结
  16. 【Linux】linux正则表达式及通配符
  17. SQL Server 安装后改动计算机名带来的问题以及解决方法
  18. iPhone launch screen,self.view.frame.size
  19. Golang channel 的基本使用方法
  20. UVALive6442_Coins on a Ring

热门文章

  1. 如何删除windows10右键新建中不需要的选项
  2. 在 CSS 中表示颜色的hex code方法和rgb方法
  3. 【大咖直播】Elastic Security 安全管理实战工作坊
  4. @Transactional-同一个类中方法自调,调用方法事物失效
  5. 自定义Vue&amp;Element组件,实现用户选择和显示
  6. C# 调用C++结构体
  7. HTML &lt;form&gt; 标签的 method 属性
  8. Qt MDI及其使用方法(详解版)
  9. uwp 自定义语音识别规则
  10. CrackMe-Cycle