para web
Java server faces aca podes usar spring aunque no es necesario ya que jsf trae su inyeccion de dependencias para usar ajax puede usar primefaces,ifaces,richfaces hay varios tambien puedes usar hibernate este es un orm.este ultimo es bastante complicado diria yo pero queda una interfaz bien hecha
tambien le puedes dar una vuelta a GWT Google web Toolkit,es bastante facil lo puedes integrar con hibernate,
hay otros mas puedes tomar el que te tome menos tiempo dominarlo ya que nuestro gran enemigo es el tiempo y cuando son desarrollos y agarrar una herramientas nueva puede ser peligroso.