Logica para busca em banco de dado na pagina jsp

bom pessoal meu problema é o seguite, to criando uma aplicação que acessa um banco de alunos e faz uma busca por RA trazendo os dados do aluno só que consegui fazer isto pra
ser exibido no console, criei uma pagina JSP e com um local para digitar o RA e um botão de busca. mas não sei como fazer a jsp buscar essas informações nas minha classes. ou seja relacionas a pagina com o selecte de busca que tem na minha classe.
se alguem puder me ajudar agradeço. segue o codigo;

package br.com.italo.alunos;

public class AlunosNovos {

	private Long alucod;
	private String alunom;
	
	public Long getAlucod(){
		return alucod;
	}
	public void setAlucod(Long alucod){
		this.alucod = alucod;
	}
	public String getAlunom(){
		System.out.println("chamando o get alunom");
		return alunom;
		
	}
	
	public void setAlunom(String alunom){
	this.alunom = alunom;
	
}

}
package br.com.italo.alunos;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;

public class ConnectionFactory {
	public Connection getConnection() throws SQLException {
		System.out.println("conectando ...");

		try {
			Class.forName("com.mysql.jdbc.Driver");
		} catch (ClassNotFoundException e) {
			throw new SQLException(e);
		}
		
		return DriverManager.getConnection("jdbc:mysql://localhost/waeora",
				"root", "root");
	}

}

package br.com.italo.alunos;

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import javax.swing.JOptionPane;

import br.com.italo.alunos.ConnectionFactory;

public class TestaConnection {





public static void main(String[] args) throws Exception {
	
	DriverManager.registerDriver (new com.mysql.jdbc.Driver());
	Connection connection =  new ConnectionFactory().getConnection();
	
	System.out.println("Conexão");
	
	
	//especifica o select
	
	String ra = JOptionPane.showInputDialog(null, "digite o ra");
	PreparedStatement stmt = connection.prepareStatement("select * from acalu where alucod ='"+ra+"'");
ResultSet rs = stmt.executeQuery();

while(rs.next()){
	
	String alucod = rs.getString("alucod");
	String alunom = rs.getString("alunom");
	//System.out.println(alucod + "::" + alunom);
	JOptionPane.showMessageDialog(null, alucod + ":" + alunom);
	
}
	
	
	System.out.println("conexão encerrada");
	connection.close();
	
}
}
package br.com.italo.alunoDAO;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import br.com.italo.alunos.AlunosNovos;
import br.com.italo.alunos.ConnectionFactory;

public class alunosDAO {
	private final Connection connection;
	
	public alunosDAO(){
		try{
			connection = new ConnectionFactory().getConnection();
		} catch(SQLException e){
			throw new RuntimeException(e);
		}
	}
	
	public List<AlunosNovos> lista(){
		try{
			List<AlunosNovos> alunos = new ArrayList<AlunosNovos>();
			PreparedStatement stmt = this.connection.prepareStatement("select * from acalu");
			
			ResultSet rs = stmt.executeQuery();
			
			while (rs.next()){
				//Adiciona alunos na lista
				alunos.add(populaAluno(rs));
			}
			rs.close();
			stmt.close();
			return alunos;
		} catch (SQLException e) {
			throw new RuntimeException(e);
		}
	}
public AlunosNovos buscaAlucod(Long alucod){
	try{
		PreparedStatement stmt = this.connection 
				.prepareStatement("select * from acalu where alucod = ?");
		stmt.setLong(1, alucod);
		
		ResultSet rs = stmt.executeQuery();
		
		if(rs.next()){
			return populaAluno(rs);
		}
		rs.close();
		stmt.close();
		
		return null;
		
	}catch(SQLException e){
		throw new RuntimeException(e);
	}
}
private AlunosNovos populaAluno(ResultSet rs) throws SQLException{
	AlunosNovos alunos = new AlunosNovos();
	
	//popula o objeto Aluno
	alunos.setAlucod(rs.getLong("alucod"));
	alunos.setAlunom(rs.getString("alunom"));

return alunos;

}
}

use o framework hibernate para suas conexões

Olá diegorosa.

Antes de mais nada, me responda uma coisa: você está utilizando algum framework MVC nesse projeto?

não estou utilizando nenhum mvc estava pensando em utilizar servlet mas não consegui criar uma logica na verdade não sei criar essa logica para que oque foi digitado dentro do type texto RA quando pressionado o botão buscar ele realize a logica e busque os dados no banco. inclusive a pagine que criei de inicio é simples é aseguinte

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Consulta Aluno</title>
</head>
<body>

<form action="BuscaRa">
<table>

<tr>
	<td>RA:<input type = "text" name="ra" /><br/></td>
	<tr>
	
	<td><input type="submit" value="BUSCAR" /></td>
	</tr>
	
</table>
</form>
</body>
</html>

