Hibernate中通过annotaion配置SQLServer的存储过程
为什么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的存储过程相关推荐
- Hibernate中二级缓存配置
实体类 : 1 package cn.happy.entity; 2 public class Emp { 3 private Integer empNo; 4 private String empN ...
- java hibernate sqlserver自增_怎样在hibernate中实现oracle的主键自增策略?
Oracle数据库索引和SQLServer的阐述 Oracle常见表结构 oracle数据库约束条件删除.取消.启用 在很多情况下,我们使用Hibernate在已经建立好数据库的基础上.在oracle ...
- SQLSERVER中的网络配置
关于sqlserver中的网络配置,以前也用sqlserver2005做过东西,有时连接出错时,不是baidu就是google,对于这些常见的东西,一点都不明白是什么意思,惭愧啊,今天看了本书,写的不 ...
- Hibernate 中配置属性详解(hibernate.properties)
转自:https://blog.csdn.net/shudaqi2010/article/details/70324843 Hibernate能在各种不同环境下工作而设计的, 因此存在着大量的配置参数 ...
- 怎样给oracle表设置序列,Oracle的sequence序列在hibernate中的配置方法
Oracle自增序列在Hibernate中的配置方法 在很多情况下,我们使用Hibernate在已经建立好数据库的基础上.在oracle中,如果已经建立好的数据库中使用了sequence,则可以按照下 ...
- [置顶] 第十七章——配置SQLServer(2)——32位和64位系统中的内存配置
前言: 本文讲述32位和64位系统中的内存配置,在SQLServer 2005/2008中,DBA们往往尝试开启AWE来限制内存.但是,在SQLServer2012以后,这个选项将被弃用,所以不能使用 ...
- (继续搬)struts日期格式的转换以及hibernate中session的关闭在xml中的配置
1.struts日期格式的转换package cn.sxx.utils;import java.text.ParseException; import java.text.SimpleDateForm ...
- Hibernate中SessionFactory配置
SessionFactory配置 因为Hibernate被设计为可以在许多不同环境下工作,所以它有很多配置参数.幸运的是,大部分都已经有默认值了,Hibernate发行包中还附带有示例的hiberna ...
- Hibernate中HQL使用的两种方试要注意的配置事项
首先看问题: 1 不能创建bean org.springframework.beans.factory.BeanCreationException: Error creating bean with ...
最新文章
- 【翻译】Ext JS 6 Beta发布
- [转]Linux下pppoe配合Drcom插件上网方法介绍......
- Linux环境下查PG库的慢sql,postgresql慢SQL
- pyinstaller 打包成exe
- 推断股票强弱最有效的一个方法
- HTML 5新元素和CSS
- arraylist线程安全吗_java集合----超详细图解(ArrayList线程安全解决三种解决方法!)...
- [Eclipse]GEF入门系列(序)
- 深度学习(七十一)3D CNN时空特征学习
- 使用HTML图片热区area map制作区域地图的选择高亮效果
- reshape() 函数与 kron()函数的区别
- 全民热议“10万彩礼结不了婚”的背后,百合网做了什么?
- canvas画布调节字符间距
- [JavaScript]Object(对象)学习
- Games101-课程20笔记
- 高中数学压轴题:由正余弦定理判断三角形的形状(名师总结)
- 数据库 —— mycat 代理
- 【Java 数据结构 算法】宁可累死自己, 也要卷死别人 18 贪心算法
- view.setAlpha(float alpha)与view.getBackground().setAlpha(int alpha)的区别
- 了解TypeScript装饰器
热门文章
- 值类型和引用类型在栈和堆中的分配
- 浅谈 PHP 与手机 APP 开发(API 接口开发)
- 阻塞队列只有一个线程在同一时刻对其进行或者读或者写
- .gitignore过滤规则
- centOS Redhat yum的配置
- MySql-5.1.32的data文件夹找不到是什么原因呢?
- Extmail配置实践(一)
- Matlab画地球剖面图,分享用matlab显示地震记录的波形变面积图
- easyui框架前后端交互_Vue+ElementUI+.netcore前后端分离框架开发项目实战
- python3 循环写入一对多键值对_为什么Python 3.6以后字典有序并且效率更高?