使用JDBCtemplate来操作数据库

一、导入spring+版本号的jar包,本文最下面提供下载

 

二、创建数据库

create database resources;
create table resource(
id varchar(20),name varchar(20),size long,uploader varchar(20) ,uploadtime varchar(20),path varchar(20),downloadcount int
)

 三、使用数据库连接池来获取连接(如果使用数据库连接池,可使用c3p0来获取连接在本博客可以找到,使用超级方便)

这里我就不多做介绍了

四、下面就使用JDBCtemplate来实现增删改查等常见操作

package com.itcast.dao;

import java.util.LinkedList;
import java.util.List;

import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.JdbcTemplate;

import com.itcast.javabean.Resource;
import com.itcast.utils.JdbcUtils;

public class ResourceDao_template {
	public boolean add(Resource bean) {
		JdbcTemplate template = new JdbcTemplate(JdbcUtils.getDatasource());
		String sql = "insert into resource (id,name,size,uploadtime,uploader,downloadcount,path) values ("
				+ "?,?,?,?,?,?,?)";
		int resultInt = template.update(sql, new Object[] { bean.getId(),
				bean.getName(), bean.getSize(), bean.getUploadtime(),
				bean.getUploader(), bean.getDownloadcount(), bean.getPath() });
		if (resultInt > 0) {
			return true;
		}
		return false;
	}

	public boolean delete(String id) {
		JdbcTemplate template = new JdbcTemplate(JdbcUtils.getDatasource());
		String sql = "delete from resource where id=?";
		int resultInt = template.update(sql, new Object[] { id });
		if (resultInt > 0) {
			return true;
		}
		return false;
	}

	public boolean update(Resource bean) {
		JdbcTemplate template = new JdbcTemplate(JdbcUtils.getDatasource());
		String sql = "update resource set name=?,size=?,uploadtime=?,uploader=?,downloadcount=?,path=? where id=?";
		int resultInt = template.update(sql, new Object[] { bean.getName(),
				bean.getSize(), bean.getUploadtime(), bean.getUploader(),
				bean.getDownloadcount(), bean.getPath(), bean.getId() });
		if (resultInt > 0) {
			return true;
		}
		return false;
	}

	public List<Resource> getAll() {
		JdbcTemplate template = new JdbcTemplate(JdbcUtils.getDatasource());
		String sql = "select id from resource";
		List<String> ids = template.queryForList(sql, String.class);
		// template.query(sql, rowMapper)
		List<Resource> list = new LinkedList<Resource>();
		for (String id : ids) {
			System.out.println(id);
			Resource resource = find(id);
			list.add(resource);
			resource = null;
		}
		return list;
	}

	public Resource find(String id) {
		JdbcTemplate template = new JdbcTemplate(JdbcUtils.getDatasource());
		String sql = "select * from resource where id=?";
		Resource res = (Resource) template.queryForObject(sql,
				new Object[] { id }, new BeanPropertyRowMapper(Resource.class));
		return res;
	}

	public int getTotalRecord() {
		JdbcTemplate template = new JdbcTemplate(JdbcUtils.getDatasource());
		String sql = "select count(*) from resource";
		int totalRecord = template
				.queryForInt(sql, new Object[] { "count(*)" });
		return totalRecord;
	}
}
 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
package com.org.dao.impl; import java.sql.Connection; import java.sql.PreparedStatement; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import java.util.Map; import org.springframework.jdbc.core.BeanPropertyRowMapper; import org.springframework.jdbc.core.PreparedStatementCreator; import org.springframework.jdbc.core.RowCallbackHandler; import org.springframework.jdbc.support.GeneratedKeyHolder; import org.springframework.stereotype.Repository; import com.org.JdbcTempBaseDao; import com.org.dao.IUserDao; import com.org.model.User; @Repository @SuppressWarnings("all") public class UserDaoImpl extends JdbcTempBaseDao implements IUserDao { @Override public List<User> getUserList() { String sql="select * from user "; final List<User> list= new ArrayList<User>(); jdbcTemplate.query(sql, new RowCallbackHandler(){ @Override public void processRow(ResultSet rs) throws SQLException { User u=new User(); u.setId(rs.getInt("id")); u.setUsername(rs.getString("username")); u.setPassword(rs.getString("password")); u.setCreateDate(rs.getString("createDate")); u.setModifyDate(rs.getString("modifyDate")); u.setType(rs.getString("type")); list.add(u); } }); return list; } @Override public List<User> getUserLists(Map<String, Object> map) { return null; } @Override public Integer getUserCount(Map<String, Object> map) { String sql = "select count(1) from User where id=? "; return getJdbcTemplate().queryForObject(sql, Integer.class,map); } @Override public User getUserById(Integer primaryKeyId) { String sql = "select id,username, password, createDate, modifyDate,type from User where id=?"; List<User> userList = getJdbcTemplate().query(sql, new BeanPropertyRowMapper(User.class), primaryKeyId); if(userList.size() == 0) { return null; } return userList.get(0); } @Override public void delUserById(Integer primaryKeyId) { String sql = "delete from user where id=?"; getJdbcTemplate().update(sql, primaryKeyId); } @Override public User addUser(final User entity) { final String sql = "insert into User(username, password, createDate, modifyDate,type) values(?,?,?,?,?)"; GeneratedKeyHolder keyHolder = new GeneratedKeyHolder(); getJdbcTemplate().update(new PreparedStatementCreator() { @Override public PreparedStatement createPreparedStatement(Connection connection) throws SQLException { PreparedStatement psst = connection.prepareStatement(sql, new String[]{"id"}); psst.setString(1, entity.getUsername()); psst.setString(2, entity.getPassword()); psst.setString(3, entity.getCreateDate()); psst.setString(4, entity.getModifyDate()); psst.setString(5, entity.getType()); return psst; } }, keyHolder); entity.setId(keyHolder.getKey().intValue()); return entity; } @Override public void editUser(User entity) { String sql="update user set username=?,password=?"; jdbcTemplate.update(sql, User.class,entity); } }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值