Springboot-集成达梦数据库-代码详解
- 添加依赖
在 pom.xml 中添加以下依赖:
<dependency>
<groupId>com.dm</groupId>
<artifactId>dm7-jdbc</artifactId>
<version>7.4.1</version>
</dependency>
- 配置数据源
在 application.properties 中添加以下配置:
spring.datasource.driver-class-name=com.dm.jdbc.driver.DmDriver
spring.datasource.url=jdbc:dm://localhost:5236/test
spring.datasource.username=your_username
spring.datasource.password=your_password
注意要填写正确的数据库用户名和密码。
- 创建自定义数据源
创建一个自定义数据源的配置类 DmDataSourceConfig,代码如下:
@Configuration
public class DmDataSourceConfig {
@Bean
@ConfigurationProperties(prefix = "spring.datasource")
public DataSource dataSource() {
return DataSourceBuilder.create().build();
}
}
这里使用了 @Configuration 和 @Bean 注解来创建数据源 Bean,并使用了 @ConfigurationProperties 注解绑定配置文件中的属性值。
- 创建 JdbcTemplate
创建一个 JdbcTemplate Bean,代码如下:
@Configuration
public class JdbcTemplateConfig {
@Autowired
private DataSource dataSource;
@Bean
public JdbcTemplate jdbcTemplate() {
return new JdbcTemplate(dataSource);
}
}
这里使用了 @Autowired 注解注入自定义的数据源。
- 编写 DAO 层代码
编写 DAO 层代码,可以直接使用 JdbcTemplate 进行数据库操作,例如:
@Repository
public class UserDao {
@Autowired
private JdbcTemplate jdbcTemplate;
public User getUserById(Long id) {
String sql = "SELECT * FROM user WHERE id = ?";
return jdbcTemplate.queryForObject(sql, new Object[]{id}, new BeanPropertyRowMapper<>(User.class));
}
public List<User> getAllUsers() {
String sql = "SELECT * FROM user";
return jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(User.class));
}
public int saveUser(User user) {
String sql = "INSERT INTO user (name, age) VALUES (?, ?)";
return jdbcTemplate.update(sql, user.getName(), user.getAge());
}
public int updateUser(User user) {
String sql = "UPDATE user SET name = ?, age = ? WHERE id = ?";
return jdbcTemplate.update(sql, user.getName(), user.getAge(), user.getId());
}
public int deleteUserById(Long id) {
String sql = "DELETE FROM user WHERE id = ?";
return jdbcTemplate.update(sql, id);
}
}
这里演示了常见的增删改查操作,使用了 JdbcTemplate 的 queryForObject、query、update 方法。
- 编写 Service 层代码
编写 Service 层代码,调用 DAO 层方法实现业务逻辑,例如:
@Service
public class UserService {
@Autowired
private UserDao userDao;
public User getUserById(Long id) {
return userDao.getUserById(id);
}
public List<User> getAllUsers() {
return userDao.getAllUsers();
}
public int saveUser(User user) {
return userDao.saveUser(user);
}
public int updateUser(User user) {
return userDao.updateUser(user);
}
public int deleteUserById(Long id) {
return userDao.deleteUserById(id);
}
}
这里使用了 @Autowired 注解注入 UserDao,调用其中的方法实现业务逻辑。
- 编写 Controller 层代码
编写 Controller 层代码,处理 HTTP 请求并调用 Service 层方法,例如:
@RestController
@RequestMapping("/user")
public class UserController {
@Autowired
private UserService userService;
@GetMapping("/{id}")
public User getUserById(@PathVariable Long id) {
return userService.getUserById(id);
}
@GetMapping
public List<User> getAllUsers() {
return userService.getAllUsers();
}
@PostMapping
public int saveUser(@RequestBody User user) {
return userService.saveUser(user);
}
@PutMapping("/{id}")
public int updateUser(@PathVariable Long id, @RequestBody User user) {
user.setId(id);
return userService.updateUser(user);
}
@DeleteMapping("/{id}")
public int deleteUserById(@PathVariable Long id) {
return userService.deleteUserById(id);
}
}
这里使用了 @Autowired 注解注入 UserService,处理 HTTP 请求并调用其中的方法,例如使用 @GetMapping 注解处理 GET 请求。
- 测试
启动应用程序并访问 http://localhost:8080/user 可以查看所有用户信息。
发起 POST 请求 http://localhost:8080/user 新增用户信息。
发起 PUT 请求 http://localhost:8080/user/{id} 修改用户信息。
发起 DELETE 请求 http://localhost:8080/user/{id} 删除用户信息。
发起 GET 请求 http://localhost:8080/user/{id} 可以查看单个用户信息。
以上就是 Spring Boot 集成达梦数据库的详细步骤,希望对您有所帮助。
DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。
更多推荐


所有评论(0)