Développement

Envoyer un mail avec PL/SQL

Posted by karl verger on March 1, 2008 at 6:38 pm

Petit exemple vous permettant d’envoyer un email à partir
de votre base ORACLE.

CREATE OR REPLACE PROCEDURE ENVOI_MAIL AS
BEGIN
DECLARE
l_mailhost VARCHAR2(64) := ’smtp.monrelais.fr’;
l_from VARCHAR2(64) := ‘moi@monrelais.fr’;
l_subject VARCHAR2(64) := ‘Un petit sujet’;
l_to [...]

Créer un fichier CSV avec PL/SQL

Posted by karl verger on March 1, 2008 at 6:17 pm

déclarer un répertoire sur votre base correspondant a un path du systeme hébergeant ORACLE
cela correspondra a l’endroit ou votre fichier sera enregistré.
create or replace directory TMP as ‘/home/db/user1′;
et l’exemple de procédure

create or replace PROCEDURE QUERY_TO_CSV AS
BEGIN
DECLARE
f_file_id UTL_FILE.FILE_TYPE;
v_file_location VARCHAR2(256) := ‘TMP’;
v_line VARCHAR2(4000);
BEGIN
dbms_output.put_line(v_file_location);
f_file_id := UTL_FILE.FOPEN(v_file_location,’export.csv’,'w’);
UTL_FILE.PUT_LINE(f_file_id,’FIELD_1,FIELD_2,FIELD_3,FIELD_4,FIELD_5′);
for fields in
(
select
FIELD_1,
FIELD_2,
FIELD_3,
[...]

Workflow et Gestion de flux

Posted by karl verger on February 7, 2008 at 9:54 pm
flux.jpg

L’objectif est d’appréhender les concepts du workflow, pour ce faire nous allons implémenter un petit projet de test permettant de comprendre les principes.
Pour le projet nous nous appuieront sur les outils suivants: spring, hibernate,jdom et groovy et comme d’habitude le projet maven sera téléchargeable à la fin du tutoriel.
wikipedia : Un workflow est un flux [...]

Extraire les liens d’une page web, htmlparser lib

Posted by karl verger on February 4, 2008 at 10:27 pm

exemple d’utilisation de la lib htmlparser pour extraire les liens d’une page web, ca peut servir dans la mise en place d’un petit spider bot ou tout autre chose, à vous de voir.
import java.net.URL;
import java.util.Vector;
import org.htmlparser.beans.StringBean;
import org.htmlparser.tags.LinkTag;

public class ExtractLink {
    static org.htmlparser.beans.LinkBean lb = null;
    static Vector visitedPage = new Vector();

    public static void main(String[] [...]

Groovy graph

Posted by karl verger on February 4, 2008 at 10:06 pm

Générer un Graph avec groovy
//Permet d’ajouter au path les lib nécessaire a groovy
this.class.classLoader.rootLoader.addURL( new URL(“file:////home/ubuntu/Documents/swingxbuilder-0.1.5.jar”) )

this.class.classLoader.rootLoader.addURL( new URL(“file:////home/ubuntu/Documents/projets java/lib/swingx/dist/swingx-0.9.1.jar”))

this.class.classLoader.rootLoader.addURL( new URL(“file:////home/ubuntu/Documents/projets java/lib/batik-1.7/batik.jar”))

import groovy.swing.SwingXBuilder.*

import org.jdesktop.swingx.*

import groovy.swing.*

import java.awt.Color

def swing = new SwingXBuilder()

def frame = swing.frame(size:[300,300]) {
[...]

Cryptographie java, les certificats X509

Posted by karl verger on January 23, 2008 at 9:41 pm

Bon pour ce soir on vas voir la création de certificats X509 et leur sauvegarde dans un keystore.
wikipedia : Un certificat électronique est une carte d’identité numérique dont l’objet est d’identifier une entité physique ou non-physique. Le certificat numérique ou électronique est un lien entre l’entité physique et l’entité numérique (Virtuel). L’autorité de certification fait [...]

Cryptographie java, les keystores

Posted by karl verger on January 22, 2008 at 9:37 pm

Bien hier nous avons vu comment générer des clef symétrique AES et des clefs asymétriques RSA et comment les utiliser pour réaliser un cryptage décryptage avec ces clefs.
Ce soir nous allons aborder la gestion des keystores (création, sauvegarde, chargement, ajout de certificat), les keystore servent à stocker vos certificats et clefs, pour l’exemple on ne [...]

Cryptographie java, clef AES et RSA

Posted by karl verger on January 21, 2008 at 9:29 pm

Bon allez, une petite série dans la continuité des articles sur la signature électronique, on vas faire un petit tours rapide de la crypto symétrique et asymétrique avec java.
1 Encryption avec une clef symétrique AES
wikipédia : Le standard de chiffrement avancé (Advanced Encryption Standard ou AES) est un algorithme de chiffrement symétrique, choisi en [...]

Signature électronique Horodatage BouncyCastle 2

Posted by karl verger on January 16, 2008 at 11:36 pm
signature-electronique-horodatage-bouncycastle_html_m6ed7e5e1.jpg

Bon voila la suite du 1er article , nous allons donc

Créer un keystore contenant les clefs privés et public

Création d’un jeton d’horodatage

Signature électronique d’un document (PKCS#7)

Vérification d’une signature

1 Créer un keystore contenant les clefs privés et public

dans un premier temps vous devez télécharger un petit utilitaire qui vous simplifiera la vie pour vos [...]