前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >几句简单代码解决springboot整合JdbcTemplate访问数据库进行操作

几句简单代码解决springboot整合JdbcTemplate访问数据库进行操作

作者头像
好好学java
发布2018-12-10 14:41:13
6890
发布2018-12-10 14:41:13
举报

这篇文章我们看一下springboot整合jdbc,做一个小例子来讲解。

数据源配置

pom.xml文件中导入

代码语言:javascript
复制
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring‐boot‐starter‐jdbc</artifactId>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql‐connector‐java</artifactId>
    <scope>runtime</scope>
</dependency>

然后在application.properties中配置数据库信息:

代码语言:javascript
复制
spring.datasource.url=jdbc:mysql://localhost:3306/test
spring.datasource.username=root
spring.datasource.password=0911SIHAI
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

使用JdbcTemplate操作数据库

这里我们以user进行对数据库的操作,做一个小例子

user代码:

代码语言:javascript
复制
/**
 * @author 
 * @date 2018/7/26 16:09
 */
public class User {


    private String username;

    private String password;

    //getter setter
}
  • 定义包含有插入、删除、查询的抽象接口UserService
代码语言:javascript
复制
/**
 * @author 
 * @date 2018/7/26 16:07
 */
public interface UserService {

    /**
     * 新增用户
     * @param username
     * @param password
     */
    void add(String username, String password);

    /**
     * 根据name删除一个用户高
     * @param userName
     */
    void deleteByName(String userName);

    /**
     * 获取所有用户
     */
    List<User> getAllUsers();


}
  • 通过JdbcTemplate实现UserService中定义的数据访问操作
代码语言:javascript
复制
/**
 * @author 
 * @date 2018/7/26 16:11
 */
@Service
public class UserServiceImpl implements UserService {

    @Autowired
    private JdbcTemplate jdbcTemplate;

    @Override
    public void add(String username, String password) {
        jdbcTemplate.update("insert into user values (?,?)",username,password);
    }

    @Override
    public void deleteByName(String userName) {
        jdbcTemplate.update("delete from user where username = ?",userName);
    }

    @Override
    public List<User> getAllUsers() {
        return jdbcTemplate.query("select * from user",
                new RowMapper(){
                    @Override
                    public Object mapRow(ResultSet rs, int rowNum) throws SQLException {
                        User user  = new User();
                        user.setUsername(rs.getString("username"));
                        user.setPassword(rs.getString("password"));
                        return user;
                    }
        } );
    }
}
  • 对用户操作进行测试
代码语言:javascript
复制
/**
 * @author 
 * @date 2018/7/26 16:22
 */
@RunWith(SpringRunner.class)
@SpringBootTest
public class UserTest {

    @Autowired
    private UserService userService;

    @Test
    public void testAdd(){

        userService.add("sihai","abc");
        userService.add("yan","abc");
    }

    @Test
    public void testQuery(){

        List<User> users = userService.getAllUsers();

        Assert.assertEquals(2, users.size());
    }
}

这里只是一个简单的例子,但是基本的jdbc的操作是有了,具体的jdbcTemplate的使用可以查看

https://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/jdbc/core/JdbcTemplate.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-11-08,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 好好学java 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 数据源配置
  • 使用JdbcTemplate操作数据库
相关产品与服务
数据库
云数据库为企业提供了完善的关系型数据库、非关系型数据库、分析型数据库和数据库生态工具。您可以通过产品选择和组合搭建,轻松实现高可靠、高可用性、高性能等数据库需求。云数据库服务也可大幅减少您的运维工作量,更专注于业务发展,让企业一站式享受数据上云及分布式架构的技术红利!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档