Spring Task Example

pom.xml [code] <project xmlns=”http://maven.apache.org/POM/4.0.0″ xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd”> <modelVersion>4.0.0</modelVersion> <groupId>com.tugrulaslan</groupId> <artifactId>SpringScheduledTaskExample</artifactId> <version>1.0-SNAPSHOT</version> <packaging>jar</packaging> <name>SpringScheduledTaskExample</name> <url>http://maven.apache.org</url> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <spring.version>3.1.2.RELEASE</spring.version> </properties> <dependencies> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-core</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>org.springframework</groupId> <artifactId>spring-context</artifactId> <version>${spring.version}</version> </dependency> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project> [/code] batch.xml in src>java>resources [code] <?xml version=”1.0″ encoding=”UTF-8″?> <beans xmlns=”http://www.springframework.org/schema/beans” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xmlns:context=”http://www.springframework.org/schema/context” xmlns:task=”http://www.springframework.org/schema/task” xsi:schemaLocation=”http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/task

Liquibase Spring batch xml for Oracle RDBMS

  [code] <?xml version=”1.0″ encoding=”UTF-8″?> <databaseChangeLog xmlns=”http://www.liquibase.org/xml/ns/dbchangelog” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd”> <changeSet id=”1.0.0_SPRING_BATCH_INFRASTRUCTURE” author=”a243229″> <createSequence sequenceName=”BATCH_STEP_EXECUTION_SEQ” startValue=”0″ minValue=”0″ maxValue=”9223372036854775807″ cycle=”false” /> <createSequence sequenceName=”BATCH_JOB_EXECUTION_SEQ” startValue=”0″ minValue=”0″ maxValue=”9223372036854775807″ cycle=”false” /> <createSequence sequenceName=”BATCH_JOB_SEQ” startValue=”0″ minValue=”0″ maxValue=”9223372036854775807″ cycle=”false” /> <createTable tableName=”BATCH_JOB_INSTANCE”> <column name=”JOB_INSTANCE_ID” type=”BIGINT”> <constraints primaryKey=”true” nullable=”false” /> </column> <column name=”VERSION” type=”BIGINT” /> <column name=”JOB_NAME” type=”VARCHAR(100)”> <constraints nullable=”false” /> </column>

Running sql queries in Liquibase

Make sure the user that you’ll use to issue this command will have privileges. In this query I create a user on Oracle DB [code] <?xml version=”1.0″ encoding=”UTF-8″?> <databaseChangeLog xmlns=”http://www.liquibase.org/xml/ns/dbchangelog” xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=”http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd”> <changeSet id=”1.0.0_RBACK_USER” author=”a243229″> <!– TO BE ABLE TO RUN THIS SCRIPT, MAKE SURE YOUR NON-SYS USER HAS SUCH PRIVILEGES OTHERWISE RUN THE

Running Liquibase xml file from command line

I’ve tested the code against Oracle database at work. First download the jar and issue the command similar to below, make sure you are in the xml file’s location [code] java -jar C:\Users\A243229\Desktop\liquibase.jar –driver=oracle.jdbc.OracleDriver –classpath=C:\JavaDev\mavenRepository\oracle\ojdbc14\10.2.0.3.0\ojdbc14-10.2.0.3.0.jar –changeLogFile=changelog-1.0.0.xml –url=jdbc:oracle:thin:@localhost:1521:xe –username=RBAC_TEST –password=rbactest1 update [/code] ref: http://www.liquibase.org/documentation/command_line.html

Resource Bundles

Resource Bundles allows you to create localized multi language supported applications for each locale. The abstract class “java.util.ResourceBundle” offers such locale-specific resources. The abstract class is sub classed by “PropertyResourceBundle” and “ListResourceBundle”. Each of these classes have their own implementations in a application which I’ll show some examples how to. However, there are some important

Searching file types with PathMatcher

The PathMatcher class allows us to search any file name or file extension. you can use regex or glob elements to find files. The PathMatcher only seeks the given keyword in the working directory only, It will not search the subdirectories. If you want to seek it in a given path, you should empower it,

FileVisitor Interface Sample

In this sample file visitor interface you can list all the folders and their regarding files   import java.io.IOException; import java.nio.file.FileVisitResult; import java.nio.file.FileVisitor; import java.nio.file.Files; import java.nio.file.Path; import java.nio.file.Paths; import java.nio.file.attribute.BasicFileAttributes; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; public class MyFileVisitor implements FileVisitor<Path> { private Map<String, List<String>> data = new HashMap<>(); private Map<String, IOException>

File and Directory Attributes

File and Directory Attributes With these features Java allows us to read and modify file and folder attributes for all supported operating systems such as Windows and Unix families. There are a couple of ways to read and alter data by using Files and the regarding interface. If a file or folder does not support