miércoles, 25 de agosto de 2010

HIBERNATE HQL


¿Cómo consultar utilizando parámetros con nombres?
Para usar la condición LIKE con un signo "%" para coincidencia de patrones en una consulta HQL con parámetros con nombre requiere algunos ajustes.
Para los que estamos familiarizados con el uso de consultas SQL podríamos pensar que algo así funcionaria:

String query = "from user u where u.name like '%:name%'"
getHibernateTemplate().findByNamedParam(query, "name", str);

Pero no, el resultado fue: org.hibernate.QueryException: char inesperada: "% error".
Lo que realmente funcionó fue poner el "%" signos en el parámetro, para que nos quede algo así:

String query = "from user u where u.name like :name"
getHibernateTemplate().findByNamedParam(query, "name", '%' + str + '%');

 Referencias:
Hibernate: a developer's notebook, por James Elliot

Ingreso de Rubro por Becario

Para la presentacion de nuestro avance se realizara el ingreso de rubros con sus respectivos valores por parte del Becario.

Los campos que se registraran seran:
  • Tipo de Rubro
  • Fecha en que se realizo el gasto
  • Valor del egreso
  • Una pequeña descripcion del egreso.

La imagen anterior muestra los campos que el becario debe ingresar, es un esquematico que solo representa los campos, no posee ningun tipo de diseño.

El combo que aparece para cada usuario depende de lo que el administrador haya seleccionado, ya que se genera desde la base de datos los diferentes rubros.

Para realizar el INSERT dentro de la base de datos, con los valores que ingreso el usuario se utiliza el siguiente codigo:

Session session = HibernateUtil.getSessionFactory().openSession();
session.beginTransaction();
session.save(this);
session.getTransaction().commit();
HibernateUtil.getSessionFactory().close();

Esta funcion se la debe colocar en cada clase donde se vaya a registrar en la base de datos. O crear una funcion de manera generica para que se la llame a esta enviando el objeto a almacenar.

Generación de Menús Dinámicos

Para la generación de Menús Dinámicos en nuestra aplicación hemos creado la página login.jsp la cual consta del siguiente codigo:

En esta página los usuarios que quieran acceder a nuestra aplicación deberán ingresar con su respectivo user y password.
Y dependiendo del rol que tenga el usuario que ha ingesado a nuestra aplicación, se generará un menú.

En la base de datos están guardados los permisos respectivos (Los menús a los que se tiene acceso) para cada rol.
Para la generación de los menús en el servlet hemos hecho uso de la librería JSTL. En el Servlet tomamos los datos de la base de datos y llenamos una lista con los permisos respectivos dependiendo del rol.
Y en la vista hemos mostrado los menus en pantalla utilizando EL, tal como se muestra acontinuación:

Generando Menus Dinámicos

La librería JSTL es un componente dentro de la especificación del Java 2 Enterprise Edition (J2EE) y es controlada por Sun MicroSystems. JSTL no es más que un conjunto de librerías de etiquetas simples y estándares que encapsulan la funcionalidad principal que es usada comúnmente para escribir páginas JSP.

Nosotros estamos haciendo uso de la core, que comprende las funciones script básicas como loops, condicionales, y entrada/salida.

Creamos una lista de enlaces con las opciones que tiene el usuario, y generamos el menu dependiendo del rol que tenga el usuario, ya sea este becario o admin.




lunes, 23 de agosto de 2010

Registro de los Egresos por Becario

CREAR LOS CAMPOS EN LA BASE DE DATOS

Nuestra aplicacion registrar los gastos que tiene cad becario cuando se encuentra en el exterior, gracias al inicio de sesion, se podra saber que becario es, cuanto tiene como valores maximo para los gastos, he ir restando este valor maximo por mes.

Luego de que se ha creado la base de datos, para poder realizar este tipo de transaccion, se deben registrar los campos necesarios para poder tomar datos relacionados.
Las tablas que necesitamos son:
  • Estudiante
  • Universidad
  • Beca
  • Rubro
  • Rubro x Beca
