7-marzo-2012
admin

Contar los días que hay entre dos fechas

A continuación se muestra una función que se podría utilizar para contar los días que hay entre dos fechas. El lenguaje utilizado es Java y se emplea el Calendar para facilitar la tarea.

    /**
     * @param desde - Date con la fecha inicial
     * @param hasta - Date con la fecha final
     * @return int - devuelve el total de días que hay entre las 
     *               dos fechas sin contar sábados ni domingos.
     */
private int devuelveDiasLaborables(Date desde, Date hasta){
     Calendar calendarDesde = Calendar.getInstance();
     calendarDesde.setTime(formatoFecha.parse(desde));		

     Calendar calendarHasta = Calendar.getInstance();
     calendarHasta.setTime(formatoFecha.parse(hasta));
     
     int contador = 0;	
     while (!calendarDesde.after( calendarHasta )) {
	
         if((calendarDesde.get(Calendar.DAY_OF_WEEK)!=Calendar.SATURDAY) &&
              (calendarDesde.get(Calendar.DAY_OF_WEEK)!=Calendar.SUNDAY)){
	      //si no es sábado ni domingo incrementamos la cuenta
	      contadorDias++;
         }					
         calendarDesde.add(Calendar.DAY_OF_MONTH, 1);//Siguiente día
     }
     return contador;
}
18-febrero-2012
admin

Tabla de ASCII estándar, nombres de entidades HTML

  (espacio en blanco)

Tabla de ASCII estándar, nombres de entidades HTML, ISO 10646, ISO 8879, ISO 8859-1 alfabeto romano numero 1
Soporte para browsers: todos los browsers
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
20
21
22
23
24
25
26
27
28
29
2A
2B
2C
2D
2E
2F
!
»
#
$
%
&

(
)
*
+
,

.
/
 