Olá diegorosa.

Pelo que vejo você não possui conhecimento do padrão MVC. Então vou lhe dar alguns conselhos:

1 - Antes de continuar o desenvolvimento do que você deseja, dê uma lida sobre o padrão arquitetural MVC. Não há como desenvolver uma aplicação sem dominar e entender perfeitamente como funciona esse pattern. A Caelum disponibiliza a apostila FJ-21 que explica os conceitos essenciais para o desenvolvimento de uma aplicação web em Java. Se você já conhece o básico de Servlet e JSP, então dê uma lida no Capítulo 9 que explica o MVC.
2 - Nos dias atuais é inviável desenvolver uma aplicação web usando apenas Servlet e JSP. Por quê? O contato direto com a API de Servlets é complexo e totalmente improdutivo. Para isso existem os frameworks MVC como Struts, VRaptor, JSF, Spring MVC e etc. O que eles fazem? Encapsulam toda a parte complexa da API de Servlets tornando o desenvolvimento bem fácil e altamente produtivo.
3 - Nada impede de você usar JDBC em sua aplicação, porém atualmente não é aconselhável pois há ferramentas que vieram para suprir as dificuldades existentes entre os dois mundos: banco de dados e orientação a objetos. Dê uma lida sobre JPA e Hibernate.

Bom, tudo que disse acima são apenas conselhos e por favor, não me leve a mal. Em relação ao que você deseja fazer, vou lhe explicar o funcionamento básico de transferência de dados entre um JSP e uma Servlet. O que uma Servlet faz? Ela simplesmente tem o comportamento de um pequeno servidor, ou seja, ela recebe uma solicitação(request) do cliente, faz o seu processamento e retorna uma resposta(response). Esse é o fluxo básico de comunicação do cliente com a Servlet. Você irá precisar de um Servlet Container para “armazenar” essas Servlets. Há um cara famoso no mercado que faz isso, chamado Tomcat. Bom, você possui um formulário com um botão “Buscar”, certo? Então precisamos fazer com que quando esse botão for pressionado alguém possa tratar essa solicitação. Como você já deve estar imaginando, vamos precisar de uma servlet. O formulário possui um atributo action. Qual a finalidade desse atributo? Informar qual a servlet que será responsável por tratar essa requisição. Mas há um porém: o servlet container (Tomcat) não sabe quais são as Servlets existentes em nosso projeto. Temos que informar isso para ele. Como isso é feito? Através de um arquivo chamado web.xml, existente em todo projeto web. Esse tipo de associação é chamado mapeamento, ou seja, iremos dar um apelido a Servlet que criamos para podermos utiliza-lá em nossos JSPs. No exemplo abaixo irei mostrar as três coisas básicas que você precisará:
1º - Criar a Servlet responsável por tratar a requisição
2º - Mapear a Servlet no web.xml
3º - Criar o JSP que irá fazer a solicitação (request)

Servlet:

public class BuscaAlunoPorRAServlet extends HttpServlet {
	
	@Override
	protected void service(HttpServletRequest req, HttpServletResponse resp)
			throws ServletException, IOException {
		//captura o valor vindo do formulario
		//o valor passado como parametro no getParameter deve
		//ser o nome existente no atributo name do input
		String ra = req.getParameter("ra");
		
		String mensagem = "";
		if(ra == null || ra.equals("")) {
			mensagem = "O RA não foi informado!";
		} else {
			AlunoDAO dao = new AlunoDAO();
			Aluno aluno = dao.buscaAlunoPorRA(ra);
		}
		...continua a lógica desejada
	}
}

web.xml

  <servlet>
  	<servlet-name>buscaRA</servlet-name>
  	<servlet-class>br.com.guj.servlet.BuscaAlunoPorRAServlet</servlet-class>
  </servlet>
  <servlet-mapping>
  	<servlet-name>buscaRA</servlet-name>
  	<url-pattern>/buscaRA</url-pattern>
  </servlet-mapping>

JSP

<%@ page language="java" contentType="text/html; charset=ISO-8859-1"
    pageEncoding="ISO-8859-1"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>Busca de Aluno</title>
</head>
<body>
	<form action="buscaRA">
		RA: <input type="text" id="ra" />
	</form>
</body>
</html>

Coisas importantes: o valor mencionado no atributo action do form deverá ser idêntico ao valor existente no do arquivo web.xml.
Todos esses conceitos básicos estão descritos de forma muito didática na apostila FJ-21 disponibilizada pela Caelum.

Espero ter clareado as coisas para você.
Abraços!

[quote]Muito Obrigado fabio conseguiu clarear bastante, desculpa minha ignorancia mas continuo pesquisando mais, porque mesmo seguindo sua instruções não foi executada a logica.
gostaria de no campo quando eu digitase o RA e executase o clik de buscar ele retornase o valor buscado no banco