Showing posts with label Programmation. Show all posts
Showing posts with label Programmation. Show all posts

Monday, September 5, 2011

How to copy a directory and all subs from MSDOS ?

Use the xcopy DOS command with the option 'E' to include all sub-directories (with empty one).
  
xcopy "c:\your source folder" "d:\your destination folder" /E

For more information:
http://www.computerhope.com/xcopyhlp.htm

Monday, July 4, 2011

Error message trying to launch eclipse after update java to version 1.6.0_23

I received this error message trying to launch eclipse after update java to version 1.6.0_23.

!ENTRY org.eclipse.osgi 4 0 2011-07-04 15:40:00.560
!MESSAGE Startup error
!STACK 1
java.lang.UnsatisfiedLinkError: C:\Program Files\Java\jre6\bin\nio.dll: The specified procedure could not be found
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
...
at org.eclipse.equinox.launcher.Main.run(Main.java:1407)


The only way to solve this problem was to reinstall my JRE environment.

Recover a date yyyymmdd from a timestamp in SQL

This is the problem: I have a field in time-stamp format in my database. I would like to use a SQL statement to retrieve this date in format yyyymmdd. This is the select I have used:

Select
   replace(char(date(your_field), ISO), '-', '')
from
   your_table

Transform a date in format yyyy-mm-ddThh:mm:ss

During some testing of 'Ext Calendar Pro' application, I received a date in format 'yyyy-mm-ddThh:mm:ss' from a JSon request. I use SimpleDateFormat class to modify the date with the following pattern :

private static final String CALENDAR_DATE_PATTERN =
"yyyy-MM-dd'T'hh:mm:ss";

This is an example of how I used this pattern to convert my date to a Calendar Java object:

Calendar calendar = Calendar.getInstance(); 
SimpleDateFormat
df =
new SimpleDateFormat(CALENDAR_DATE_PATTERN);
try
{
calendar.setTime(df.parse(value));
}
catch(ParseException pe){
throw new IllegalStateException(pe);
}

Friday, March 18, 2011

Supprimer les espaces dans le code source des pages JSP

Suite à un ancien post qui donnait une solution pour supprimer les espaces non nécessaires dans les JSP généré par le code JSTL:

http://micro-mind.blogspot.com/2007/02/supprimer-les-espaces-dans-le-code.html

Cette solution avait les désavantages de supprimer TOUS les espaces ('le code' devenait 'lecode' s'il n'était pas encodé comme suit: 'le code') et de perdre l'indentation du code.

La norme JSP 2.1 supporte une nouvelle directive:
<%@ page trimDirectiveWhitespaces="true" %>
Celle-ci supprime les espaces et lignes vides générés par le JSTL sans perdre l'indentation.
Si vous utilisez Servlet 2.5 XSD, vous pouvez également utilisez le tag suivant dans votre descripteur de déploiement:
<jsp-config>
<jsp-property-group>
<url-pattern>*.jsp</url-pattern>
<trim-directive-whitespaces>true</trim-directive-whitespaces>
</jsp-property-group>
</jsp-config>
source: http://raibledesigns.com/rd/entry/trim_spaces_in_your_jsp1

Use scheduled task to start / stop Windows Service

Windows doesn't offer to schedule start / stop of a Windows Service in a range of a time. But you can use this tips to do this.
Create 2 batch files named 'startMyService.bat' and 'stopMyService.bat' with the following content

# 'startMyService.bat'
# batch file to start my service
@echo off
net start "my Windows Service name"

# 'stopMyService.bat'
# batch file to stop my service
@echo off
net stop "my Windows Service name"

Next if you want for example that your service runs between 8h00AM and 5h00PM you can schedule the execution of 'startMyService.bat' at 8h00AM and schedule the execution of 'stopMyService.bat' at 5h00PM.
To schedule the execution of a program, go to 'Start' > 'Settings' > 'Control Panel' > 'Scheduled Tasks' > 'Add Scheduled Task' and follow the wizard.

Saturday, February 12, 2011

Clause LIKE % avec des paramètres dans une procédure stockée

Petite astuce pour exécuter un statement SQL avec une clause LIKE % et un paramètre dans une procédure stockée (Stored Procedure).

 1 CREATE PROCEDURE [dbo].[Example]
2
3 @param nvarchar(25)
4
5 AS
6 BEGIN
7 SET NOCOUNT ON;
8
9 DECLARE @sql nvarchar(MAX)
10
11 SET @sql =
12 'SELECT * FROM table WHERE table.field LIKE ''%' + @param + '%'' '
13
14 EXEC sp_executesql @sql
15
16 END


