본문 바로가기
수업(국비지원)/Mybatis

[MYBATIS] (MVC 2) SaleDao, SaleMapper

by byeolsub 2023. 4. 21.

📌 SaleDao.java 수정

package dao;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

import javax.sql.DataSource;

import org.mybatis.spring.SqlSessionTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.BeanPropertyRowMapper;
import org.springframework.jdbc.core.RowMapper;
import org.springframework.jdbc.core.namedparam.BeanPropertySqlParameterSource;
import org.springframework.jdbc.core.namedparam.NamedParameterJdbcTemplate;
import org.springframework.jdbc.core.namedparam.SqlParameterSource;
import org.springframework.stereotype.Repository;

import dao.mapper.SaleMapper;
import logic.Sale;

@Repository
public class SaleDao {
	@Autowired //sqlSessionTemplate 객체 주입
	private SqlSessionTemplate template;
	private Map<String, Object> param = new HashMap<>();
	
	public int getMaxSaleId() {
		return template.getMapper(SaleMapper.class).getMaxSaleId();
	}

	public void insert(Sale sale) {
		template.getMapper(SaleMapper.class).insert(sale);
	}

	public List<Sale> list(String id) { //id : 사용자 아이디
		param.clear();
		param.put("userid", id);
		return template.getMapper(SaleMapper.class).list(param);
	}
}

 

 

📌 SaleMapper.java 생성

package dao.mapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Insert;
import org.apache.ibatis.annotations.Select;

import logic.Sale;

public interface SaleMapper {

	@Select("select nvl(max(saleid),0) from sale")
	int getMaxSaleId();

	@Insert("insert into sale (saleid, userid, saledate) values (#{saleid}, #{userid}, sysdate)")
	void insert(Sale sale);

	@Select("select * from sale where userid=:userid order by saleid desc")
	List<Sale> list(Map<String, Object> param);
	
}