`
hustlong
  • 浏览: 123676 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

Hibernae+Spring+Annotation 的一个Demo

阅读更多
1,今天在用Annotation+Hibernate做的一个Demo中加进了Spring。
2,基本的一些过程如下:

3,首先要引入支持包,Spring Core ,Spring Persistence Core,Spring AOP,还要引入Commons Pool。
4, 然后从配置文件开始:

   myspringcontext.xml: 对于原来的Hibernate配置文件,我采取了保留原来配置的方法,因为在Spring中配置Hibernate的一些属性感觉不方便。
  内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">



<bean id="annotationsessionFactory"
class="org.springframework.orm.hibernate3.annotation.AnnotationSessionFactoryBean">


<property name="configLocation"
value="file:src/annotationhibernate.cfg.xml">
</property>
</bean>

<bean id="PictureProxy" class="dian.ikeel.DAL.PictureDAL">
<property name="sessionFactory">
<ref local="annotationsessionFactory" />
</property>
</bean>

</beans>

这里需要注意的就是应该用AnnotationSessionFactoryBean。
指向的hibernate.cfg.xml 在Step By Step (2)中有详细内容,可以参看。

<property name="sessionFactory">
<ref local="annotationsessionFactory" />
</property>

这句配置的作用我想就是,在getBean获取PictureProxy的时候,把他绑定到了一个SessionFactory提供的Session。省去了我们自己编码或得Session的过程了

5,我的程序其他部分逻辑是这样的:

A, 持久化层: Picture.java :用Annotatioin标注,在Step By Step (2)中有详细。

B,数据访问接口:IPictureDAL :
   代码:

package dian.ikeel.IDAL;

import dian.ikeel.annotation.*;
public interface IPictureDAL {

public void insertPicture(Picture pic);
}


C,数据访问接口的实现:PictureDAL,实现了IPictureDAL ,同时继承了HibernateDAOSupport. 因为我们要用到getTemplate。如果PictureDAL没有实现接口的话,会出现类型转换错误。这涉及到动态代理的原理。
代码如下:
package dian.ikeel.DAL;

import dian.ikeel.annotation.*;
import dian.ikeel.IDAL.*;
import org.springframework.orm.hibernate3.support.HibernateDaoSupport;


public class PictureDAL extends HibernateDaoSupport implements IPictureDAL {

public void insertPicture(Picture pic)
{
getHibernateTemplate().save(pic);
}
}


D,然后就是程序入口了:

public static void main(String[] args) {


Resource rs=new FileSystemResource("src/myspringcontext.xml");
BeanFactory bf=new XmlBeanFactory(rs);


IPictureDAL pic = (IPictureDAL)bf.getBean("PictureProxy");
Picture pic1 = new Picture();
pic1.setPicname("liang");
pic1.setPicsize(123);
pic.insertPicture(pic1);
System.out.println("AnnotationEntry excuted");
}

这样就基本完成了最简单的Hibernate+Spring with Annotation的例子。
1
1
分享到:
评论

相关推荐

    基于Struts2.18+Spring2.5+Hibernater3.3+Annotation注解开发的电子商务网站demo

    这个“基于Struts2.18+Spring2.5+Hibernate3.3+Annotation注解开发的电子商务网站demo”是一个很好的学习资源,可以帮助开发者加深对这些框架的理解并熟悉实际应用。 1. **Struts2.18**:Struts2是MVC(模型-视图-...

    JSF+Spring+Hibernate(Annotation)

    JSF+Spring+Hibernate(Annotation)的login小实例,建议入门的朋友看看,老鸟就免了,呵呵。环境:SQLSever2000+jdk5.0+spring2.0+hibernate3.2+jsf

    Struts2+Spring2.5+Hibernate3+annotation 整合程序

    Spring框架则是一个全面的企业级应用开发框架,它涵盖了依赖注入(DI)、面向切面编程(AOP)、事务管理等多个方面。而Hibernate是一个对象关系映射(ORM)框架,它简化了数据库操作,使开发者能用Java对象来操作...

    Struts2+Spring2+Hibernate3+Annotation所需JAR包

    ### Struts2+Spring2+Hibernate3+Annotation所需JAR包详解 在Java Web开发领域,Struts2、Spring2和Hibernate3是三个非常重要的框架,它们分别负责Web层、业务逻辑层和服务持久化层的功能实现。为了更好地整合这三...

    sshFrame(struts2.3.4+spring3.1+heibernate4.0+annotation零配置

    **Spring** 是一个全面的Java企业级应用开发框架,它以依赖注入(DI)和面向切面编程(AOP)为核心,提供事务管理、数据访问集成、邮件服务等功能。Spring3.1版本引入了更多改进,如对Java配置的支持,使配置更简洁...

    jquery easyUI+struts2+spring+hibernate基于annotation实现的CRM

    本项目利用一系列流行的技术栈,包括jQuery EasyUI、Struts2、Spring和Hibernate,构建了一个基于注解的CRM系统。以下将详细解析这些技术及其在项目中的应用。 **jQuery EasyUI** 是一个基于jQuery的前端框架,提供...

    GSH:spring3.1.0M2+Hibernate3.5+GWT2.4+JPA+Annotation+Spring4gwt0.0.1亲手整合

    GSH:spring3.1.0M2+Hibernate3.5+GWT2.4+JPA+Annotation+Spring4gwt0.0.1亲手整合,也可以上新浪博客去看 http://blog.sina.com.cn/s/blog_687dfecb0100yrmf.html

    csh框架+cxf+spring+hibernate+mysql 注解 annotation xml json

    【标题】"csh框架+cxf+spring+hibernate+mysql 注解 annotation xml json" 提到的是一个基于Java技术栈的Web服务开发架构,涵盖了多个关键组件和技术,这些技术在现代企业级应用中广泛应用。以下是这些知识点的详细...

    struts2+spring2+hibernate3 Annotation的整合

    1. **Struts2框架**:Struts2是一个基于MVC设计模式的Web应用框架,用于简化Java Web应用程序的开发。它的主要功能包括动作映射、拦截器、结果视图等。通过Action类和Result配置,Struts2能够处理用户请求并返回相应...

    springMVC + spring + hibernate 整合的管理系统小案例

    下载后请修改数据库用户名和密码,即springAnnotation-hibernate.xml文件 案例系统支持功能如下: 注册功能,身份证,邮箱,手机号,姓名等校验,ajax异步获取资源 分页显示,编辑更新,多行删除等更功能,使用了MVC...

    ssh(struts2.3.8+spring3.2+heibernate4.1+annotation零配置

    实现了简单用户权限登录,项目中含有mysql数据库 加入了基本的拦截器,错误类处理等 加入了BaseDao,Spring3对Hibernate4已经没有了HibernateDaoSupport和HibernateTemplate的支持,使用了原生态的API

    rest(jersey)+hibernate+spring+annotation android开发服务器端

    5. **Annotation**:注解是Java语言的一个重要特性,它允许在代码中嵌入元数据,从而简化配置、增强代码的自我描述性。在本项目中,注解被广泛应用于定义RESTful接口、映射数据库实体、注入依赖等场景,极大地提高了...

    Struts1.3 + Hibernate3.3 + Spring3.0 Annotation整合

    **Spring3.0** 则是一个全面的企业级应用框架,核心特性包括依赖注入和AOP。Spring的DI使得对象之间的依赖关系可以通过XML或注解进行声明,降低了代码的耦合度。而AOP则用于实现如日志记录、权限控制等横切关注点。...

    Spring4.1.4+SpringMVC4.1.4+Hibernate4.3.8基于annotation环境搭建

    我自己搭建的spring4+springMVC4+hibernate4.3.8基于annotation的开发环境 中间遇到好多问题,比如jar包不齐什么的,我把所有的包放在lib目录下,大家不用再去下载了

Global site tag (gtag.js) - Google Analytics