!
"
#
$
%
&
'
(
)
*
+
,
-
.
/
"& espacio
signo de cierre de exclamación / admiración
comillas dobles
signo de número
signo de dólar
signo de porcentaje
signo «&» / ampersand
comilla / apóstrofe
paréntesis izquierdo
paréntesis derecho
asterisco
signo de más / adición
coma
signo de menos / sustracción / guíon / raya
punto
barra oblicua – barra de división
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
30
31
32
33
34
35
36
37
38
39
3A
3B
3C
3D
3E
3F
0
1
2
3
4
5
6
7
8
9
:
;
<
=
>
?
&#48;
&#49;
&#50;
&#51;
&#52;
&#53;
&#54;
&#55;
&#56;
&#57;
&#58;
&#59;
&#60;
&#61;
&#62;
&#63;
&lt;&gt; cero
uno
dos
tres
cuatro
cinco
seis
siete
ocho
nueve
dos puntos
punto y coma
signo de menor que
signo de igual
signo de mayor que
signo de interrogación – cierre
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
40
41
42
43
44
45
46
47
48
49
4A
4B
4C
4D
4E
4F
@
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
&#64;
&#65;
&#66;
&#67;
&#68;
&#69;
&#70;
&#71;
&#72;
&#73;
&#74;
&#75;
&#76;
&#77;
&#78;
&#79;
símbolo arroba
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
50
51
52
53
54
55
56
57
58
59
5A
5B
5C
5D
5E
5F
P
Q
R
S
T
U
V
W
X
Y
Z
[
\
]
^
_
&#80;
&#81;
&#82;
&#83;
&#84;
&#85;
&#86;
&#87;
&#88;
&#89;
&#90;
&#91;
&#92;
&#93;
&#94;
&#95;
corchete izquierdo
barra inversa
corchete derecho
signo de intercalación – acento circunflejo
signo de subrayado
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
60
61
62
63
64
65
66
67
68
69
6A
6B
6C
6D
6E
6F
`
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
&#96;
&#97;
&#98;
&#99;
&#100;
&#101;
&#102;
&#103;
&#104;
&#105;
&#106;
&#107;
&#108;
&#109;
&#110;
&#111;
acento grave
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
70
71
72
73
74
75
76
77
78
79
7A
7B
7C
7D
7E
7F
p
q
r
s
t
u
v
w
x
y
z
{
|
}
~
&#112;
&#113;
&#114;
&#115;
&#116;
&#117;
&#118;
&#119;
&#120;
&#121;
&#122;
&#123;
&#124;
&#125;
&#126;
llave de apertura – izquierda
barra vertical
llave de cierre – derecho
signo de equivalencia / tilde
(no definido en estándar HTML 4)
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
A0
A1
A2
A3
A4
A5
A6
A7
A8
A9
AA
AB
AC
AD
AE
AF
¡
¢
£
¤
¥
¦
§
¨
©
ª
«
¬
­
®
¯
&#160;
&#161;
&#162;
&#163;
&#164;
&#165;
&#166;
&#167;
&#168;
&#169;
&#170;
&#171;
&#172;
&#173;
&#174;
&#175;
&nbsp;
&iexcl;
&cent;
&pound;
&curren;
&yen;
&brvbar;
&sect;
&uml;
&copy;
&ordf;
&laquo;
&not;
&shy;
&reg;
&macr;
espacio sin separación
signo de apertura de exclamación / admiración
signo de centavo
signo de Libra Esterlina
signo de divisa general
signo de yen
barra vertical partida
signo de sección
diéresis – umlaut
signo de derechos de autor – copyright
género feminino – indicador ordinal feminino
comillas anguladas de apertura
signo de no – símbolo lógico
guión débil
signo de marca registrada
macrón – raya alta
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
B0
B1
B2
B3
B4
B5
B6
B7
B8
B9
BA
BB
BC
BD
BE
BF
°
±
²
³
´
µ

·
¸
¹
º
»
¼
½
¾
¿
&#176;
&#177;
&#178;
&#179;
&#180;
&#181;
&#182;
&#183;
&#184;
&#185;
&#186;
&#187;
&#188;
&#189;
&#190;
&#191;
&deg;
&plusmn;
&sup2;
&sup3;
&acute;
&micro;
&para;
&middot;
&cedil;
&sup1;
&ordm;
&raquo;
&frac14;
&frac12;
&frac34;
&iquest;
signo de grado
signo de más o menos
superíndice dos – cuadrado
superíndice tres – cúbico
acento agudo – agudo espaciado
signo de micro
signo de fin de párrafo
punto medio – coma Georgiana
cedilla
superíndice uno
género masculino – indicador ordinal masculino
comillas anguladas de cierre
fracción un cuarto
fracción medio – mitad
fracción tres cuartos
signo de interrogación – apertura
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
C0
C1
C2
C3
C4
C5
C6
C7
C8
C9
CA
CB
CC
CD
CE
CF
À
Á
Â
Ã
Ä
Å
Æ
Ç
È
É
Ê
Ë
Ì
Í
Î
Ï
&#192;
&#193;
&#194;
&#195;
&#196;
&#197;
&#198;
&#199;
&#200;
&#201;
&#202;
&#203;
&#204;
&#205;
&#206;
&#207;
&Agrave;
&Aacute;
&Acirc;
&Atilde;
&Auml;
&Aring;
&AElig;
&Ccedil;
&Egrave;
&Eacute;
&Ecirc;
&Euml;
&Igrave;
&Iacute;
&Icirc;
&Iuml;
A mayúscula con acento grave
A mayúscula con acento agudo
A mayúscula con acento circunflejo
A mayúscula con tilde
A mayúscula con diéresis
A mayúscula con anillo
diptongo AE mayúscula (ligadura)
C cedilla mayúscula
E mayúscula con acento grave
E mayúscula con acento agudo
E mayúscula con acento circunflejo
E mayúscula con diéresis
I mayúscula con acento grave
I mayúscula con acento agudo
I mayúscula con acento circunflejo
I mayúscula con diéresis
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
D0
D1
D2
D3
D4
D5
D6
D7
D8
D9
DA
DB
DC
DD
DE
DF
Ð
Ñ
Ò
Ó
Ô
Õ
Ö
×
Ø
Ù
Ú
Û
Ü
Ý
Þ
ß
&#208;
&#209;
&#210;
&#211;
&#212;
&#213;
&#214;
&#215;
&#216;
&#217;
&#218;
&#219;
&#220;
&#221;
&#222;
&#223;
&ETH;
&Ntilde;
&Ograve;
&Oacute;
&Ocirc;
&Otilde;
&Ouml;
&times;
&Oslash;
&Ugrave;
&Uacute;
&Ucirc;
&Uuml;
&Yacute;
&THORN;
&szlig;
ETH islandesa mayúscula
N mayúscula con tilde – eñe mayúscula
O mayúscula con acento grave
O mayúscula con acento agudo
O mayúscula con acento circunflejo
O mayúscula con tilde
O mayúscula con diéresis
signo de multiplicación
O mayúscula with slash
U mayúscula con acento grave
U mayúscula con acento agudo
U mayúscula con acento circunflejo
U mayúscula con diéresis
Y mayúscula con acento agudo
THORN islandesa mayúscula
s minúscula (alemán) – Beta minúscula
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
E0
E1
E2
E3
E4
E5
E6
E7
E8
E9
EA
EB
EC
ED
EE
EF
à
á
â
ã
ä
å
æ
ç
è
é
ê
ë
ì
í
î
ï
&#224;
&#225;
&#226;
&#227;
&#228;
&#229;
&#230;
&#231;
&#232;
&#233;
&#234;
&#235;
&#236;
&#237;
&#238;
&#239;
&agrave;
&aacute;
&acirc;
&atilde;
&auml;
&aring;
&aelig;
&ccedil;
&egrave;
&eacute;
&ecirc;
&euml;
&igrave;
&iacute;
&icirc;
&iuml;
a minúscula con acento grave
a minúscula con acento agudo
a minúscula con acento circunflejo
a minúscula con tilde
a minúscula con diéresis
a minúscula con anillo
diptongo ae minúscula (ligadura)
c cedilla minúscula
e minúscula con acento grave
e minúscula con acento agudo
e minúscula con acento circunflejo
e minúscula con diéresis
i minúscula con acento grave
i minúscula con acento agudo
i minúscula con acento circunflejo
i minúscula con diéresis
ASCII HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
F0
F1
F2
F3
F4
F5
F6
F7
F8
F9
FA
FB
FC
FD
FE
FF
ð
ñ
ò
ó
ô
õ
ö
÷
ø
ù
ú
û
ü
ý
þ
ÿ
&#240;
&#241;
&#242;
&#243;
&#244;
&#245;
&#246;
&#247;
&#248;
&#249;
&#250;
&#251;
&#252;
&#253;
&#254;
&#255;
&eth;
&ntilde;
&ograve;
&oacute;
&ocirc;
&otilde;
&ouml;
&divide;
&oslash;
&ugrave;
&uacute;
&ucirc;
&uuml;
&yacute;
&thorn;
&yuml;
eth islandesa minúscula
eñe minúscula – n minúscula con tilde
o minúscula con acento grave
o minúscula con acento agudo
o minúscula con acento circunflejo
o minúscula con tilde
o minúscula con diéresis
signo de división
o barrada minúscula
u minúscula con acento grave
u minúscula con acento agudo
u minúscula con acento circunflejo
u minúscula con diéresis
y minúscula con acento agudo
thorn islandesa minúscula
y minúscula con diéresis
HTML 4.01, ISO 10646, ISO 8879, alfabeto romano extendido A y B,
Soporte para browsers: Internet Explorer > 4, Netscape > 4
  HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

338
339
352
353
376
402
152
153
160
161
178
192
Œ
œ
Š
š
Ÿ
ƒ
&#338;
&#339;
&#352;
&#353;
&#376;
&#402;
OE mayúscula (ligadura)
oe minúscula (ligadura)
S mayúscula con caron
s minúscula con caron – acento hacek
Y mayúscula con diéresis
f minúscula itálica – signo de función
  HTML HTML
Dec Hex Símbolo Numero Nombre Descripción

8211
8212
8216
8217
8218
8220
8221
8222
8224
8225
8226
8230
8240
8364
8482
2013
2014
2018
2019
201A
201C
201D
201E
2020
2021
2022
2026
2030
20AC
2122














&#8211;
&#8212;
&#8216;
&#8217;
&#8218;
&#8220;
&#8221;
&#8222;
&#8224;
&#8225;
&#8226;
&#8230;
&#8240;
&#8364;
&#8482;

&euro;

raya corta
raya larga
comilla izquierda – citación
comilla derecha – citación
comilla de citación – baja
comillas de citación – arriba izquierda
comillas de citación – arriba derecha
comillas de citación – abajo
cruz
doble cruz
viñeta – bullet
puntos suspensivos
signo de pro mil
signo de euro
signo de marca registrada – trade mark
18-febrero-2012
admin

Codificación de colores

Este es el listado de colores que recomienda usar la W3C y que, por lo tanto, funcionan (o deberían funcionar) en todos los navegadores.
En la tabla se puede ver tanto su valor hexadecimal como el nombre que tienen asignado.

Nombre del color Código RGB Nombre del color Código RGB
Aliceblue #F0F8FF Antiquewhite #FAEBD7
Aqua #00FFFF Aquamarine #7FFFD4
Azure #00FFFF Beige #F5F5DC
Bisque #FFE4C4 Black #000000
Blanchedalmond #FFEBCD Blue #0000FF
Blueviolet #8A2BE2 Brown #A52A2A
Burlywood #DEB887 Cadetblue #5F9EA0
Chartreuse #7FFF00 Chocolate #D2691E
Coral #FF7F50 Cornflowerblue #6495ED
Cornsilk #FFF8DC Crimson #DC143C
Cyan #00FFFF Darkblue #00008B
Darkcyan #008B8B Darkgoldenrod #B8860B
Darkgray #A9A9A9 Darkgreen #006400
Darkkhaki #BDB76B Darkmagenta #8B008B
Darkolivegreen #556B2F Darkorange #FF8C00
Darkorchid #9932CC Darkred #8B0000
Darksalmon #E9967A Darkseagreen #8FBC8F
Darkslateblue #483D8B Darkslategray #2F4F4F
Darkturquoise #00CED1 Darkviolet #9400D3
Deeppink #FF1493 Deepskyblue #00BFFF
Dimgray #696969 Dodgerblue #1E90FF
Firebrick #B22222 floralwhite #FFFAF0
forestgreen #228B22 fuchsia #FF00FF
gainsboro #DCDCDC ghostwhite #F8F8FF
gold #FFD700 goldenrod #DAA520
gray #808080 green #008000
greenyellow #ADFF2F honeydew #F0FFF0
hotpink #FF69B4 indianred #CD5C5C
indigo #4B0082 ivory #FFFFF0
khaki #F0E68C lavender #E6E6FA
lavenderblush #FFF0F5 lawngreen #7CCMC00
lemonchiffon #FFFACD lightblue #ADD8E6
lightcoral #F08080 lightcyan #E0FFFF
lightgoldenrodyellow #FAFAD2 lightgreen #90EE90
lightgrey #D3D3D3 lightpink #FFB6C1
lightsalmon #FFA07A lightseagreen #20B2AA
lightskyblue #87CEFA lightslategray #778899
lightsteelblue #B0C4DE lightyellow #FFFFE0
lime #00FF00 limegreen #32CD32
linen #FAF0E6 magenta #FF00FF
maroon #800000 mediumaquamarine #66CDAA
mediumblue #0000CD mediumorchid #BA55D3
mediumpurple #9370DB mediumseagreen #3CB371
mediumslateblue #7B68EE mediumspringgreen #00FA9A
mediumturquoise #48D1CC mediumvioletred #C71585
midnightblue #191970 mintcream #F5FFFA
mistyrose #FFE4E1 moccasin #FFE4B5
navajowhite #FFDEAD navy #000080
oldlace #FDF5E6 olive #808000
olivedrab #6B8E23 orange #FFA500
orangered #FF4500 orchid #DA70D6
palegoldenrod #EEE8AA palegreen #98FB98
paleturquoise #AFEEEE palevioletred #DB7093
papayawhip #FFEFD5 peachpuff #FFDAB9
peru #CD853F pink #FFC0CB
plum #DDA0DD powderblue #B0E0E6
purple #800080 red #FF0000
rosybrown #BC8F8F royalblue #4169E1
saddlebrown #8B4513 salmon #FA8072
sandybrown #F4A460 seagreen #2E8B57
seashell #FFF5EE sienna #A0522D
silver #C0C0C0 skyblue #87CEEB
slateblue #6A5ACD slategray #708090
snow #FFFAFA springgreen #00FF7F
steelblue #4682B4 tan #D2B48C
teal #008080 thistle #D8BFD8
tomato #FF6347 turquoise #40E0D0
violet #EE82EE wheat #F5DEB3
white #FFFFFF whitesmoke #F5F5F5
yellow #FFFF00 yellowgreen #9ACD32
11-febrero-2012
admin

JRFontNotFoundException

Cuando al ejecutar un report nos encontramos con el siguiente error:
Mensaje: Font ‘Arial’ is not available to the JVM. See the Javadoc for more details.
Excepcion: net.sf.jasperreports.engine.util.JRFontNotFoundException: Font ‘Arial’ is not available to the JVM. See the Javadoc for more details.

Si no queremos añadir un jar con la fuente (Arial en este caso). Una de las formas que se puede emplear para corregirlo consiste en, simplemente, añadirle la propiedad
net.sf.jasperreports.awt.ignore.missing.font = true
Con esto evitamos que lance la excepción ya que sustituirá la fuente Arial por otra que sí esté disponible.

Nota: Más información aquí.

9-febrero-2012
admin

Cómo unir, separar y/o desproteger PDFs?

Si no te acuerdas de la contraseña que le has puesto a algún pdf que hayas creado, hay diversas herramientas por la red que puedes utilizar. Entre ellas está el PDF Unlocker. Lo he probado con el windows xp y va muy bien.


También puedes encontrar herramientas para unir varios pdfs en uno o para separar uno en varios. Ya sea via web: http://www.ilovepdf.com/es/ o mediante una aplicación como es con PDF Split and Merge 2.2.1 En particular esta última opción me gusta más.

8-febrero-2012
admin

TCPMON

TCPMON es un sniffer que permite visualizar los paquetes enviados por la red de una forma muy sencilla. Sobretodo, es muy útil cuando se quieren detectar problemas con Servicios Web.


En esta página hay un tutorial bastante completo sobre ello.


Sólo añadir que el tcpmon se encuentra incluido en axis. Por lo tanto, se puede lanzar simplemente ejecutando desde la consola:
java -cp axis.jar org.apache.axis.utils.tcpmon
(Nota: axis.jar está en AXIS_HOME/lib)

5-febrero-2012
admin

Tamaño de memoria del Tomcat

Para modificar el tamaño de la memoria debemos ir a:

(Windows)
$TOMCAT_HOME\bin\catalina.bat y añadir: set CATALINA_OPTS=”-Xms512m -Xmx512m”




(Linux)
$TOMCAT_HOME\bin\catalina.sh y añadir: export CATALINA_OPTS=”-Xms512m -Xmx512m”




Nota: El 512 se corresponde con el total de memoria a utilizar.

4-febrero-2012
admin

Transacciones con Spring AOP (Forma declarativa con un fichero xml)

El tratamiendo de las transacciones mediante Spring AOP puede realizarse de varias formas. O bien, de forma programática o bien de forma declarativa (ya sea con anotaciones o con fichero xml):


1/ Si se hace de forma programática, las transacciones, deben controlarse en las distintas clases. Esto puede llegar a resultar bastante engorroso en aplicaciones relativamente grandes.


2/ Si se hace de forma declarativa con anotaciones estaríamos en la misma situación ya que las transacciones se definen dentro de las propias clases como antes, eso sí, de una forma más limpia.


3/ Si se hace de forma declarativa con un fichero xml se puede poner un punto de corte (pointcut) sobre la capa manager que abarque a todas las clases pertenecientes a ella. Y mediante un se pueden definir los tipos de propiedades de las transacciones (propagation, isolation leven, timeout, etc.), que deben ejecutar los métodos de esas clases manager. Para ello basta con seguir algún patrón a la hora de nombrar los nombres métodos y así poder diferenciarlos unos de otros. De esta forma en unas pocas líneas de un fichero xml se tienen tratadas todas las transacciones de la aplicación.




Para usar esta tercera forma nos pide aparte un par de librerías de Aspectj. Obtenidas p.e. de maven, de la siguiente forma:

      
          org.aspectj
          aspectjrt
          1.5.4
      
      
          org.aspectj
          aspectjweaver
          1.5.4
      





Un ejemplo sencillo de uso, con hibernate:

    
    
	
    

    
    
        
     
    
    
    
        
            
            
            
        
    





Nota: Aquí hay bastante más información para consultar http://static.springsource.org/spring/docs/2.5.x/reference/aop.html

3-febrero-2012
admin

Para ver las sesiones abiertas en oracle

SELECT username, status, sid, serial# FROM v$session;

Así, para ver únicamente las sesiones abiertas con el usuario que se está utilizando en la aplicación. Sería:

SELECT * FROM v$session WHERE username LIKE ‘XXXXXXX’;

(Nota: Se deben tener permisos de SYS.)

3-febrero-2012
admin

Cambiar el puerto del JBoss

Para cambiar el puerto bajo el que corre JBoss. Se debe modificar el archivo server.xml.
Concretamente la línea que pone:

 

...




Nota: El archivo server.xml se puede encontrar en el jbosweb. Algo así:
/server/default/deploy/jbossweb.sar/server.xml

Páginas:«1...2324252627282930»

Categorias

Linkedin