Como Gravar dados em um arquivo?

Fala galera do GUJ estou com a duvida que seria a seguinte tenho um fomulario em html que chama o meu Servlet para validar se todos estam preenhidos ou não se estiverem preenchidos vai para outra pagina html de confirmação se não para uma pagina de erro mas o que o ocorre eu gostaria de gravar este dados em um arquivo sera que alguem pode me dar uma força de como fazer isso abaixo esta meu Servlet atual

import java.io.*;
import java.util.*;
import javax.servlet.*;
import javax.servlet.http.*;


public class Cadastro extends HttpServlet
{
	public void doPost(HttpServletRequest request, HttpServletResponse response)
    throws IOException, ServletException
	{
			   
	    PrintWriter out = response.getWriter();
	
	String nome = request.getParameter("nome");
	String endereco = request.getParameter("endereco");
	String email = request.getParameter("email");
	String cpf = request.getParameter("cpf");
	String telefone = request.getParameter("telefone");
	String dtn = request.getParameter("dtn");

	if( nome == null || endereco == null || email == null || cpf == null || telefone == null || dtn == null) 
	{
		response.sendRedirect("erro.html");	
	}

	if(nome.equals("") || endereco.equals("") || email.equals("") || cpf.equals("") || telefone.equals("") || dtn.equals(""))
	{
		response.sendRedirect("erro.html");
	}
	else
	{
		response.sendRedirect("efetuado.html");
	}
		
	}
	
}

Desde ja agardeço :wink:

acho que isso pode te ajudar.

[]'s

Andre, quando voce tem algo que repete muito no codigo, ou que nao tenha muito a ver com a acao do metodo, o ideal eh voce quebrar as tarefas em partes. No teu caso, a validacao dos campos null pode ser delegada para um metodo a parte, assim como usar um metodo que ja verifique para voce se o valor nao eh null nem vazio… Por exemplo:

private boolean isEmpty(String value) {
	return (value == null || value.trim().equals(""));
}

....

if (this.isEmpty(nome) || this.isEmpty(endereco) || this.isEmpty(email) || this.isEmpty(cpf)
	|| this.isEmpty(telefone) || this.isEmpty(dtn)) {
	response.sendRedirect("erro.html");
}
else {
	response.sendRedirect("efetuado.html");
}

Melhorando um pouco mais ainda, voce poderia delegar toda a validacao para um metodo a parte:

private boolean checkValues(String[] v) {
	for (int i = 0; i < v.length; i++) {
		if (this.isEmpty(v[i])) {
			return false;
		}
	}

	return true;
}

...

if (!this.checkValues(new String[] { nome, endereco, email, cpf, telefone, dtn })) }
	response.sendRedirect("erro.html");	
}
else {
	response.sendRedirect("efetuado.html");
}

A ideia geral eh voce delegar responsabilidades e reutilizar codigo.

Rafael

Po valeu esta parada de reutilização do codigo na sabia dessa forma que me ensinou