查看: 1684|回复: 0

[Java代码] 基于 IntelliJ IDEA 模拟 Servlet 网络请求示例

发表于 2018-5-4 08:00:02

最近观看 Android 开发视频,里面使用的集成开发工具为 Eclipse 。使用 Eclipse 可以很快捷的编写 Web 项目,而我使用的 Androi Studio 因为专业就把建立其他工程的功能给阉割了。所以,不能忍受只能听老师讲而不能实际操作时望洋兴叹般的尴尬,我选择了使用 IntelliJ IDEA 来替代 Eclipse 模拟网络请求。下面结合一个简单网络请求的实现,来介绍 IntelliJ IDEA 的使用。

首先当然是下载 IntelliJ IDEA 集成工具,这个 Google/Baidu 一下,很容易就能获得。

接下来配置 Tomcat 服务器,以 Mac 电脑为例,参考:Mac上tomcat服务器安装配置 。

然后打开 IntelliJ IDEA ,选择右边的 Java Enterprise 项目类型,选择刚装的 Tomcat 服务器,勾选 Web Application 选项。

新建工程

点选 next,输入自定义工程名称 demo:

工程

然后我们就能看到新建工程的全貌:

工程

至此,一个 Web 应用工程的框架已经做好。但是要顺利部署到 Tomcat 服务器,还需要我们添加处理服务的对象 Servlet。点击 src 文件夹,添加 Servlet:

servlet

Servlet 类中能看到默认生成的 doGet 和 doPost 方法:

  1. protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  2. response.setCharacterEncoding("utf-8");
  3. response.setContentType("text/html");
  4. response.getWriter().print("收到 post 请求");
  5. String username = request.getParameter("username");
  6. String pwd = request.getParameter("password");
  7. if("admin".equals(username) && "abc123".equals(pwd)) {
  8. response.sendRedirect("/2.html");
  9. }
  10. }
  11. protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
  12. response.setCharacterEncoding("utf-8");//设置
  13. response.setContentType("text/html");
  14. String username = request.getParameter("username");
  15. String pwd = request.getParameter("password");
  16. if("admin".equals(username) && "abc123".equals(pwd)) {
  17. response.sendRedirect("/2.html");
  18. }
  19. }
复制代码

要想使用新建的 Servlet 类,还需要在 web.xml 中进行配置:

  1. <web-app ...>
  2. <servlet>
  3. <servlet-name>Servlet</servlet-name>
  4. <servlet-class>demo.Servlet</servlet-class>
  5. </servlet>
  6. <servlet-mapping>
  7. <servlet-name>Servlet</servlet-name>
  8. <url-pattern>/demo</url-pattern>
  9. </servlet-mapping>
  10. </web-app>
复制代码

其中 servlet-mapping 标签设置对外访问的路径。

然后在 web 目录下添加前端页面文件,比如命名 1.html 作为起始页面,2.html 作为跳转的结果页面。

页面

在 1.html 中编辑页面布局,设置 head 标签,在 body 标签中添加 form表单。

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta http-equiv="content-type" content="text/html; charset=UTF-8" >
  5. <title>MyFirst</title>
  6. <script type="text/javascript">
  7. </script>
  8. </head>
  9. <body>
  10. <h1>登录页面(get)</h1>
  11. <form action="/demo" method="get">
  12. <table>
  13. <tr>
  14. <td>
  15. 用户名:
  16. </td>
  17. <td>
  18. <input type="text" name="username">
  19. </td>
  20. </tr>
  21. <tr>
  22. <td>
  23. 密码:
  24. </td>
  25. <td>
  26. <input type="text" name="password" type="hidden">
  27. </td>
  28. </tr>
  29. <tr>
  30. <td colspan="2" style="align-items: center">
  31. <input type="submit" value="登录">
  32. </td>
  33. </tr>
  34. </table>
  35. </form>
  36. <h1>登录页面(post)</h1>
  37. <form action="/demo" method="post">
  38. <table>
  39. <tr>
  40. <td>
  41. 用户名:
  42. </td>
  43. <td>
  44. <input type="text" name="username">
  45. </td>
  46. </tr>
  47. <tr>
  48. <td>
  49. 密码:
  50. </td>
  51. <td>
  52. <input type="text" name="password" type="hidden">
  53. </td>
  54. </tr>
  55. <tr>
  56. <td colspan="2">
  57. <input type="submit" value="登录">
  58. </td>
  59. </tr>
  60. </table>
  61. </form>
  62. </body>
  63. </html>
复制代码

2.html中编辑页面:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Title</title>
  6. </head>
  7. <body>
  8. <h1 style="color: red">
  9. 登录成功!!!
  10. </h1>
  11. </body>
  12. </html>
复制代码

最后点击 Debug 进行运行,部署到自己的 Tomcat 服务器上:

Debug

最后在浏览器输入网址: http://localhost:8080/1.html ,就能访问我们部署的网站了。

网站

打开 Chrome 的开发者工具,能够看到发送请求的详细情况:

发送请求

完工!

流程很简单,以后就可以使用 IDEA 来学习后端开发的基本知识了,比如可以在后端获取提交的文件,对成功的请求进行跳转,请求失败时要告知客户端等等,都可以进行模拟,更多知识点等你来发现了。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持程序员之家。



回复

使用道具 举报