myeclipse 搭建ssh框架 2:model层替代数据库文件
2014-11-11 14:28
363 查看
接着写
当所有需要的jar包导入之后,下面就是如何进行分层开发。由于数据库方面的操作用的是sprig+hibernate,为了使持久层与底层数据库库类型相分离,我们使用注解+model的方式来自动生成表结构(主要用到的注解@Table 和@Entity,主外键和其他注解等请参照api进行查找)。
贴代码:
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="userBaseInfo")
public class UserBaseInfo implements java.io.Serializable {
private Integer id;
private String name;
private int age;
private String telphone;
public UserBaseInfo() {
}
public UserBaseInfo(String name, int age) {
this.name = name;
this.age = age;
}
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "ID", unique = true, nullable = false)
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
@Column(name = "Name", nullable = false, length = 45)
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
@Column(name = "Age", nullable = false)
public int getAge() {
return this.age;
}
public void setAge(int age) {
this.age = age;
}
public String getTelphone() {
return telphone;
}
public void setTelphone(String telphone) {
this.telphone = telphone;
}
}
这样子在建立实体类的同时可以在重新启动tomcat的时候根据hibernate配置文件 <property name="hbm2ddl.auto">update</property>自动更新表结构,而不需要手动操作数据库。
为了实现业务逻辑和持久层相分离,我们将包分成基本的几个包:com.cccc.struts(存放struts相关的Java文件),com.cccc.struts.action(存放struts的action文件),com.cccc.dao(存放持久层的接口),com.cccc.dao.impl(存放持久层的实现类),com.cccc.service(存放业务逻辑接口),com.cccc.service.impl(存放业务逻辑的实现类),com.cccc.orm(存放orm文件,本项目示例中主要是一个myeclipse自动生成的工厂文件),com.cccc.util(存放工具类)。在项目路径下建立一个资源文件,名为source,用于放置xml文件和property文件。这是后台源码相关的包。与前端相关的包在下个模块中讲解。
上面的是基本的包,如果以后需要自己生成过滤器拦截器或其他类型的文件,可以按照分类进行灵活添加。
至此后端实现了数据库不相关(可以在配置文件中灵活配置不同的数据库而不需要改动源码),持久层与业务逻辑层的分离(web service)。由于跳转控制使用的是struts的action,实现了mvc的分离。
基本框架的结构基本如此,再以后就是实现一些通用功能,比如日志管理,事务管理,通知,持久层的通用模板(spring结合hibernate)
当所有需要的jar包导入之后,下面就是如何进行分层开发。由于数据库方面的操作用的是sprig+hibernate,为了使持久层与底层数据库库类型相分离,我们使用注解+model的方式来自动生成表结构(主要用到的注解@Table 和@Entity,主外键和其他注解等请参照api进行查找)。
贴代码:
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.Table;
@Entity
@Table(name="userBaseInfo")
public class UserBaseInfo implements java.io.Serializable {
private Integer id;
private String name;
private int age;
private String telphone;
public UserBaseInfo() {
}
public UserBaseInfo(String name, int age) {
this.name = name;
this.age = age;
}
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "ID", unique = true, nullable = false)
public Integer getId() {
return this.id;
}
public void setId(Integer id) {
this.id = id;
}
@Column(name = "Name", nullable = false, length = 45)
public String getName() {
return this.name;
}
public void setName(String name) {
this.name = name;
}
@Column(name = "Age", nullable = false)
public int getAge() {
return this.age;
}
public void setAge(int age) {
this.age = age;
}
public String getTelphone() {
return telphone;
}
public void setTelphone(String telphone) {
this.telphone = telphone;
}
}
这样子在建立实体类的同时可以在重新启动tomcat的时候根据hibernate配置文件 <property name="hbm2ddl.auto">update</property>自动更新表结构,而不需要手动操作数据库。
为了实现业务逻辑和持久层相分离,我们将包分成基本的几个包:com.cccc.struts(存放struts相关的Java文件),com.cccc.struts.action(存放struts的action文件),com.cccc.dao(存放持久层的接口),com.cccc.dao.impl(存放持久层的实现类),com.cccc.service(存放业务逻辑接口),com.cccc.service.impl(存放业务逻辑的实现类),com.cccc.orm(存放orm文件,本项目示例中主要是一个myeclipse自动生成的工厂文件),com.cccc.util(存放工具类)。在项目路径下建立一个资源文件,名为source,用于放置xml文件和property文件。这是后台源码相关的包。与前端相关的包在下个模块中讲解。
上面的是基本的包,如果以后需要自己生成过滤器拦截器或其他类型的文件,可以按照分类进行灵活添加。
至此后端实现了数据库不相关(可以在配置文件中灵活配置不同的数据库而不需要改动源码),持久层与业务逻辑层的分离(web service)。由于跳转控制使用的是struts的action,实现了mvc的分离。
基本框架的结构基本如此,再以后就是实现一些通用功能,比如日志管理,事务管理,通知,持久层的通用模板(spring结合hibernate)
相关文章推荐
- java 项目ssh框架搭建的增删查改,带数据库文件
- 搭建SSH框架的时候的applicationContext.xml配置文件
- 昨天,将VS2005和数据库的环境搭建好了,现在来通过.pc文件生成.c文件
- 用MyEclipse搭建SSH框架 Struts Spring Hibernate
- Myeclipse10搭建SSH框架自动建立数据表1
- 【原创】用MyEclipse搭建和配置SSH框架详解(图文)
- 搭建SSH框架的时候的struts-config.xml配置文件(用controller管理)
- SSH框架学习(一 、myeclipse10下ssh框架搭建详细图解)
- CRM项目01_准备(导入.sql文件到数据库,MyEclipse里校验设置)
- Myeclipse10下搭建SSH框架(图解)Struts2.1+Spring3.0+Hibernate3.3
- MyEclipse搭建SSH框架 Struts2.1+Spring3.0+hibernate3.3
- 用MyEclipse搭建SSH框架 Struts Spring Hibernate
- 用MyEclipse搭建SSH框架 Struts Spring Hibernate
- 用MyEclipse搭建SSH框架 Struts Spring Hibernate
- MyEclipse搭建SSH框架 Struts2.1+Spring3.0+hibernate3.3
- SSH框架下,用Annotations注解方式替代hbm.xml配置文件
- ssh框架(myeclipse10下ssh框架搭建详细图解)
- MyEclipse搭建SSH框架 Struts2.1+Spring3.0+hibernate3.3
- SSH框架的搭建与配置文件的书写格式
- MyEclipse搭建SSH框架 Struts2.1+Spring3.0+hibernate3.3