spring.application.name=cms
spring.datasource.url=jdbc:sqlserver://localhost:1433;databaseName=CMS;encrypt=true;trustServerCertificate=true
spring.datasource.username=sa
spring.datasource.password=123
spring.datasource.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jdbc</artifactId>
</dependency>
<dependency>
<groupId>com.microsoft.sqlserver</groupId>
<artifactId>mssql-jdbc</artifactId>
<scope>runtime</scope>
</dependency>
Create CategoryRepository in model package
@Repository
public class CategoryRepository {
@Autowired
JdbcTemplate jdbc;
public List<Category> findAll(){
return jdbc.query ("SELECT * FROM Category", (rs, idx) -> fetch(rs, idx));
}
private static Category fetch(ResultSet rs, int idx){
try {
return new Category(rs.getShort("CategoryId"), rs.getString("CategoryName"), rs.getString("Description"));
} catch (SQLException e) {
e.printStackTrace();
return null;
}
}
public Category findById(short id){
return jdbc.queryForObject("SELECT * FROM Category WHERE CategoryId = ?", (rs, idx) -> fetch(rs, idx), id);
}
public int add(Category obj){
return jdbc.update("INSERT INTO Category (CategoryName, Description) VALUES (?, ?)", obj.getName(), obj.getDescription());
}
public int delete(short id){
return jdbc.update("DELETE Category WHERE CategoryId = ?", id);
}
}
public int add(Member obj){
return jdbc.execute("{CALL AddMember (?, ?, ?)}", (CallableStatement stmt) -> {
stmt.setString(1, obj.getId());
stmt.setString(2, obj.getEmail());
stmt.setString(3, obj.getName());
return stmt.executeUpdate();
});
}