La tabla se que llenara con los datos que registre el Becario, se guarda en la base de datos en la tabla DETALLEGASTOS.

jueves, 19 de agosto de 2010

Base de Datos Becarios

Hemos creado una base de datos inicial, la cual cumple de alguna manera los especificado en los requisitos del sistema:

Debera programarse un sistema para la administracion y consulta de informacion manejada por el departamento de Relaciones Externas de ESPOL.
Se manejara informacion sobre los convenios con otras universidades y estudiantes que hacen uso de esos convenios. Ademas se manejara informacion de personas que reciban dinero de ESPOL para estudio de past-grado.
Para becarios de ESPOL la aplicacion permitira ingresar cuanto gasta cada becario y presentara resumenes mensuales/anuales de gastos y resumenes por rubros. Estos Rubros son:
  • Libros
  • Tesis
  • Matriculas/Tuition
  • Viajes a conferencias
Por este parrafo de descripcion de proyecto y un poco mas de informacion, generamos la siguiente base de datos que cumple con algunos requisistos antes mencionados.


Esta base contiene las siguientes tablas:
>Estudiante: Que este caso seria el becario, se tiene informacion como Codigo, Matricula, Nombre, Apellido, Fecha de Nacimiento y Estado (activo/inactivo).
>Contacto: Esta tabla permite tener informacion de una o varias personas relacionadas al ESTUDIANTE que vive en el pais y nos servira como contacto o representante del estudiante.
>Universidades: Esta tabla nos permite tener cierta informacion importante sobre las universidades con las que la ESPOL posee convenios; datos como: Nombre, Ciudad, Pais, Coordenas (para poder colocarlo en el mapa de google)
>Rubros: En esta tabla se ingresan los diferentes rubros que la ESPOL posee para facilitar a los Becarios.
>Becas: Esta tabla contiene informacion relacionada a cada estudiante y universiadad a la que fue a estudiar, posee campos como VALOR lo cual indica que costo tuvo para la institucion esta beca.
>Rubros por Beca: En esta tabla se va detallando cual es el valor maximo que cierto becario puede gastar en un determinado periodo de tiempo, esto nos ayudara a controlar los valores maximos que cada estudiante puede gastar.


Como podemos observar esta base cumple con requisitos importantes de la descripcion y ademas no ayudara a realizar cierto tipo de reportes o consultas que luego son solicitadas (reporte mensual, reporte anual, reporte por rubro, etc).



YUI - Ejemplo

Como puedimos observar YUI es una libreria muy extensa, que te permite crear multiples funciones para agregar a tu pagina web.

Te da muchas facilidades y te permite traer objetos ya creados a tu pagina, solo con configurar los parametros, colocarle ciertos atributos de diseño se podra tener una pagina muchos mas amigable sim mayor esfuerzo.

A continuacion se agregara un pequeño codigo donde se genera un calendario completo, que marca la fecha actual y que permite recorrerlo de una manera dinamica.


Como podemos ver, es muy facil crear un calendario con dicha libreria, basta colocar:
var myCal = new YAHOO.widget.Calendar("mycal");
myCal.render();
y obtenemos en nuestra pagina un nuestro calendario.

