Add below lines in build.gradle file :
implementation 'mysql:mysql-connector-java:8.0.19' implementation 'org.springframework:spring-jdbc:3.2.0.RELEASE'
Bean file for MySQL db connection :
@Autowired SimpleDriverDataSource ds; @Bean public JdbcTemplate jdbcTemplate() throws SQLException { JdbcTemplate jdbcTemplate = new JdbcTemplate(ds); return jdbcTemplate; } @Bean public SimpleDriverDataSource getDriver() throws SQLException { SimpleDriverDataSource ds = new SimpleDriverDataSource(); ds.setDriver(new com.mysql.cj.jdbc.Driver()); ds.setUrl("jdbc:mysql://localhost:3306/mysql"); ds.setUsername("tyson"); ds.setPassword("tyson"); return ds; }
Then you can use it any where using autowiring :
@Repository public class EmpServiceDAO { @Autowired JdbcTemplate jdbcTemplate; public List<Emp> getEmp() { List<Emp> empList = new ArrayList<>(); String sql="select * from emp"; Collection<Map<String,Object>> rows = jdbcTemplate.queryForList(sql); return new ArrayList<>(); } }
Data Source using XML file :
<bean id = "dataSource" class = "org.springframework.jdbc.datasource.DriverManagerDataSource"> <property name = "driverClassName" value = "com.mysql.jdbc.Driver"/> <property name = "url" value = "jdbc:mysql://localhost:3306/TEST"/> <property name = "username" value = "root"/> <property name = "password" value = "admin"/> </bean>
Using application.properties
# MySQL #spring.datasource.url=jdbc:mysql://localhost:3306/test #spring.datasource.username=dbuser #spring.datasource.password=dbpass #spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect
Read More :
https://howtodoinjava.com/spring-boot2/datasource-configuration/