1.新建db
/*客户表*/
CREATE TABLE customer(
c_id int NOT NULL AUTO_INCREMENT COMMENT '客户id',
c_name varchar(32) NOT NULL COMMENT '客户名称',
c_source varchar(32) DEFAULT NULL COMMENT '客户信息来源',
c_industry varchar(32) DEFAULT NULL COMMENT '客户所属行业',
c_level varchar(32) DEFAULT NULL COMMENT '客户级别',
c_address varchar(32) DEFAULT NULL COMMENT '客户联系地址',
c_phone varchar(64) DEFAULT NULL COMMENT '客户联系电话',
PRIMARY KEY(c_id)
)
2.创建arm.domain包,再创建客户实体类,并注解配置与表的映射
@Entity
@Table(name="customer")
public class Customer implements Serializable {
@Id
@Column(name="c_is")
@GeneratedValue(strategy=GenerationType.IDENTITY)
private Integer c_id;
@Column(name="c_name")
private String c_name;
@Column(name="c_source")
private String c_source;
@Column(name="c_industry")
private String c_industry;
@Column(name="c_level")
private String c_level;
@Column(name="c_address")
private String c_address;
@Column(name="c_phone")
private String c_phone;
public Integer getC_id() {
return c_id;
}
public void setC_id(Integer c_id) {
this.c_id = c_id;
}
public String getC_name() {
return c_name;
}
public void setC_name(String c_name) {
this.c_name = c_name;
}
public String getC_source() {
return c_source;
}
public void setC_source(String c_source) {
this.c_source = c_source;
}
public String getC_industry() {
return c_industry;
}
public void setC_industry(String c_industry) {
this.c_industry = c_industry;
}
public String getC_level() {
return c_level;
}
public void setC_level(String c_level) {
this.c_level = c_level;
}
public String getC_address() {
return c_address;
}
public void setC_address(String c_address) {
this.c_address = c_address;
}
public String getC_phone() {
return c_phone;
}
public void setC_phone(String c_phone) {
this.c_phone = c_phone;
}
@Override
public String toString() {
return "Customer [c_id=" + c_id + ", c_name=" + c_name + ", c_source="
+ c_source + ", c_industry=" + c_industry + ", c_level="
+ c_level + ", c_address=" + c_address + ", c_phone=" + c_phone
+ "]";
}
}
3.拷贝需要的jar包。注意,只拷贝相关的jar包。过余的jar包将引起冲突。现在拷贝进来的jar包:
1.hibernate的基本jar包(包括mysql驱动)
2.c3p0
3.spring Ioc 基本包
4.spring aop 基本包
5.spring事务控制
6.spring 整合junit
严格按照顺序来,后续修改得不偿失!!!
4.创建arm.service包,在包下创建客户的业务层接口
/*
* 客户的业务层接口
* */
public interface ICustomerService {
/*
* 查询客户列表
* */
List<Customer> findAllCustomer(DetachedCriteria dCriteria);
/*
* 保存客户信息
* */
void saveCustomer(Customer customer);
}
5.创建arm.service.impl包,在包下创建客户的业务层接口实现类
/*
* 客户的业务层实现类
* */
public class CustomerServiceImpl implements ICustomerService {
/*
* 持久层的客户接口引用
* */
private ICustomerDao customerDao;
@Override
public List<Customer> findAllCustomer(DetachedCriteria dCriteria) {
return customerDao.findALL(dCriteria);
}
@Override
public void saveCustomer(Customer customer) {
customerDao.save(customer);
}
}
6.创建arm.dao包,再创建客户的持久层接口
/*
* 客户的持久层接口
* */
public interface ICustomerDao {
/*
* 查询客户列表,是客户业务层方法的进一步实现
* */
List<Customer> findALL(DetachedCriteria dCriteria);
/*
* 保存客户,是客户业务层方法的进一步实现
* */
void save(Customer customer);
}
7.创建arm.dao.impl包,再创建客户持久层接口的实现类
/*
* 客户的持久层接口实现类
* */
public class CustomerDaoImpl implements ICustomerDao {
private HibernateTemplate hibernateTemplate;
@Override
public List<Customer> findALL(DetachedCriteria dCriteria) {
return hibernateTemplate.findByCriteria(dCriteria);
}
@Override
public void save(Customer customer) {
// TODO Auto-generated method stub
hibernateTemplate.save(customer);
}
}