博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JSF 2.0 + Spring + Hibernate integration(续)
阅读量:6237 次
发布时间:2019-06-22

本文共 2299 字,大约阅读时间需要 7 分钟。

在使用jsf+Spring+Hibernate做项目时,发现配置Hibernate的实体映射文件相当繁琐.前段时间做EJB时,一直采用的是JPA的注解方式.相比较之下,少写不少代码.于是花了些时间.将项目中原来使用xml配置的方式转成使用Annotation方式.记录如下:

注:为了使用Annotation,需将原HibernateSessionFactory.xml中sessionFactory的实现类改成:org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean

com.singtel.system.model.Customer

注:原来使用mappingResources来配对hbm.xml文件,现用annotatedClasses来直接映射到指定Class.

Or:也可通过通配符来自动扫描类包

com.singtel.system.model.*

注:packagesToScan是Spring 2.5.6新特性(推荐)

接下来要做的就是在java实体中增加注解.

package com.singtel.system.model;import java.io.Serializable;import java.util.Date;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id;import javax.persistence.Table;import javax.persistence.Temporal;import javax.persistence.TemporalType;@Entity(name="Customer")@Table(name="CUSTOMER_LWC")public class Customer implements Serializable{    @Id    @Column(name="CUSTOMER_ID",columnDefinition = "Integer")    @GeneratedValue(strategy = GenerationType.AUTO)    public long customerId;        @Column(name="CUSTOMER_ADDRESS",columnDefinition = "varchar2(255)", nullable = false)    public String address;        @Column(name="CUSTOMER_PASSWORD",columnDefinition = "varchar2(45)", nullable = false)    public String password;        @Column(name = "CREATED_DATE", nullable = false)    @Temporal(TemporalType.TIMESTAMP)    public Date createdDate;        public long getCustomerId() {        return customerId;    }    public void setCustomerId(long customerId) {        this.customerId = customerId;    }    public String getPassword() {        return password;    }    public void setPassword(String password) {        this.password = password;    }    public String getAddress() {        return address;    }    public void setAddress(String address) {        this.address = address;    }    public Date getCreatedDate() {        return createdDate;    }    public void setCreatedDate(Date createdDate) {        this.createdDate = createdDate;    }    }

删除原有hbm.xml.Ok

转载地址:http://dvzia.baihongyu.com/

你可能感兴趣的文章
计算机网络与Internet应用
查看>>
oracle在线迁移同步数据,数据库报错
查看>>
linux性能剖析工具
查看>>
flutter中的异步
查看>>
计算机高手也不能编出俄罗斯方块——计算机达人成长之路(16)
查看>>
error LNK2001: 无法解析的外部符号 __CrtDbgReport
查看>>
【多线程】的简单理解&进程 and【你的电脑是几核的?】
查看>>
# 2017-2018-1 20155224 《信息安全系统设计基础》第七周学习总结
查看>>
scikit-learn预处理实例之一:使用FunctionTransformer选择列
查看>>
邮件客户端导入邮件通讯录地址薄
查看>>
Centos 7配置LAMP
查看>>
tomcat7 1000并发量配置 tomcat7配置优化
查看>>
oracle 11g jdbc jar包在哪个文件目录
查看>>
Ocelot简易教程(四)之请求聚合以及服务发现
查看>>
C# 6.0新特性
查看>>
MySQL数据库的几种常见高可用方案
查看>>
java数组复制的几种常见用法
查看>>
去哪网实习总结:JavaWeb中文传參乱码问题的解决(JavaWeb)
查看>>
Xeon Phi之MIC编程知识点
查看>>
jigloo安装和介绍
查看>>