Wednesday, December 8, 2010

Visual Sutio 2005 shorcuts

[Ctrl + K], [Ctrl + C] --> comment the line
[Ctrl + K], [Ctrl + U] --> uncomment the line
[Shift + Alt + F10] --> display a list box to refactor

Tuesday, July 28, 2009

Objects extended in ExtJS

If you try to extend Object with ExtJS and add some properties to the new class:
1 MyClass = Ext.extend(Object, {
2 p: 1
3 }

When you will create a new instance of this class, you loose all your properties previously added.
1 var obj = new MyClass ();
2 console.log(obj.p); // will be 'undefined'

This is the issue:
1 MyClass = Ext.extend(Object, {
2 constructor : function(options){
3 Ext.apply(this, options || {} );
4 },
5 p: 1
6 });

And to extend again:
1 MySecondClass = Ext.extend(MyClass, {
2 constructor : function(options){
3 //call the base constructor
4 MyClass.superclass.constructor.call(this, options);
5 this.r = this.q + this.p;
6 },
7 q: 2
8 });

Tuesday, November 11, 2008

Ext JS Designer

Voici un screencast du futur framework 'Ext JS Designer', qui sera disponible début 2009 avec la version 3 Ext JS. Au premier regard, ça à l'air très intéressant :-)
http://www.screencast.com/users/JackSlocum/folders/Default/media/f7450651-778b-4bbc-9fc4-4e921a7a2705

Si vous ne connaissez pas encore le framework Ext JS (licence open-source et commerciale), je vous conseil d'aller faire un tour sur le site et de découvrir les quelques exemples de ce qui est possible de développer avec celui-ci:
http://extjs.com/

Sunday, August 17, 2008

SCJP: astuce avec les Wrappers

Que va afficher à la console le code suivant ?

class
A{

public static void main(String[] args){

Integer i1 = 127;

Integer i2 = 127;

if(i1 == i2) System.out.println("i1 == i2");

if(i1 != i2) System.out.println("i1 != i2");

Integer i3 = 128;

Integer i4 = 128;

if(i3 == i4) System.out.println("i3 == i4");

if(i3 != i4) System.out.println("i3 != i4");

}

}


Réponse:
i1 == i2
i3 != i4
Si la valeur est plus petite ou égale à 127 ( 27-1 = le nombre maximum de valeur positive pour une primitive de type byte), la VM (Virtual Machine) va automatiquement utiliser l'unboxing pour tester l'équation. A partir de 128, ce n'est plus le cas!

Friday, August 8, 2008

Emplois et placement des modificateurs en Java

Voilà je viens de faire un petit shéma récapitulatif des modificateurs d'accès et de non-accès et les possibilités de leur emplois/placement en Java.


Wednesday, February 13, 2008

Imprimer une page HTML en c# (sans intervention utilisateur)

Après plusieurs heures de recherche, voici enfin la solution pour forcer le browser à imprimer une page web à partir de VS2005.
Voici le code:
private void PrintHelpPage()
{
// Create a WebBrowser instance.
WebBrowser webBrowserForPrinting = new WebBrowser();

// Add an event handler that prints the document after it loads.
webBrowserForPrinting.DocumentCompleted +=
new WebBrowserDocumentCompletedEventHandler(PrintDocument);

// Set the Url property to load the document.
webBrowserForPrinting.Url = new Uri(@"\\myshare\help.html");
}

private void PrintDocument(object sender,
WebBrowserDocumentCompletedEventArgs e)
{
// Print the document now that it is fully loaded.
((WebBrowser)sender).Print();

// Dispose the WebBrowser now that the task is complete.
((WebBrowser)sender).Dispose();
}

Source: Microsoft MSDN

Monday, February 4, 2008

Windows Workflow Foundation Lab

Voici une série d'exercices expliqués pas à pas pour WF (Windows Workflow Foundation).
WF est un outils pour gérer les flux de travail avec Visual Studio ; à essayer.

Hands-on Labs for Windows® Workflow Foundation

Monday, December 17, 2007

Extraire les images d'un PDF

Si vous avez besoin d'extraire les images d'un PDF, une solution en BATCH est assez simple.
  • Téléchargez XPDF (une alternative à adobe reader)
  • En décompressant le fichier téléchargé, vous trouverez un fichier nommé "pdfimages.exe" ; utilisez la commande suivante, en mode DOS, pour extraire les images de votre PDF :
pdfimages -j C:\monfichier.pdf .

De ce fichier PDF vous obtiendrez des fichiers Jpeg ou PPM suivant les images se trouvant à l'intérieur ! Pour lire les fichiers PPM, vous pouvez utiliser XnView (un visualiseur d'image gratuit) ou NConvert (du même auteur) pour convertir les fichiers PPM au format Jpeg, Gif ou Png.

