Monthly Archives: June 2012

Adding code in word press blog


blog on word press about word press feature ;). I was having hard time how to put in XML code or HTML code directly inside my blog, after spending little time I came across this link http://en.support.wordpress.com/code/posting-source-code
Idea is use “sourcecode” tag, which supports a lot of languages.

	  			 
          [//sourcecode]

Some of the supported languages

actionscript3
bash
clojure
coldfusion
cpp
csharp
css
delphi
erlang
fsharp
diff
groovy
html
javascript
java
javafx
matlab (keywords only)
objc
perl
php
text
powershell
python
r
ruby
scala
sql
vb
xml

Advertisements

Moving property files outside jar in spring standalone application


In one of Spring standalone project, we needed to move the property files out of the jar for easy configurability.
I followed following steps:
1. Move property files out of JAR and put in a directory say “target/lib”

		<plugin>
	           <artifactId>maven-antrun-plugin</artifactId>
	           <executions>
	             <execution>
	               <phase>validate</phase>
	               <goals>
	                 <goal>run</goal>
	               </goals>
	               <configuration>
	                 <tasks>
				<copy todir="target/lib" overwrite="true">
					<fileset dir="src/main/resources/">
						<include name="*.properties"/>
						<include name="*.xml"/>
					</fileset>
				</copy>
	                 </tasks>
	               </configuration>
	             </execution>
	           </executions>
        	 </plugin>

2. Exclude inclusion of files from the JAR. This will include only .hbm files in resource and any XML file in META-INF (I wanted to keep application-context.xml used by spring inside JAR)

			<resource>
				<directory>${basedir}/src/main/resources</directory>
				<filtering>true</filtering>	
				<includes>
					<include>**/*.hbm.xml</include>
					<include>META-INF/*.xml</include>
				</includes>
			</resource>

3. Use maven-jar plugin to include class path information in MANIFEST.MF. This one is MOST important

	        <plugin>
	            <groupId>org.apache.maven.plugins</groupId>
	            <artifactId>maven-jar-plugin</artifactId>
	            <configuration>
	                <archive>
	                    <manifest>
	                        <addClasspath>true</addClasspath>
	                        <classpathPrefix>lib/</classpathPrefix>
                                       <mainClass>
                                             com.usat.digitalportal.service.impl.BootStrap
                                        </mainClass>
	                    </manifest>
	                    <manifestEntries>
           					 <Class-Path>. lib</Class-Path>
        			</manifestEntries>
	                </archive>
	            </configuration>
	        </plugin> 

a. Use “classpathPrefix” to specify folder name in which all properties will be placed.
b. Use “Class-Path” to specify the folder. “.” Indicate current folder, while “lib” specifies “lib” folder in same directory as JAR (I have used lib).
4. Changes in spring application-context.xml
a. Add line to look for property file in declared class path

<context:property-placeholder location="classpath*:**/settings.properties, classpath*:**/usat.properties” />	   

b. Add line to import resources from class path

		<import resource="classpath*:**/dao-config.xml"/>	 

This is all which is needed. Run maven target as –X clean install and it should Generate a lib folder

Query to select size of each of DB in MY SQL server


SELECT table_schema as “Name Of Database”,
sum( data_length + index_length )/1024/1024 as “Size of Data Base in MB”
FROM information_schema.TABLES GROUP BY table_schema ;

This will return size of EACH database on the SQL server. If there are 5 Databases, it will return 5 rows having two columns, first column as name of the DB and second column as its size.