为什么80%的码农都做不了架构师?>>>   

环境:hibernate 3.3.1 +spring 2.5.6+ sql server 2005

首先,上spring的hibernate配置

<bean id="sessionFactory"class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean"p:dataSource-ref="dataSource"><property name="hibernateProperties"><props><!-- SQLServer DIALECT --><prop key="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</prop><prop key="hibernate.show_sql">true</prop></props></property><property name="annotatedClasses"><list><value>com.bean.Contact</value></list></property></bean>

这里没有使用自动搜索·通过下面代码配置实例化类·

<property name="annotatedClasses"><list><value>com.bean.Contact</value></list>
</property>

下一步 Contact类代码:

import javax.persistence.Entity;
import javax.persistence.EntityResult;
import javax.persistence.NamedNativeQuery;
import javax.persistence.SqlResultSetMapping;@Entity
@SqlResultSetMapping(name = "ContactMapping", entities = @EntityResult(entityClass = Contact.class))
@NamedNativeQuery(name = "ContactQuery", query = "{call GetContact(?,?)}", resultSetMapping = "ContactMapping")
public class Contact{...........}

其中:

1 ContactQuery是可执行的查询名字·以后要在getNamedQuery()方法中用到·

2 ContactMapping是执行结果集和类的对应表,这里结果集的列名和类的属性名一致·所以就隐含设置了·

3 {call GetContact(?,?)} ·GetContact是存储过程的名字·(?,?)是指有两个参数

4 注意上面的引用包·用hibernate的包会出错·

再来看看DAO类的代码:

Query query = getSession().getNamedQuery("ContactQuery");
query.setString(0, ID);
query.setString(1, date);
List<Contact> ContactList= query.list();

其中:

1 getSession().getNamedQuery("ContactQuery")调用的就是在annotation里定义的名子

2 通过query.setString()设置存储过程的参数

PS:在网上查资料时看到有说这存储过程是必须要有返回结果集的·

转载于:https://my.oschina.net/piorcn/blog/310543

Hibernate中通过annotaion配置SQLServer的存储过程相关推荐

  1. Hibernate中二级缓存配置

    实体类 : 1 package cn.happy.entity; 2 public class Emp { 3 private Integer empNo; 4 private String empN ...

  2. java hibernate sqlserver自增_怎样在hibernate中实现oracle的主键自增策略?

    Oracle数据库索引和SQLServer的阐述 Oracle常见表结构 oracle数据库约束条件删除.取消.启用 在很多情况下,我们使用Hibernate在已经建立好数据库的基础上.在oracle ...

  3. SQLSERVER中的网络配置

    关于sqlserver中的网络配置,以前也用sqlserver2005做过东西,有时连接出错时,不是baidu就是google,对于这些常见的东西,一点都不明白是什么意思,惭愧啊,今天看了本书,写的不 ...

  4. Hibernate 中配置属性详解(hibernate.properties)

    转自:https://blog.csdn.net/shudaqi2010/article/details/70324843 Hibernate能在各种不同环境下工作而设计的, 因此存在着大量的配置参数 ...

  5. 怎样给oracle表设置序列,Oracle的sequence序列在hibernate中的配置方法

    Oracle自增序列在Hibernate中的配置方法 在很多情况下,我们使用Hibernate在已经建立好数据库的基础上.在oracle中,如果已经建立好的数据库中使用了sequence,则可以按照下 ...

  6. [置顶] 第十七章——配置SQLServer(2)——32位和64位系统中的内存配置

    前言: 本文讲述32位和64位系统中的内存配置,在SQLServer 2005/2008中,DBA们往往尝试开启AWE来限制内存.但是,在SQLServer2012以后,这个选项将被弃用,所以不能使用 ...

  7. (继续搬)struts日期格式的转换以及hibernate中session的关闭在xml中的配置

    1.struts日期格式的转换package cn.sxx.utils;import java.text.ParseException; import java.text.SimpleDateForm ...

  8. Hibernate中SessionFactory配置

    SessionFactory配置 因为Hibernate被设计为可以在许多不同环境下工作,所以它有很多配置参数.幸运的是,大部分都已经有默认值了,Hibernate发行包中还附带有示例的hiberna ...

  9. Hibernate中HQL使用的两种方试要注意的配置事项

    首先看问题: 1 不能创建bean org.springframework.beans.factory.BeanCreationException: Error creating bean with ...

最新文章

  1. 【翻译】Ext JS 6 Beta发布
  2. [转]Linux下pppoe配合Drcom插件上网方法介绍......
  3. Linux环境下查PG库的慢sql,postgresql慢SQL
  4. pyinstaller 打包成exe
  5. 推断股票强弱最有效的一个方法
  6. HTML 5新元素和CSS
  7. arraylist线程安全吗_java集合----超详细图解(ArrayList线程安全解决三种解决方法!)...
  8. [Eclipse]GEF入门系列(序)
  9. 深度学习(七十一)3D CNN时空特征学习
  10. 使用HTML图片热区area map制作区域地图的选择高亮效果
  11. reshape() 函数与 kron()函数的区别
  12. 全民热议“10万彩礼结不了婚”的背后,百合网做了什么?
  13. canvas画布调节字符间距
  14. [JavaScript]Object(对象)学习
  15. Games101-课程20笔记
  16. 高中数学压轴题:由正余弦定理判断三角形的形状(名师总结)
  17. 数据库 —— mycat 代理
  18. 【Java 数据结构 算法】宁可累死自己, 也要卷死别人 18 贪心算法
  19. view.setAlpha(float alpha)与view.getBackground().setAlpha(int alpha)的区别
  20. 了解TypeScript装饰器

热门文章

  1. 值类型和引用类型在栈和堆中的分配
  2. 浅谈 PHP 与手机 APP 开发(API 接口开发)
  3. 阻塞队列只有一个线程在同一时刻对其进行或者读或者写
  4. .gitignore过滤规则
  5. centOS Redhat yum的配置
  6. MySql-5.1.32的data文件夹找不到是什么原因呢?
  7. Extmail配置实践(一)
  8. Matlab画地球剖面图,分享用matlab显示地震记录的波形变面积图
  9. easyui框架前后端交互_Vue+ElementUI+.netcore前后端分离框架开发项目实战
  10. python3 循环写入一对多键值对_为什么Python 3.6以后字典有序并且效率更高?