nconvert -out png image.ppm

Thursday, September 27, 2007

Tutorial sur les expressons régulières

Voici un article qui vous permettra de vous familiariser avec les expressions régulières (regular expressions) en JavaScript.
Une expression régulière est un moyen de confirmer la validité d'une chaîne de caractères. Prenons l'exemple d'un email :
- il doit comporter inclure le symbole '@' au centre de celui-ci.
- à gauche une chaîne de caractères comprenant des lettres ou des chiffres, séparés éventuellement par un point '.' ou un tiret '-'.
- à droite, un nom de domaine.
Toutes ces conditions pourraient être tratées avec un série de 'if' ou bien avec une 'simple' expression régulière qui est celle-ci:



Je vous laisse découvrir l'article afin de déchiffrer cette 'simple' expression:

http://www.15seconds.com/issue/010301.htm

Monday, August 6, 2007

Compiler et exécuter son premier programme Java

1. Télécharger et installer le JDK (Java Development Kit) chez Sun.
2. Après l'installation, vérifier que les valeurs pour les variables suivantes existent bien :
- PATH = "C:\java\j2sdk1.4.2_06\bin;" (permet de lancer les commandes java peut importe le répertoire dans lequel on se trouve).
- CLASSPATH = ".;C:\java\j2sdk1.4.2_06\bin;"
* Dans le cas contraire vous risquez d'avoir un message d'erreur de ce genre "java lang NoClassDefFoundError" ; lorsque vous allez essayez de compiler/lancer votre premier programme.
* Pour vérifier/modifier ces variables cliquez droit sur "My computer" > "Properties" > "Advanced" > "Environment Variables" > "System variables"
3. Création du fichier HelloWorld.java

    /**
    * The HelloWorld class is an application that
    * displays "Hello World!" to the standard output.
    */

    public class HelloWorld {
    // Display "Hello World!"
    public static void main(String args[]) {
    System.out.println("Hello World!");
    }
    }


* Il ne peut y avoir qu'une seule classe public dans un fichier java; le nom du fichier doit être le même que la classe public (case sensitiv) complété de l'extension java (dans notre cas: "HelloWorld.java"). Dans les rares cas ou il n'y a pas de classe public, le fichier peut s'appeler comme on veut.
4. Compilation et Exécution
- compilation: javac nomdemaclasse.java (va générer un ou plusieurs fichiers ".class")
- exécution: java nomdemaclasse
5. Dans le cas ou vous avez ce message d'erreur : Exception in thread main classpath "java lang NoClassDefFoundError" : vérifier bien vos variables d'environement PATH et CLASSPATH (cfr 2).

Friday, July 13, 2007

Les 4 principes de la programmation orientée objet

L'encapsulation:
On cache la structure de l'objet et on propose plutot des méhodes pour manipuler les propriétés de cet objet ; de cette manière on peut s'assurer de la manière dont seront traitées ces propriétés. On utilise les spécificateurs d'accès (public, protected, private) pour cacher l'implémetation.

L'aggrégat ou la composition (Aggregation):
C'est le fait de pouvoir stocker un objet à l'intérieur d'un autre objet.

L'héritage (Inheritance):
C'est la possibilité pour un classe étendu/enfant d'utilisée des méthodes de sa classe parent.

Polymorphisme:
C'est la possibilité d'utiliser le même code avec différents types. Par exemple, on crée un méthode qui prend un objet "FormeGeometrique" en paramètre, et on pourra l'utiliser avec des objets tels que "Triangle", "Rectangle", ... à condition que ceux-ci étendent la classe "FormeGeometrique"

Wednesday, May 9, 2007

C# Tutorial

Voici un bon tutorial pour la prise en main du langage C# (prononcez 'si charpe'). Il faudra des connaissances en programmation, car ce tutorial est assez rapide sur les méthodologies ; il sera efficace pour vous apprendre la synthaxe si vous venez du monde Java par exemple.
http://www.csharp-station.com/Tutorial.aspx

Environnement de développement (IDE=Integrated Development Environment) :

Saturday, March 17, 2007

Créer vos tag select (liste web) personnalisé

Voici un article qui vous expliquera comment créer des tag select personnalisé pour votre site web avec du JavaScript et du CSS :
http://www.easy-designs.net/articles/replaceSelect/