springBoot使用JdbcTemplate代码实例
springBoot使用JdbcTemplate
如果是通过spring自动注入的jdbcTemplate,配好application.properties在其他类中就能在其他类中直接使用。
如果通过newJdbcTemplate()出来的就需要自己配置DataSource。
自动注入如下
application.properties文件
spring.datasource.url=jdbc:mysql://localhost:3306/test?serverTimezone=UTC spring.datasource.username=root spring.datasource.password=root spring.datasource.driver-class-name=com.mysql.jdbc.Driver spring.datasource.type=com.alibaba.druid.pool.DruidDataSourceC3P0Adapter
UserDao
packagecom.example.demo.dao; importcom.example.demo.pojo.UserInfo; importorg.springframework.jdbc.core.JdbcTemplate; importorg.springframework.jdbc.core.PreparedStatementCreator; importorg.springframework.jdbc.core.RowMapper; importorg.springframework.jdbc.support.GeneratedKeyHolder; importorg.springframework.jdbc.support.KeyHolder; importorg.springframework.stereotype.Repository; importjavax.annotation.Resource; importjava.sql.*; importjava.util.ArrayList; importjava.util.List; @Repository publicclassUserDao{ @Resource privateJdbcTemplatejdbcTemplate; publicUserInfocreateUser(UserInfou){ Stringsql="insertintouser(name,address)values(?,?)"; KeyHolderholder=newGeneratedKeyHolder(); jdbcTemplate.update(newPreparedStatementCreator(){ publicPreparedStatementcreatePreparedStatement(Connectionconn)throwsSQLException{ PreparedStatementps=conn.prepareStatement(sql,Statement.RETURN_GENERATED_KEYS); ps.setString(1,u.getName()); ps.setString(2,u.getAddress()); returnps; } },holder); intinsertId=holder.getKey().intValue(); u.setId(insertId); returnu; } publicvoidcreateUserList(){ Stringsql="insertintouser(name,address)values(?,?)"; List
手动配置如下
DriverManagerDataSourcedataSource=newDriverManagerDataSource(); dataSource.setDriverClassName("org.postgresql.Driver"); dataSource.setUrl("jdbc:postgresql://127.0.0.1:5432/postgres"); dataSource.setUsername("postgres"); dataSource.setPassword("332578"); JdbcTemplatejdbcTemplate=newJdbcTemplate(dataSource);
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。