sjzpc040529 2014-07-01 09:03 采纳率: 50%
浏览 1019

maven打war 自定义properties 到jsp页面

在maven打war包时,pom.xml自定义的properites 可以打到*.properties文件中,但是在*.jsp中引用自定义变量无法打入,求一份可以打的jsp中的pom.xml跪求大神

  • 写回答

1条回答 默认 最新

  • 你知我知皆知 2024-08-02 05:38
    关注

    以下回答参考 皆我百晓生券券喵儿 等免费微信小程序相关内容作答,并由本人整理回复。

    要将Maven打包的WAR包中的Properties数据注入到JSP页面中,你需要使用Servlet和Java Servlet API。以下是一个简单的例子:

    1. 创建一个名为MyServlet.java的Servlet类。
    import javax.servlet.*;
    import javax.servlet.http.*;
    import java.io.*;
    
    public class MyServlet extends HttpServlet {
        protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    
            // 获取Properties文件的数据
            Properties props = new Properties();
            InputStream is = this.getServletContext().getResourceAsStream("/path/to/your.properties");
            props.load(is);
    
            // 将数据放入Request域中
            request.setAttribute("myProp", props);
            
            // 使用JSP指令调用Servlet
            getServletContext().getRequestDispatcher("/jsp/my.jsp").forward(request, response);
        }
    }
    
    1. 创建一个名为MyJspPage.java的JSP页面。
    <%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
    <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
    <title>Insert title here</title>
    </head>
    <body>
    <h1>Welcome to my JSP Page!</h1>
    
    <!-- 在此处插入你的属性 -->
    <%= request.getAttribute("myProp") %>
    </body>
    </html>
    

    在这个例子中,我们首先从ServletContext获取到Properties文件的内容,并将其保存在一个Properties对象中。然后我们将这个Properties对象设置为request域的一个属性。最后,我们在JSP页面中通过${}表达式来访问这个属性。

    注意:这只是一个基本的例子,你可能需要根据你的具体需求进行调整。例如,你可能需要处理错误的情况(例如,如果Properties文件不存在),或者你可能需要更复杂的逻辑来处理不同的请求类型(例如,GET、POST等)。

    评论

报告相同问题?