package com.myweb7_count;
import java.io.IOException;
import java.io.PrintWriter;
import java.sql.SQLException;
import java.util.Random; //yntax error on token ";", import expected after this token
java.sql.Connection;
import javax.servlet.ServletException;
import javax.servlet.http.Cookie;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.xml.ws.Response;
import com.mysql.jdbc.Connection;
import com.mysql.jdbc.PreparedStatement;
public class CountServlet extends HttpServlet {
public Random random=new Random();
private static final long Random = 0;
/**
* Constructor of the object.
*/
public CountServlet() {
super();
}
/**
* Destruction of the servlet. <br>
*/
public void destroy() {
super.destroy(); // Just puts "destroy" string in log
// Put your code here
}
/**
* The doGet method of the servlet. <br>
*
* This method is called when a form has its tag value method equals to get.
*
* @param request the request send by the client to the server
* @param response the response send by the server to the client
* @throws ServletException if an error occurred
* @throws IOException if an error occurred
*/
public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String id=null;
Cookie[] cookies=request.getCookies();
if(cookies!=null){
for (Cookie cookie : cookies) {
if(cookie.getName().equals("count_id")){
id=cookie.getValue();
break;
};
}
}
if(cookies==null){ //新客户
id=System.currentTimeMillis()+"R"+random.nextInt(1000)+"R"+random.nextInt(100000);
Cookie cookie=new Cookie("count_id", id);
cookie.setMaxAge(60*60*24*30);
response.addCookie(cookie);
}
//发送过来的页面
String page=request.getParameter("page");
java.sql.Connection conn=null;
try {
conn=DBManager.getDBManager().getConn();
java.sql.PreparedStatement pst=conn.prepareStatement("INSERT INTO INFOS(bh,rq,ctime,pagename,ip,port)values(?,?,sysdate(),?,?.?)");
pst.setString(1, id);
pst.setString(2, "");
pst.setString(3,page);
pst.setString(4, request.getRemoteAddr());
pst.setInt(5, request.getRemotePort());
pst.executeQuery();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
finally{
try {
conn.close();
} catch (SQLException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
response.setContentType("text/html;charset=utf-8");
PrintWriter out=response.getWriter();
}
/**
* Initialization of the servlet. <br>
*
* @throws ServletException if an error occurs
*/
public void init() throws ServletException {
// Put your code here
}
}
import
java.sql.Connection;