91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Spring JDBC的使用方法詳解

發布時間:2020-08-23 16:36:27 來源:腳本之家 閱讀:146 作者:幸福的小耗子 欄目:編程語言

1、為什么使用Spring提供的JDBC的封裝?

因為Spring提供了完整的模板類以及基類可以簡化開發,我們只需寫少量的代碼即可。

2、實例講解

第一步:導入依賴  mysql-connector spring-jdbc spring-tx spring-core spring-beans spring-context 等等

第二步:數據庫的建立,配置xml

第三步:獲取jdbcTemplate對象

可以這樣獲得

 private JdbcTemplate jdbcTemplate;
  public void setDataSource(DataSource dataSource){
    this.jdbcTemplate=new JdbcTemplate(dataSource);
} 
<bean id="userDao" class="com.test.jdbc.dao.impl.UserDaoImpl">
    <property name="dataSource" ref="dataSource"/>
</bean>

也可以繼承JdbcDaoSupport,使用super.getJdbcTemplate()獲得

第四步:使用jdbcTemplate對象進行增刪改查

增刪改使用update(),這個方法的參數,第一個為sql語句,之后為可變參數,傳入sql語句中的占位符

查詢使用queryForObject()方法的第一個參數為sql中需要的參數,第三個參數為實現RowMapper接口的對象,

用于處理結果集,該方法要求返回單一的對象

query()該方法返回對象集合

public class UserDaoImpl extends JdbcDaoSupport implements IUserDao {

  public void save(User user) {
    super.getJdbcTemplate().update("insert into user(id,username,password,date,salary) values(null,?,?,?,?)",
        user.getUsername(),user.getPassword(),user.getDate(),user.getSalary());

  }

  public void update(User user) {
    super.getJdbcTemplate().update("update user set username=?,password=?,date=?,salary=? where id=?",
        user.getUsername(), user.getPassword(), user.getDate(), user.getSalary(), user.getId());

  }

  public void delete(Integer id) {
    super.getJdbcTemplate().update("delete from user where id=?",id);
  }

  public User findById(Integer id) {
    /* List<User> user = super.getJdbcTemplate().query("select * from user where id=?", new Object[]{id},
        new RowMapper<User>() {
          @Override
          public User mapRow(ResultSet resultSet, int i) throws SQLException {
            User user = new User();
            user.setId(resultSet.getInt("id"));
            user.setDate(resultSet.getDate("date"));
            user.setUsername(resultSet.getString("username"));
            user.setPassword(resultSet.getString("password"));
            user.setSalary(resultSet.getBigDecimal("salary"));
            return user;
          }
          //方法的返回值會直接封裝到集合中
        });
    return user.size()>0?user.get(0):null;*/

    User user = super.getJdbcTemplate().queryForObject("select * from user where id=?", new Object[]{id},
        new RowMapper<User>() {
          @Override
          public User mapRow(ResultSet resultSet, int i) throws SQLException {
            User user = new User();
            user.setId(resultSet.getInt("id"));
            user.setDate(resultSet.getDate("date"));
            user.setUsername(resultSet.getString("username"));
            user.setPassword(resultSet.getString("password"));
            user.setSalary(resultSet.getBigDecimal("salary"));
            return user;
          }
        });
    return user;
  }

  public List<User> findAll() {
    List<User> users = super.getJdbcTemplate().query("select * from user",
        new RowMapper<User>() {
          @Override
          public User mapRow(ResultSet resultSet, int i) throws SQLException {
            User user = new User();
            user.setId(resultSet.getInt("id"));
            user.setDate(resultSet.getDate("date"));
            user.setUsername(resultSet.getString("username"));
            user.setPassword(resultSet.getString("password"));
            user.setSalary(resultSet.getBigDecimal("salary"));
            return user;
          }
          //方法的返回值會直接封裝到集合中
        });
    return users;
  }

}

3、JdbcTemplate是JDBC核心包的中心類

知識點查詢地址:

https://docs.spring.io/spring-framework/docs/current/spring-framework-reference/data-access.html#jdbc

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持億速云。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

高尔夫| 阳朔县| 理塘县| 太保市| 宿松县| 安图县| 遂宁市| 贵定县| 武川县| 股票| 金沙县| 海林市| 龙里县| 四子王旗| 勃利县| 海阳市| 安福县| 林州市| 油尖旺区| 天峻县| 定日县| 荣昌县| 徐闻县| 安阳县| 新巴尔虎左旗| 郑州市| 桃园县| 西充县| 阳新县| 乌拉特后旗| 澜沧| 罗山县| 介休市| 临桂县| 香港| 深州市| 安宁市| 新闻| 什邡市| 龙里县| 波密县|