"Yahoo User Interface(YUI), como una serie de librerías escritas en JavaScript, para la construcción de aplicaciones interactivas (RIA). Liberadas bajo licencia BSD por parte de la compañía Yahoo. Dichas librerías son utilizadas para el desarrollo web específicamente para ser usadas como la programación de aplicaciones de escritorio, con componentes vistosos y personalizables y con una amplia implementación con AJAX." (Traido desde: http://tutecnologo.com/?p=310)

miércoles, 18 de agosto de 2010

Libreria YUI

YUI
Posteado por: Consuelo Cordero

La librería YUI incluye los siguientes cuatro componentes de CSS que se pueden utilizar de forma separada, conjunta o combinada de cualquier forma:

- reset.css: conjunto de estilos que eliminan y neutralizan todas las inconsistencias en el estilo por defecto que aplican los navegadores a los elementos HTML.
- base.css: conjunto de estilos que se pueden aplicar después de neutralizar los estilos por defecto del navegador y que muestran cada elemento HTML de forma adecuada.
- fonts.css: conjunto de estilos que permiten mostrar el texto con un tamaño consistente en cualquier navegador.
- grids.css: conjunto de estilos que permiten crear cientos de layouts o estructuras de páginas comunes.

Los componentes CSS de YUI funcionan tanto en el modo quirks como en el modo standards de los navegadores. No obstante, YUI recomienda activar el modo standards utilizando el siguiente DOCTYPE en las páginas:



Los grid se basan en el ancho de un " em "proporcionada por fuentes CSS. YUI Grids CSS proporciona un sistema de subdivisión de las secciones de su página con rejillas encajables. Utilice esta técnica para crear fácilmente diseños complejos que van más allá de los dos diseños de la columna que ofrece la plantilla de ajustes preestablecidos.

YUI Grids CSS funciona bien con los dispositivos móviles de gama alta en la que hemos probado. En concreto, las versiones de Webkit encontrado en los teléfonos Nokia N-Series y el iPhone de Apple tanto en diseños de rejillas hacen bien. Ambos modos de navegadores "vista de pájaro le dará una imagen de alto nivel de la página. En el iPhone, se puede navegar rápidamente a una subsección específica de una cuadrícula haciendo doble clic en él; procesador del iPhone correctamente realiza un zoom sobre las unidades de cuadrícula como cabría esperar. Cualquiera de los ejemplos Grids encontrar aquí se puede utilizar como punto de partida para la evaluación de la experiencia del usuario con estos dispositivos.

Desde una perspectiva de diseño, Grids CSS es probablemente una buena opción para las aplicaciones que están destinados a ser consumidos por los navegadores para PC como para navegadores móviles de categoría, porque el modelo de Grids tiende a asumir un mayor tamaño de pantalla, no se recomienda como punto de partida para las aplicaciones que se específica para móviles.


Fuentes:
http://developer.yahoo.com/yui
http://developer.yahoo.com/yui/examples/grids/
http://www.librosweb.es/css_avanzado/capitulo5/el_framework_yui.html

Librería YUI

Publicado por: Estefanía Morán Meza

Qué es Yui?

Yui es un set de utilidades y controles escritos en JavaScript, para crear aplicaciones web interactivas usando DOM, DHTML, AJAX y CSS.

Porqué utilizar Yui?

Es OpenSource bajo la licencia BSD y es libre para cualquier tipo de uso.
Es soportada por los principales browsers.
Tiene la comunidad de desarrolladores de Yahoo como respaldo y soporte.
Estructura modularizada y ordenada.

Ejemplo de Yui: DataTable de control: datos XML


JavaScript
YAHOO.util.Event.addListener(window, "load", function() {
YAHOO.example.XPath = function() {
var myColumnDefs = [
{key:"type"},
{key:"rank"},
{key:"subnameatt"},
{key:"age"},
{key:"name"}
];

var myDataSource = new YAHOO.util.DataSource("assets/php/xml_proxy.php");
myDataSource.responseType = YAHOO.util.DataSource.TYPE_XML;
myDataSource.useXPath = true;
myDataSource.responseSchema = {
metaFields: {rootatt:"/myroot/@rootatt", topnode:"//top", nestedatt:"//second/@nested"},
resultNode: "item",
fields: [{key:"type", locator:"@type"}, {key:"rank", parser:"number"}, "name", {key:"subnameatt", locator:"subitem/name/@type"}, {key:"age", locator:"subitem/age", parser:"number"}]
};

var myDataTable = new YAHOO.widget.DataTable("xpath", myColumnDefs, myDataSource);

return {
oDS: myDataSource,
oDT: myDataTable
};
}();
});


Fuente: http://developer.yahoo.com/yui/examples/

DAW - Libreria YUI

Libreria YUI
Creado por: Gabriel Crespo

Para empezar a trabajar con YUI, lo primero que debes hacer es descargar la librería completa. Desde la página principal de YUI: http://developer.yahoo.com/yui/ se puede pulsar directamente sobre el botón Download YUI para que nos redirija automáticamente hasta la página de descarga de la version que deseamos o podemos ir directamente a la pagina donde se encuentran todas las versiones de YUI en funcionamiento: http://yuilibrary.com/downloads/ . La versión de YUI que se utiliza actualmente es la 2.8, aunque la versión en pruebas de YUI 3.1 ya se ha publicado. YUI 2.8 se descarga mediante un archivo comprimido que ocupa unos 10 Megabyte. Una vez descargado, descomprime el archivo en cualquier directorio del sistema y verás que incluye varios directorios. De todos ellos, los más importantes para nosotros son los siguientes:
  • docs: incluye páginas de documentación y ayuda sobre todos los componentes de YUI.
  • examples: incluye ejemplos de uso de todos y cada uno de los componentes de YUI.
  • build: incluye todos los archivos JavaScript y que se deben incluir en las páginas que utilizan YUI.

lunes, 9 de agosto de 2010

Conexion con la Base De Datos

Hibernate nos permite hacer un Mapeador Objeto-Relacional
Posteado por: Consuelo Cordero Urgilés

Si estás trabajando con programación orientada a objetos y bases de datos relacionales, seguramente habrás observado que estos son dos paradigmas diferentes. El modelo relacional trata con relaciones, y conjuntos -- es muy matemático por naturaleza. Sin embargo, el paradigma orientado a objetos trata con objetos, sus atributos y asociaciones de unos con otros. Tan pronto como quieras persistir los objetos utilizando una base de datos relacional observarás que: hay una desaveniencia entre estos dos paradigmas, la también llamada diferencia objeto-relacional. Un mapeador objeto-relacional (u ORM para abreviar) nos ayudará evitar esta diferencia.

Con un buen ORM puedes tomar los objetos Java que usas en tu aplicación y decirle al ORM que los persista:


orm.save(myObject);


Esto generará automáticamente todo el SQL necesario para almacenar el objeto. Un ORM te permite cargar tus objetos igual de fácilmente:


myObject = orm.load(MyObject.class, objectId);


Un buen ORM también aportará un buen lenguaje de consultas:



List myObjects = orm.find( "FROM MyObject object WHERE object.property = 5");



Observa que este es un ejemplo muy simple, y que tus consultas podrían ser más potentes. Podrían expandir múltiples asociaciones, por ejemplo:



List myObjects = orm.find( "FROM Person person WHERE person.marriedTo.address.street LIKE %something%");




Esto probablemente se traducirá a una sentencia SQL que utiliza múltiples uniones, que sería mucho más complicada de escribir. Un ORM también rellenará automáticamente los objetos devueltos con sus datos, e incluso sus asociaciones (si es necesario).




Creación de la consulta en el Editor de consultas HQL


En el IDE se puede construir y probar consultas basadas en el Lenguaje de consulta de Hibernate (HQL) usando el Editor de consultas HQL. A medida que escribes la consulta del editor muestra el equivalente (traducido) de consultas SQL. Al hacer clic en 'HQL consulta "botón Ejecutar en la barra de herramientas, el IDE ejecuta la consulta y muestra los resultados en la parte inferior del editor.

En este ejercicio se utiliza el Editor de HQL para la construcción de simples consultas HQL que recuperar una lista de "detalles sobre la base de los actores se pongan en venta el primer nombre o apellido. Antes de agregar la consulta a la clase que va a utilizar el Editor de consultas HQL para probar que la conexión está funcionando correctamente y que la consulta produce los resultados deseados.



1. Expanda el nodo de origen package>

2. Haga clic en hibernate.cfg.xml y seleccione Ejecutar consulta HQL para abrir el Editor HQL.

3. Pruebe la conexión escribiendo de actor en el Editor de consultas HQL. Haga clic en el botón Ejecutar    consulta HQL ( Run HQL Query button ) En la barra de herramientas.


Adición de la consulta para el formulario

Ahora debe modificar DVDStoreAdmin.java añadir las cadenas de consulta y crear los métodos para construir y activar una consulta que incorpora las variables de entrada. También es necesario modificar el controlador de eventos botón para invocar la consulta correcta y agregar un método para mostrar la resultados de la consulta en la tabla.

1. Abrir DVDStoreAdmin.java  y haga clic en la pestaña Fuente.
2. Añadir las cadenas de consulta siguientes (en negrita) a la clase.

public DVDStoreAdmin() {
initComponents();
}

private static String QUERY_BASED_ON_FIRST_NAME="from Actor a where a.firstName like '";

private static String QUERY_BASED_ON_LAST_NAME="from Actor a where a.lastName like '";
Es posible copiar las preguntas del Editor de consultas HQL fichas en el archivo y luego modificar el código.
3. Agregue los métodos siguientes para crear la consulta sobre la base de la cadena de entrada del usuario.

private void runQueryBasedOnFirstName() {
executeHQLQuery(QUERY_BASED_ON_FIRST_NAME + firstNameTextField.getText() + "%'");
}

private void runQueryBasedOnLastName() {
executeHQLQuery(QUERY_BASED_ON_LAST_NAME + lastNameTextField.getText() + "%'");
}
Los métodos de llamar a un método llamado executeHQLQuery () y crear la consulta mediante la combinación de la cadena de consulta con el usuario ha introducido cadena de búsqueda.
4. Agregue el executeHQLQuery () método.

private void executeHQLQuery(String hql) {
try {
Session session = HibernateUtil.getSessionFactory().openSession();
session.beginTransaction();
Query q = session.createQuery(hql);
List resultList = q.list();
displayResult(resultList);
session.getTransaction().commit();
}
catch (HibernateException he) {
he.printStackTrace();
}
}

El executeHQLQuery () método llama hibernación para ejecutar la consulta seleccionada. Este método hace uso de la clase de utilidad HibernateUtil.java para obtener la Session de Hibernate.
5.Fijar sus importaciones para añadir declaraciones de importación de las bibliotecas de Hibernate (org.hibernate.Query, org.hibernate.Session) y java.util.List.
6.Crear un botón Consultar controlador de eventos por el cambio a la vista Diseño y haga doble clic en el botón Consultar. El IDE crea el método queryButtonActionPerformed y muestra el método en la vista Código fuente.
7. Modifique el método queryButtonActionPerformed en la vista Código fuente, añadiendo el siguiente código de manera que una consulta se ejecuta cuando el usuario hace clic en el botón.

private void queryButtonActionPerformed(java.awt.event.ActionEvent evt) {
if(!firstNameTextField.getText().trim().equals("")) {
runQueryBasedOnFirstName();
}
else if(!lastNameTextField.getText().trim().equals("")) {
runQueryBasedOnLastName();
}
}
8. Agregue el método siguiente para mostrar los resultados en el JTable.

private void displayResult(List resultList) {
Vector tableHeaders = new Vector();
Vector tableData = new Vector();
tableHeaders.add("ActorId");
tableHeaders.add("FirstName");
tableHeaders.add("LastName");
tableHeaders.add("LastUpdated");
for(Object o : resultList) {
Actor actor = (Actor)o;
Vector oneRow = new Vector();
oneRow.add(actor.getActorId());
oneRow.add(actor.getFirstName());
oneRow.add(actor.getLastName());
oneRow.add(actor.getLastUpdate());
tableData.add(oneRow);
}
resultTable.setModel(new DefaultTableModel(tableData, tableHeaders));
}
9. Fijar sus importaciones para agregar java.util.Vector y guardar los cambios. Después de guardar el formulario que usted puede ejecutar el proyecto. 


FUENTES:


http://www.programacion.com/articulo/persistencia_de_objetos_java:_el_camino_hacia_hibernate_251

http://translate.google.com.ec/translate?hl=es&sl=en&u=http://netbeans.org/kb/docs/java/hibernate-java-se.html&ei=-ENgTJ_aGcOBlAfg2IWaCA&sa=X&oi=translate&ct=result&resnum=1&ved=0CCEQ7gEwAA&prev=/search%3Fq%3Dusing%2Bhibernate%2Bjava%2Bswing%2Bapplication%26hl%3Des%26sa%3DX

domingo, 8 de agosto de 2010

Como añadir Google Map a tu pagina Web

Publicado por Estefania Morán

Aqui encontre algunas de las funciones que me sirven para el desarrollo de la tarea.
Fuente: http://www.maestrosdelweb.com/editorial/trabajando-con-el-api-de-google-maps/

Trabajando con el API de Google Maps

Mediante el API que nos ofrecen Google Maps los desarrolladores del servicio podremos hacer uso de sus bondades. En este artículo pretendemos explicar los aspectos más relevantes de este API.
Google Maps es un servicio gratuito que nos ofrece Google con mapas desplazables del mundo entero, fotos satelitales, la ruta más corta entre diferentes ubicaciones y muchas características interesantes. Es semejante a Google Earth; una aplicación para Windows, Mac y Linux; pero con la diferencia que Google Maps es fácilmente integrable a cualquier sitio web.

¿Cómo integro un mapa de Google Maps a mi web?

Insertar un mapa en nuestro sitio web es muy simple haciendo uso de la API de Google Maps. Lo primero es solicitar nuestra API Key, debemos especificar en qué URL vamos a utilizar nuestro mapa.
Aunque es recomendable solicitar una para la dirección http://localhost con esta hagamos los ajustes necesarios y una vez que nuestro código esté listo cambiar la API Key por la de nuestro sitio en Internet para publicar la página.
Aquí tenemos una muestra del código que nos proporciona Google Maps para que utilicemos. Es importante destacar que debemos remplazar el texto resaltado en el código: COLOCAR_AQUI_NUESTRA_KEY por nuestro API Key, para que funcione correctamente.
    
    Google Maps JavaScript API Example
    
    
A continuación utilizaremos este código para explorar algunas, de las múltiples características que podemos explotar con el API de Google Maps.

¿Cómo iniciar el mapa en coordenadas específicas?

En el código que nos ofrece Google Maps para utilizar en nuestra web está predeterminada la ubicación de Palo Alto en Estados Unidos; pero podemos cambiarla estableciendo nuevas coordenadas. En el código siguiente establecimos la ubicación del mapa en la isla Madagascar, al sur de África:
function load() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(-19.435514, 48.603516), 13);
      }
}
Hasta ahí todo está muy bien, pero cómo obtenemos las coordenadas de la ubicación que deseamos. Para esto entremos a www.maps.google.es y posicionémonos donde queremos que aparezca nuestro mapa, luego copiemos el vínculo que aparece en la parte superior derecha del mapa con el texto: “Enlazar con esta página”, que sería algo como esto:
http://maps.google.es/?ie=UTF8&ll=-19.435514,48.603516&spn=17.554213,29.882813&z=5&om=1
En el parámetro ll se almacena la latitud y longitud, respectivamente, de la ubicación que estamos observando. Copiamos esos números, los pegamos en la parte del código del API que explicaba anteriormente y hemos logrado cambiar las coordenadas iniciales de nuestro mapa.

