读书人

jsp 变换 html

发布时间: 2012-11-23 22:54:33 作者: rapoo

jsp 转换 html


??????? // Put your code here??

??? }??

??? public void doGet(HttpServletRequest request, HttpServletResponse response)??

??????????? throws ServletException, IOException {??

??????? response.setContentType("text/html");??

??????? PrintWriter out = response.getWriter();??

??????? //----获取请求的URL??

??????? String reqTarget = request.getParameter("name");??

??????? //----指定对应JSP的HTML名称??

??????? String name = reqTarget.substring(reqTarget.lastIndexOf("/") + 1,reqTarget.lastIndexOf("."));??
??????????
??????? //---判断是否存在对应的HTML文件??

??????? File file = new File(request.getRealPath("/") + name + ".html");??

??????????

??????? if (!file.exists()) {?? //--------如果不存在对应的HTML文件??

??????????? try {??

??????????????????

??????????????? file.createNewFile();?? //--------创建HTML文件??

??????????????? //-------将JSP的内容写入对应的HTML文件内??

??????????????? InputStream in;??

??????????????? StringBuffer sb = new StringBuffer("");??

??????????? //----注意这里,不能直接访问请求的URL,如果直接访问的话,会陷入死循环??

??????????????? URL url = new java.net.URL(reqTarget.toString()+"?type=11");??

??????????????? HttpURLConnection connection = (HttpURLConnection) url??

??????????????????????? .openConnection();??

??????????????? connection.setRequestProperty("User-Agent", "Mozilla/4.0");??

??????????????? connection.connect();??

??????????????? in = connection.getInputStream();??

??????????????? java.io.BufferedReader breader = new BufferedReader(??

??????????????????????? new InputStreamReader(in, "GBK"));??

??????????????? String currentLine;??

??????????????? FileOutputStream fos = new FileOutputStream(file);??

??????????????? while ((currentLine = breader.readLine()) != null) {??

??????????????????? sb.append(currentLine);??

??????????????????? fos.write(currentLine.getBytes());??

??????????????? }??

??????????????? if (null != breader)??

??????????????????? breader.close();??

??????????????? if (null != fos)??

??????????????????? fos.close();??

??????????????? //---------------转到与JSP对应的HTML页??

??????????????? response.sendRedirect(request.getContextPath()+"/"+name + ".html");??

??????????? } catch (Exception e) {??

??????????????? e.printStackTrace();??

??????????? }??

??????? }else{??

??????????? //----------如果存在指定的HTML,直接跳转到指定的HTML页??

??????????? response.sendRedirect(request.getContextPath()+"/"+name + ".html");??

??????? }??

??? }??

??? public void doPost(HttpServletRequest request, HttpServletResponse response)??

??????????? throws ServletException, IOException {??

??????? doGet(request, response);??

??? }??

??? public void init() throws ServletException {??

??????? // Put your code here??

??? }??

}??

web.xml??

?? <servlet>??
??? <servlet-name>ChangeHtml</servlet-name>??
??? <servlet-class>com.servlet.ChangeHtml</servlet-class>??
????? </servlet>??
<servlet-mapping>??
??? <servlet-name>ChangeHtml</servlet-name>??
??? <url-pattern>/changeHtml</url-pattern>??
</servlet-mapping>??
?? <filter>??
??? <filter-name>jspfilter</filter-name>??
??? <filter-class>com.servlet.JspFilter</filter-class>??
</filter>??
<filter-mapping>??
??? <filter-name>jspfilter</filter-name>??
??? <url-pattern>*.jsp</url-pattern>??
</filter-mapping>??
<servlet>??
??? <servlet-name>conversion</servlet-name>??
??? <servlet-class>com.servlet.ConversionServlet </servlet-class>??
</servlet>??
<servlet-mapping>??
??? <servlet-name>conversion</servlet-name>??
??? <url-pattern>/conversion</url-pattern>??
</servlet-mapping>

读书人网 >CSS

热点推荐