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);
}
}