• SpringBoot自定义实现跳转页面


    import org.slf4j.Logger;
    import org.slf4j.LoggerFactory;
    import org.springframework.stereotype.Controller;
    import org.springframework.util.ClassUtils;
    import org.springframework.web.bind.annotation.RequestMapping;
    
    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.*;
    
    @Controller
    public class PageController {
        private static ClassLoader classLoader = ClassUtils.getDefaultClassLoader();
        private static final Logger log = LoggerFactory.getLogger(PageController.class);
    
        @RequestMapping("/")
        public void root(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
            request.getRequestDispatcher("/index.html").forward(request, response);
        }
    
        @RequestMapping("**.html")
        public void page(HttpServletRequest request, HttpServletResponse response) throws IOException {
            String servletPath = request.getServletPath();
            log.info(request.getMethod() + " " + servletPath);
            String filePath = "templates" + servletPath;

            InputStream inputStream = classLoader.getResourceAsStream(filePath);
            if (inputStream == null) {
                response.sendError(404);
                return;
            }
            response.setContentType("text/html; charset=utf-8");

            OutputStream outputStream = response.getOutputStream();
            int readChar;
            while ((readChar = inputStream.read()) != -1) {
                outputStream.write(readChar);
            }
            outputStream.flush();
            inputStream.close();
        }
    }
  • 相关阅读:
    Java中使用Log4j记录错误、输出日志
    oracle 触发器的实例(转)
    [jsp学习笔记]servelt get post
    [winfrom]C#中使用SendMessage
    3)创建,测试,发布 第一个NET CORE程序
    DDL和DML 的区别
    [jsp学习笔记] jsp过滤器
    [jsp学习笔记] jsp基础知识 数据初始化、同步
    [jsp学习笔记]jstl标签的使用
    LiteORM-For-DotNet,我的第一个开源库……更新
  • 原文地址:https://www.cnblogs.com/gjq1126-web/p/12614870.html
Copyright © 2020-2023  润新知