Board logo

标题: java 架构探险(4)编写一个简单的Web应用 [打印本页]

作者: look_w    时间: 2018-12-14 19:04     标题: java 架构探险(4)编写一个简单的Web应用

六,编写一个简单的Web应用

1,编写Servlet类

写一个HelloServlet,
接收Get请求/hello,
转发到/WEB-INF/jsp/hello.jsp页面
hello.jsp页面显示系统当前时间


在java目录下创建包,名为org.smart4j.chapter1,并创建HelloServlet.java

package org.smart4j.chapter1;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
* Created by Brave on 18/4/27.
*/
@WebServlet("/hello")//使用注解配置请求路径,对外发布Servlet服务
public class HelloServlet extends HttpServlet {//继承HttpSevlet,成为一个HttpSevlet类

    /**
     * 重写doGet方法,接收Get请求
     */
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

        // 获取当前系统时间
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String currentTime = dateFormat.format(new Date());
        // 添加到HttpServletRequest请求对象中
        req.setAttribute("currentTime", currentTime);
        // 转发至/WEB-INF/jsp/hello.jsp页面
        req.getRequestDispatcher("/WEB-INF/jsp/hello.jsp").forward(req, resp);
    }
}



使用Servlet3.0框架不需要再web.xml中添加任何配置,使用WebServlet注解即可
还有更多注解API,使项目拥有一个"零配置"的web.xml

    1
    2

2,编写jsp页面

在webapp目录下创建jsp目录并创建hello.jsp

推荐将JSP放到WEB-INF内部,这样无法通过浏览器地址直接请求放在内部的JSP
必须通过Servlet程序进行转发(forward)或重定向(redirect)

    1
    2

<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
    <title>Hello</title>
</head>
<body>

    <h1>Hello!</h1>
    <%--使用JSTL表达式获取HelloServlet传递的currentTime请求属性--%>
    <h2>当前时间{currentTime}</h2>
</body>
</html>


此时的项目目录如下:
这里写图片描述

3,IDEA中配置tomcat,启动服务

在IDEA中配置一个Tomcat
1) 点击IDEA工具栏"Edit Configurations..."弹出对话框
2) 点击左上角"+"号,选择TomcatServer->Local选项
3) 输入Tomcat的Name,取消勾选"After Lunch"选项
4) 单击Application server下拉框右侧"Configure...",配置Tomcat
5) 切换到Deployment选项卡,单击右边"+",选择"Artifact..."选项
6) 弹出的Select Artifact to Deploy对话框,选择chapter1:war exploded
7) 回到Run/Debug Configurations对话框,在Application context输入/chapter1
8)切换回Server,在On frame deactivation下拉框中选择"Update resource"

IDEA工具栏,选择RUN或Debug启动Tomcat并部署Web应用


这里写图片描述
这里写图片描述
这里写图片描述

启动服务:

这里写图片描述



    !




欢迎光临 电子技术论坛_中国专业的电子工程师学习交流社区-中电网技术论坛 (http://bbs.eccn.com/) Powered by Discuz! 7.0.0