java框架简介1--spring+hibernate简介 2 用例驱动编程
2010-08-06 21:30
337 查看
第三部分 用例驱动程序设计:
现在我们已经将Spring+Hibernate的架子搭起来了,然后我们向向其中添加一些功能,我们应该怎样向架子中添肉呢?
这个过程是一个正向过程,比如,在前面我们已经向学生的数据库中添加了一条记录,现在我们想通过学号来检索出这个同学,于是,要在测试程序中这样写
您会看到,eclipse会提示您出现错误,划横线那个。然后鼠标点击这个横线,按住ctril+1键,将会出现下面的提示:
选择create method 那项,就在StudentService类中创建这个方法。然后我们修改这个方法如下:
看到仍然有错误提示,还是按住ctrl+1键,继续选择create method,会在StudentDao中创建这个方法。然后我们把修改过的部分都保存,会出现一个错误,如下图:
然后我们继续按住ctrl+1,这回选择add unimplement method那项,然后添加下面代码
package com.guan.springHibernateTest.impl;
import java.util.List;
import org.springframework.stereotype.Component;
import com.guan.springHibernateTest.dao.StudentDao;
import com.guan.springHibernateTest.model.Student;
@Component("studentDao")
public class StudentDaoImpl extends SuperImpl implements StudentDao{
@SuppressWarnings("unchecked")
public Student getStudent(String studentId) {
Student student = new Student();
student.setStudentId(studentId);
List<Student> list = this.getHibernateTemplate().findByExample(student);
/*这个是Hibernate的查询,通过findByExample,您仅需将您要查询的字段赋值到一个变量中,Hibernate会自动根据你赋值的条件做为查询条件为您检索结果,注意返回的是个list,任何查询都会返回list*/
if(list.size() != 0)//因为学号唯一,所有如果存在这个同学,仅需取第一个
return list.get(0);
return null;//否则这个同学不存在
}
}
从上面我们可以看出,Hibernate的查询是如此的简单,不需要sql语句!!
第四部分 总结:
我们先从数据建模入手,写Hibernate并对其配置进行测试,通过Hibernate生成数据库的数据表。在实际应用中Spring是不需要Hibernate的配置文档的,但是在写程序的过程中可以加上这个文档,有利于数据库自动生成,和代码测试。毕竟我们不想每次启动Spring的时候都重新创建数据库!
然后我们介绍了Spring程序架子的搭建,无论您的程序处理多么复杂,框框总是相同或相似的,按照我上面推荐的方式搭框架会给您的编程带来很大方便。
最后就是填肉了,我们采用一种用例驱动的方式,对应网页程序来说,就是界面驱动,都界面需要传入什么数据,需要后台给我传回什么数据,这不是最好的接口定义方式吗!这样我们一个功能一条线的往下写,不混乱也不冲突,很开心吧。但是要附加一句,对应复杂的应用需要进行更好的分析才行!!
最后,给出所需要的jar:
如果您想获得更多的信息,就去看Spring的官方文档吧!!(英文的,当年为啥不好好学英语呢!真是少壮不努力,老大徒伤悲呀!!)
现在我们已经将Spring+Hibernate的架子搭起来了,然后我们向向其中添加一些功能,我们应该怎样向架子中添肉呢?
这个过程是一个正向过程,比如,在前面我们已经向学生的数据库中添加了一条记录,现在我们想通过学号来检索出这个同学,于是,要在测试程序中这样写
您会看到,eclipse会提示您出现错误,划横线那个。然后鼠标点击这个横线,按住ctril+1键,将会出现下面的提示:
选择create method 那项,就在StudentService类中创建这个方法。然后我们修改这个方法如下:
看到仍然有错误提示,还是按住ctrl+1键,继续选择create method,会在StudentDao中创建这个方法。然后我们把修改过的部分都保存,会出现一个错误,如下图:
然后我们继续按住ctrl+1,这回选择add unimplement method那项,然后添加下面代码
package com.guan.springHibernateTest.impl;
import java.util.List;
import org.springframework.stereotype.Component;
import com.guan.springHibernateTest.dao.StudentDao;
import com.guan.springHibernateTest.model.Student;
@Component("studentDao")
public class StudentDaoImpl extends SuperImpl implements StudentDao{
@SuppressWarnings("unchecked")
public Student getStudent(String studentId) {
Student student = new Student();
student.setStudentId(studentId);
List<Student> list = this.getHibernateTemplate().findByExample(student);
/*这个是Hibernate的查询,通过findByExample,您仅需将您要查询的字段赋值到一个变量中,Hibernate会自动根据你赋值的条件做为查询条件为您检索结果,注意返回的是个list,任何查询都会返回list*/
if(list.size() != 0)//因为学号唯一,所有如果存在这个同学,仅需取第一个
return list.get(0);
return null;//否则这个同学不存在
}
}
从上面我们可以看出,Hibernate的查询是如此的简单,不需要sql语句!!
第四部分 总结:
我们先从数据建模入手,写Hibernate并对其配置进行测试,通过Hibernate生成数据库的数据表。在实际应用中Spring是不需要Hibernate的配置文档的,但是在写程序的过程中可以加上这个文档,有利于数据库自动生成,和代码测试。毕竟我们不想每次启动Spring的时候都重新创建数据库!
然后我们介绍了Spring程序架子的搭建,无论您的程序处理多么复杂,框框总是相同或相似的,按照我上面推荐的方式搭框架会给您的编程带来很大方便。
最后就是填肉了,我们采用一种用例驱动的方式,对应网页程序来说,就是界面驱动,都界面需要传入什么数据,需要后台给我传回什么数据,这不是最好的接口定义方式吗!这样我们一个功能一条线的往下写,不混乱也不冲突,很开心吧。但是要附加一句,对应复杂的应用需要进行更好的分析才行!!
最后,给出所需要的jar:
如果您想获得更多的信息,就去看Spring的官方文档吧!!(英文的,当年为啥不好好学英语呢!真是少壮不努力,老大徒伤悲呀!!)
相关文章推荐
- java框架简介1--spring+hibernate简介 2 基本结合
- Java高级工程师面试题目汇集(关于Struts,Spring,Hibernate三大框架的面试)
- Java高手真经. 应用框架卷:Java Web核心框架:Struts 1+Struts 2+Spring+Hibernate+iBATIS (china-pub 首发)
- java中三大框架struts/Hibernate/Spring,具体是怎样合作工作的?各自实现什么功能?
- Struts2、spring、hibernate三大框架简介
- Java新手如何学习Spring、Struts、Hibernate三大框架?
- java SSH2 框架搭建 (myeclipse 6.5 + jdk 1.6+ struts-2.3.1.2+hibernate 3.5+spring 3.1)
- Java Web开发框架Spring+Hibernate整合效果介绍(附源码)
- Executor框架简介-java并发编程
- Java SSH/SSI框架科普(Struts+Spring+Hibernate/Ibatis)
- Java 常用框架(Spring,SpringMVC,Hibernate,mybatis)整合
- Java高级工程师面试题目汇集(关于Struts,Spring,Hibernate三大框架的面试)
- Java框架之Spring、Struts、Hibernate详解--(六)
- Spring - Java/J2EE Application Framework 应用框架 第 5 章 Spring AOP: Spring之面向方面编程
- java传统框架ssh---struts、spring、hibernate框架的搭建
- java框架整合例子(spring、spring mvc、spring data jpa、hibernate)
- 常见Struts、Hibernate、Spring、J2EE、ibatis、Oracle等开发框架架构图及其简介
- JAVA框架--hibernate、struts2、spring
- Java新手如何学习Spring、Struts、Hibernate三大框架?
- JAVA 三大框架 Struts+Hibernate+Spring