发现并更正一个博客网站的错误
可以看出来原来这位同学的储存路径有一定的问题
我经过一定的思考,
User.txt 实际位置改了,但是这里路径没改
改完之后,注册成功直接跳转到FirstPage了
还有一个经常出现的就是空指针
之前先检验一下String是否为空即可
具体改进代码由下图所示
import javax.servlet.RequestDispatcher;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
/**
* Servlet implementation class DeleteTopicById
*/
@WebServlet("/DeleteTopicById")
public class DeleteTopicById extends HttpServlet {
private static final long serialVersionUID = 1L;
/**
* @see HttpServlet#HttpServlet()
*/
public DeleteTopicById() {
super();
// TODO Auto-generated constructor stub
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=UTF-8");
String str=request.getParameter("theme");
int theme=Integer.parseInt(str);
str=request.getParameter("topicId");
int topicId=Integer.parseInt(str);
String first="C:\\Java\\eclipse-workspace\\Blog\\WebContent\\store\\topic\\topic";
String second=".txt";
String src=first+theme+second;
FindTopic ft=new FindTopic(request, response);
ArrayList<Topic> SelectTopic=ft.FindTopicByTheme(theme);
FileWriter fw=new FileWriter(src,false);
BufferedWriter bw=new BufferedWriter(fw);
bw.close();
fw.close();
for(Topic t:SelectTopic)
{
if(t.getTopicId()!=topicId)
t.saveTopic();
}
int count=0;
int index=0;
HttpSession session=request.getSession();
ArrayList<Topic> allTopic=(ArrayList<Topic>)session.getAttribute("TotalTopic");
for(Topic x:allTopic)
{
if(x.getTopicId()==topicId)
index=count;
count++;
}
allTopic.remove(index);
RequestDispatcher rd=request.getRequestDispatcher("UserCenter.jsp");
rd.forward(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}