Spring jdcbtemplate实例
2015-07-22 17:14
459 查看
javabean
service的接口类,由于这个例子服务与Dao一样,所以接口一样
service实现类
bean
package com.example.modle; public class Student { private int id; private String name; private int age; public Student(int id, String name, int age) { super(); this.id = id; this.name = name; this.age = age; } public int getId() { return id; } public Student() { super(); } public Student(String name, int age) { super(); this.name = name; this.age = age; } public void setId(int 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 "Student [id=" + id + ", name=" + name + ", age=" + age + "]"; } }Dao接口类
package com.example.Dao; import java.util.List; import com.example.modle.Student; public interface StudentDao { public int addStudent(Student student); public int deleteStudent(int id); public int updateStudent(Student student); public List<Student> findStudent(); }Dao实现类
package com.example.Dao; import java.sql.ResultSet; import java.sql.SQLException; import java.util.ArrayList; import java.util.List; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.jdbc.core.RowCallbackHandler; import com.example.modle.Student; public class StudentDaoImpl implements StudentDao{ private JdbcTemplate jdbcTemplate; public void setJdbcTemplate(JdbcTemplate jdbcTemplate) { this.jdbcTemplate = jdbcTemplate; } @Override public int addStudent(Student student) { String sql = "insert into student values(?,?,?)"; Object []params = new Object[]{student.getId(),student.getName(),student.getAge()}; return jdbcTemplate.update(sql, params); } @Override public int deleteStudent(int id) { String sql = "delete from student where id=?"; Object []params = new Object[]{id}; return jdbcTemplate.update(sql, params); } @Override public int updateStudent(Student student) { String sql = "update student set name=?,age=? where id=?"; Object []params = new Object[]{student.getName(),student.getAge(),student.getId()}; return jdbcTemplate.update(sql, params); } @Override public List<Student> findStudent() { String sql = "select * from student"; final List<Student> studentList = new ArrayList<Student>(); jdbcTemplate.query(sql, new RowCallbackHandler() { @Override public void processRow(ResultSet rs) throws SQLException { Student student = new Student(); student.setId(rs.getInt("id")); student.setName(rs.getString("name")); student.setAge(rs.getInt("age")); studentList.add(student); } }); return studentList; } }
service的接口类,由于这个例子服务与Dao一样,所以接口一样
package com.example.service; import java.util.List; import com.example.modle.Student; public interface StudentService { public int addStudent(Student student); public int deleteStudent(int id); public int updateStudent(Student student); public List<Student> findStudent(); }
service实现类
package com.example.service; import java.util.List; import com.example.Dao.StudentDao; import com.example.modle.Student; public class StudentServiceImpl implements StudentService{ private StudentDao studentDao; public void setStudentDao(StudentDao studentDao) { this.studentDao = studentDao; } @Override public int addStudent(Student student) { return studentDao.addStudent(student); } @Override public int deleteStudent(int id) { return studentDao.deleteStudent(id); } @Override public int updateStudent(Student student) { return studentDao.updateStudent(student); } @Override public List<Student> findStudent() { // TODO Auto-generated method stub return studentDao.findStudent(); } }
bean
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:aop="http://www.springframework.org/schema/aop" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/aop http://www.springframework.org/schema/aop/spring-aop.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd"> <!-- 数据源 --> <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close"> <property name="driverClassName" value="${jdbc.driverClassName}" /> <property name="url" value="${jdbc.url}" /> <property name="username" value="${jdbc.username}" /> <property name="password" value="${jdbc.password}" /> </bean> <context:property-placeholder location="jdbc.properties" /> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"></property> </bean> <bean id="studentDao" class="com.example.Dao.StudentDaoImpl"> <property name="jdbcTemplate" ref="jdbcTemplate"></property> </bean> <bean id="studentService" class="com.example.service.StudentServiceImpl"> <property name="studentDao" ref="studentDao"></property> </bean> </beans>测试
package com.example.test; import java.util.List; import org.junit.Test; import org.springframework.context.ApplicationContext; import org.springframework.context.support.ClassPathXmlApplicationContext; import com.example.modle.Student; import com.example.service.StudentService; public class test { @Test public void addtest(){ ApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml"); StudentService studentService = (StudentService) ac.getBean("studentService"); int i = studentService.addStudent(new Student(1,"张三", 20)); if (i == 1) { System.out.println("添加成功"); } } @Test public void updatetest(){ ApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml"); StudentService studentService = (StudentService) ac.getBean("studentService"); int i = studentService.updateStudent(new Student(2,"张三2", 20)); if (i == 1) { System.out.println("修改成功"); } } @Test public void deletetest(){ ApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml"); StudentService studentService = (StudentService) ac.getBean("studentService"); int i = studentService.deleteStudent(1); if (i == 1) { System.out.println("删除成功"); } } @Test public void findalltest(){ ApplicationContext ac = new ClassPathXmlApplicationContext("beans.xml"); StudentService studentService = (StudentService) ac.getBean("studentService"); List<Student> s = studentService.findStudent(); if (s != null) { System.out.println("查找成功"); for (Student student : s) { System.out.println(student); } } } }jdbc.properties
jdbc.driverClassName=oracle.jdbc.driver.OracleDriver jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521:orcl jdbc.username=scott jdbc.password=Ss123457
相关文章推荐
- 了解 Spring Data JPA
- JAVA 集合
- JAVA 集合
- 《深入浅出struts2》--第四章,OGNL
- java编程经验分享---怎样判断稽核类型的null
- Spring之JdbcTemplate实现封装
- Myeclipse的优化方法
- 你的程序支持复杂的时间调度嘛?如约而来的 java 版本
- Java字符串简单用法
- spring mvc Controller中使用@Value无法获取属性值
- java 获取工程部署的路径
- 算法(第四版)学习笔记之java实现插入排序
- Spring事务配置的5中方式
- Java InputStream层次分析
- 创建eclipse和androidstudio同时支持的android项目
- JAVA矩阵包JAMA学习
- java_加密解密
- 用Java实现二叉树
- Java获取最近一周的时间
- 自己跑通的一个SpringMVC配合Hibernate的demo,写下来,免得以后再跳坑