站點的網站計數器的操作
<%@ page import="java.math.BigInteger" %>
<%@ page import="java.io.File" %>
<%@ page import="java.util.Scanner" %>
<%@ page import="java.io.FileInputStream" %>
<%@ page import="java.io.PrintStream" %>
<%@ page import="java.io.FileOutputStream" %>
<%@ page import="java.util.zip.InflaterOutputStream" %><%--Created by IntelliJ IDEA.User: mingDate: 19-3-12Time: 下午10:25To change this template use File | Settings | File Templates.
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head><title>Title</title>
</head>
<body>
<%// 定義全局變量BigInteger count = null;
%>
<%!// 獲取計數器public BigInteger load(File file){BigInteger count = null;try{// 若文件存在則讀取if(file.exists()){Scanner scanner = null;// 獲取到文件的輸入流scanner = new Scanner(new FileInputStream(file));// 對計數器內容進行加1if(scanner.hasNext()){count = new BigInteger(scanner.next());}scanner.close();}else{count = new BigInteger("0");save(file, count);}}catch (Exception e){e.printStackTrace();}return count;}// 計數文件保存回文件public void save(File file, BigInteger count){try{PrintStream printStream = null;printStream = new PrintStream(new FileOutputStream(file));// 流中輸入對象printStream.println(count);printStream.close();}catch (Exception e){e.printStackTrace();}}
%>
<%// 獲取文件路徑String fileName = this.getServletContext().getRealPath("/") + "count.txt";// 定義file對象File file = new File(fileName);// 進行加if(session.isNew()) {synchronized (this) {count = load(file);System.out.println(count);count = count.add(new BigInteger("1"));save(file, count);}}
%>
您是第<%=count%>
</body>
</html>
web映射
文件保存在WEB-INF文件夾下,永遠無法訪問,此時,需要修改/WEB-INF/web.xml文件即可,達到映射的目的
修改xml文件如下
<!DOCTYPE web-app PUBLIC"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN""http://java.sun.com/dtd/web-app_2_3.dtd" ><web-app><display-name>Archetype Created Web Application</display-name><servlet><servlet-name>he</servlet-name><jsp-file>/WEB-INF/he.jsp</jsp-file></servlet><servlet-mapping><servlet-name>he</servlet-name><url-pattern>/hello</url-pattern></servlet-mapping>
</web-app>
直接更新,但不重啟,發現不能加載.
此時.即Tomcat需要重寫配置屬性
此時訪問
http://localhost:8080/hello
即可訪問
config
config用于獲得