jdbc的学习之路(二)

 dao思想:建立一个数据接口:

步骤:1)在数据库建立一张

2)在项目中建立package包com_xyit_shadow_domian(专门用于存储对象类)

根据数据库中表建立对象类(符合javabean规范)

3)在项目中建立package包com_xyit_shadow_dao(专门用于存储操作类的接口)

4)在项目中建立package包com_xyit_shadow_dao下建立package包com_xyit_shadow_daoimp(专门用于存储操作类的实现类)

5)在项目中建立package包com_xyit_shadow_daotest(专门用于存储测试接口的测试类)

 实例

Ninjia.java

package com_xyit_shadow_domain;

public class Ninjia {
	public Long id;
	public String name;
	public int age;
	
	public Ninjia() {
	}
	public Long getId() {
		return id;
	}


	public void setId(Long id) {
		this.id = id;
	}


	public String getName() {
		return name;
	}


	public void setName(String name) {
		this.name = name;
	}


	public int getAge() {
		return age;
	}


	public void setAge(int age) {
		this.age = age;
	}


	@Override
	public String toString() {
		return "ninjia [id=" + id + ", name=" + name + ", age=" + age + "]";
	}
	public Ninjia(String name, int age) {
		super();
		this.name = name;
		this.age = age;
	}
	
	
	
	
	

}

INinjiaDao.java

package com_xyit_shadow_Dao;



import java.util.List;

import com_xyit_shadow_domain.Ninjia;

public interface INinjiaDao {
	//ddl
	Ninjia get(Long id);
	List<Ninjia> getall();
	//dml
	Long save(Ninjia ninjia);
	Long update(Long id,Ninjia ninjia);
	Long delete(Long id);
}

NinjiadaoImp.java

package com_xyit_shadow_Dao.imp;
import java.util.List;
import com_xyit_shadow_Dao.INinjiaDao;
import com_xyit_shadow_Dao.IResultSetHandle;
import com_xyit_shadow_domain.Ninjia;

public class NinjiaDaoimp implements INinjiaDao{
	
	public Ninjia get(Long id){
		String sql="SELECT * FROM `ninjia` WHERE `id` = ?";
		IResultSetHandle<Ninjia> IRS=new BeanHandler<>(Ninjia.class);
		return JdbcTemplate.get(sql,IRS, id).get(0);
	}

	public List<Ninjia> getall() {
		String sql="SELECT * FROM `ninjia`";
		IResultSetHandle<Ninjia> IRS=new BeanHandler<>(Ninjia.class);
		return JdbcTemplate.get(sql,IRS);		
	}

	public Long save(Ninjia ninjia){
		//INSERT INTO `student` (`id`, `name`, `age`) VALUES ('3', '3', '5')
		String sql="INSERT INTO `ninjia` (`name`, `age`) VALUES (?, ?)";
		Object[] params=new Object[] {ninjia.name,ninjia.age};
		return JdbcTemplate.update(sql, params);
	}

	public Long update(Long id, Ninjia ninjia) {
		String sql="UPDATE `ninjia` SET `name`=?, `age`=? WHERE (`id`=?)";
		return JdbcTemplate.update(sql, ninjia.name,ninjia.age,id);
	}

	public Long delete(Long id) {
		String sql="DELETE FROM `ninjia` WHERE (`id`=?)";
		return JdbcTemplate.update(sql, id);
	}

}
package com_xyit_shadow_test;


import java.util.List;
import org.junit.Test;
import com_xyit_shadow_Dao.INinjiaDao;
import com_xyit_shadow_Dao.imp.NinjiaDaoimp;
import com_xyit_shadow_domain.Ninjia;


public class INinjiaDaoTest {

	@Test
	public void testGet() throws Exception {
		Long id=(long) 1;
		INinjiaDao ninjiaDao=new NinjiaDaoimp();
		Ninjia ninjia=ninjiaDao.get(id);
		System.out.println(ninjia);
	}

	@Test
	public void testGetall() {
		INinjiaDao ninjiaDao=new NinjiaDaoimp();
		List<Ninjia> ninjias=ninjiaDao.getall();
		System.out.println(ninjias);
	}

	@Test
	public void testSave() throws Exception {
		INinjiaDao ninjiaDao=new NinjiaDaoimp();
		Ninjia ninjia=new Ninjia("五杀", 5);
		System.out.println(ninjiaDao.save(ninjia));
	}

	@Test
	public void testUpdate() {
		INinjiaDao ninjiaDao=new NinjiaDaoimp();
		Ninjia ninjia=new Ninjia("五杀", 5);
		System.out.println(ninjiaDao.update((long) 6, ninjia));
	}

	@Test
	public void testDelete() {
		INinjiaDao ninjiaDao=new NinjiaDaoimp();
		ninjiaDao.delete((long) 6);
	}

}

猜你喜欢

转载自blog.csdn.net/wzxsb123/article/details/82716306