You are on page 1of 5

- by RAGHU SIR , NARESH IT, HYDERABD.

Project Softwares and Setup


STS 4 : https://download.springsource.com/release/STS4/4.5.1.RELEASE/dist/e4.14/spring-
tool-suite-4-4.5.1.RELEASE-e4.14.0-win32.win32.x86_64.self-extracting.jar

Tomcat 9: http://apachemirror.wuchna.com/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-
9.0.30.exe

JDK 13: https://www.oracle.com/technetwork/java/javase/downloads/jdk13-downloads-


5672538.html

Oracle 11G : http://www.mediafire.com/file/e0611q3sq87cm6p/Oracle11Gdatabase.rar/file

MySQL : http://www.mediafire.com/file/98auro9hg2f1fwl/MySQLWithYog.rar/file

pom.xml:-

<properties>
<failOnMissingWebXml>false</failOnMissingWebXml>
<maven.compiler.source>13</maven.compiler.source>
<maven.compiler.target>13</maven.compiler.target>
</properties>

<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-orm</artifactId>
<version>5.2.3.RELEASE</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-core</artifactId>
<version>5.4.10.Final</version>
</dependency>

<dependency>
<groupId>org.apache.commons</groupId>

1|Page
- by RAGHU SIR , NARESH IT, HYDERABD.

<artifactId>commons-dbcp2</artifactId>
<version>2.7.0</version>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>com.jslsolucoes</groupId>
<artifactId>ojdbc6</artifactId>
<version>11.2.0.1.0</version>
</dependency>

</dependencies>

a. AppConfig.java

package in.nit.config;

import java.util.Properties;

import javax.sql.DataSource;

import org.apache.commons.dbcp2.BasicDataSource;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.core.env.Environment;
import org.springframework.orm.hibernate5.HibernateTemplate;
import org.springframework.orm.hibernate5.HibernateTransactionManager;
import org.springframework.orm.hibernate5.LocalSessionFactoryBean;
import
org.springframework.transaction.annotation.EnableTransactionManagement
;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import
org.springframework.web.servlet.view.InternalResourceViewResolver;

@Configuration
@EnableTransactionManagement //eables HtX

2|Page
- by RAGHU SIR , NARESH IT, HYDERABD.

@EnableWebMvc // Spring MVC Activated


//load properties into Spring container
@PropertySource("classpath:app.properties")
//all layered classes common package name
@ComponentScan("in.nit")
public class AppConfig {
@Autowired
private Environment env;

//1. DataSource
@Bean
public DataSource ds() {
BasicDataSource d=new BasicDataSource();
d.setDriverClassName(env.getProperty("db.driver"));
d.setUrl(env.getProperty("db.url"));
d.setUsername(env.getProperty("db.user"));
d.setPassword(env.getProperty("db.password"));
return d;
}
//2. SessionFactrory
@Bean
public SessionFactory sf() {
LocalSessionFactoryBean s=new LocalSessionFactoryBean();
s.setDataSource(ds());
s.setHibernateProperties(props());
s.setAnnotatedClasses(null);
return s.getObject();
}

public Properties props() {


Properties p=new Properties();
p.put("hibernate.dialect", env.getProperty("orm.dialect"));
p.put("hibernate.show_sql", env.getProperty("orm.showsql"));
p.put("hibernate.format_sql",
env.getProperty("orm.fmtsql"));
p.put("hibernate.hbm2ddl.auto",
env.getProperty("orm.ddlauto"));
return p;
}

//3. HT
@Bean
public HibernateTemplate ht() {
HibernateTemplate h=new HibernateTemplate();
h.setSessionFactory(sf());
return h;

3|Page
- by RAGHU SIR , NARESH IT, HYDERABD.

}
//4. HtxM
@Bean
public HibernateTransactionManager htx() {
HibernateTransactionManager htm=new
HibernateTransactionManager();
htm.setSessionFactory(sf());
return htm;
}
//5. ViewResovler
@Bean
public InternalResourceViewResolver ivr() {
InternalResourceViewResolver v=new
InternalResourceViewResolver();
v.setPrefix(env.getProperty("mvc.prefix"));
v.setSuffix(env.getProperty("mvc.suffix"));
return v;
}

b. AppInit.java

package in.nit.init;

import
org.springframework.web.servlet.support.AbstractAnnotationConfigDispat
cherServletInitializer;

import in.nit.config.AppConfig;

public class AppInit


extends AbstractAnnotationConfigDispatcherServletInitializer
{

//Provide Spring config file as input to web.xml(FC)


@Override
protected Class<?>[] getRootConfigClasses() {
return new Class[] {AppConfig.class};
}

@Override
protected Class<?>[] getServletConfigClasses() {
return null;
}

4|Page
- by RAGHU SIR , NARESH IT, HYDERABD.

//URL - Pattern
@Override
protected String[] getServletMappings() {
return new String[] {"/"};
}

FB: https://www.facebook.com/groups/thejavatemple/
email: javabyraghu@gmail.com

5|Page

You might also like