¿Cómo establecemos el nivel de Zoom inicial?

También podemos especificar el nivel de zoom que deseamos que tenga nuestro mapa al mostrarse. Logramos esto variando el segundo parámetro del método setCenter. Por defecto está establecido en 13, pero en el código que mostramos a continuación lo hemos establecido en 5. Mientras más pequeño sea el número más cerca estaremos del mapa.
function load() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(-19.435514, 48.603516), 5);
      }
}

¿Cómo añadir controles?

Quizás nos interese que nuestro mapa tenga controles de zoom o navegación. Pues a continuación explicaremos cómo insertarlos. Simplemente agregaremos una línea dentro de nuestra instrucción IF, con el método addControl de nuestro objeto map, especificando qué tipo de control queremos insertar, como se muestra en el código:
function load() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(-19.435514, 48.603516), 5);
        map.addControl(new GMapTypeControl());
        map.addControl(new GLargeMapControl());
        map.addControl(new GScaleControl());
        map.addControl(new GOverviewMapControl());
      }
    }
En el ejemplo anterior hemos agregado a nuestro mapa un selector del tipo de mapa (GMapTypeControl), un control de desplazamiento con una barra de zoom (GLargeMapControl), la escala del mapa (GScaleContro) y un mini-mapa en una esquina que nos indica la región que estamos visualizando (GOverviewMapControl). Para mayor información sobre los controles que podemos incluir vea la ayuda de la API.

