发现并更正一个博客网站的错误

 

 可以看出来原来这位同学的储存路径有一定的问题

我经过一定的思考,

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);

}

 

}

posted @ 2021-03-11 23:42  hchacker  阅读(57)  评论(0)    收藏  举报