¿Cómo cambiar el tipo de mapa?

Con el control para seleccionar el tipo de mapa que agregamos podemos seleccionar entre: Mapa, Satélite e Híbrido; pero podemos especificar con cuál queremos que se muestre inicialmente nuestro mapa utilizando el método setMapType del objeto map, que puede tomar los valores: G_MAP_TYPE (Mapa), G_SATELLITE_TYPE (Satélite) y G_HYBRID_TYPE (Híbrido).
En nuestro código de ejemplo insertamos una línea para especificar que nuestro mapa inicie en modo Híbrido.
function load() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(-19.435514, 48.603516), 5);
        map.addControl(new GMapTypeControl());
        map.addControl(new GLargeMapControl());
        map.addControl(new GScaleControl());
        map.addControl(new GOverviewMapControl());
        map.setMapType(G_HYBRID_TYPE);
      }
    }

¿Cómo insertar marcas a nuestro mapa?

Las marcas son muy útiles para resaltar ubicaciones. Con la función GMarker() podremos crear una marca en el punto que le pasamos como parámetro y la función addOverlay() nos sirve para adicionar la marca al mapa.
En el código siguiente hemos agregado una marca en la posición -19.000514, 46.603516. Aproximadamente el centro de la isla Madagascar.
function load() {
      if (GBrowserIsCompatible()) {
        var map = new GMap2(document.getElementById("map"));
        map.setCenter(new GLatLng(-19.435514, 48.603516), 5);
        map.addControl(new GMapTypeControl());
        map.addControl(new GLargeMapControl());
        map.addControl(new GScaleControl());
        map.addControl(new GOverviewMapControl());
        map.setMapType(G_HYBRID_TYPE);
        var point = new GLatLng(-19.000514,46.603516);
        map.addOverlay(new GMarker(point));
      }
En el código anterior hemos utilizado la función GLatLng() para declarar un punto en la ubicación que deseamos poner la marca, luego hemos creado una marca con GMarker() y la hemos agregado a nuestro mapa haciendo uso de addOverlay().


jueves, 5 de agosto de 2010

Daw - Google Maps Api

Google Maps API
Creado por: Gabriel Crespo
Para empezar debemos empezar por comprender que es Google Maps, para tener una idea de lo que es podemos encontrar informacion en el apartado Google Code http://code.google.com/intl/es-ES/apis/maps/index.html en el cual podremos encontrar un enlace para accedet a la ultima versión del Api de Google Maps, la cual se encuentra en la version 3.0 actualmente.

La Documentación del Api se encuentra dada por Google en :  http://code.google.com/intl/es-ES/apis/maps/documentation/javascript/reference.html
Además aqui encontraremos un tutorial con un práctico ejemplo del api: http://code.google.com/intl/es-ES/apis/maps/documentation/javascript/tutorial.html
Hibernate