`
fenghang
  • 浏览: 3832 次
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

IoC容器+Web层框架+ORM框架的实现

 
阅读更多



下载地址:http://www.iteye.com/topic/1125898


一个IoC容器+Web层框架+ORM框架的简单实现(适用于学习用) 类似于SSH实现。

 

 

在学习期间写的,实现相对简单。欢迎下载。

 

涉及技术点:

    反射、注解、配置文件、动态代理

实现了:

    IoC AOP Web层框架 ORM框架 。

 

 

1、Web层代码示例:

 

Java代码 
  1. package cn.javass.test.action;  
  2.   
  3. import cn.javass.framework.ioc.annotation.IInject;  
  4. import cn.javass.framework.web.annotation.IAction;  
  5. import cn.javass.framework.web.annotation.IGoto;  
  6. import cn.javass.framework.web.core.Action;  
  7. import cn.javass.framework.web.core.ActionContext;  
  8. import cn.javass.test.model.UserModel;  
  9. import cn.javass.test.service.UserService;  
  10. @IAction(path="/user",  
  11.          result={@IGoto(key="success",path="test.jsp")}  
  12.         )  
  13. public class UserAction implements Action{  
  14.     @IInject(id="userService")  
  15.     private UserService userService;  
  16.   
  17.     public void setUserService(UserService userService) {  
  18.         this.userService = userService;  
  19.     }  
  20.       
  21.     private UserModel um = new UserModel();  
  22.   
  23.     @Override  
  24.     public String execute() {  
  25.         System.out.println("======="+um.toString());  
  26.         try{  
  27.             userService.save(um);  
  28.     //      userService.save(um);  
  29.         }catch (Exception e) {  
  30.             System.out.println(e.getMessage());  
  31.         }  
  32.           
  33.         um.getAddress().setAddress("zhangjavassp");  
  34.         ActionContext.getContext().put("haha""hahahhahaa");  
  35.     //  userService.save(um);  
  36.         return "success";  
  37.     }  
  38.   
  39.     public UserModel getUm() {  
  40.         return um;  
  41.     }  
  42.   
  43.     public void setUm(UserModel um) {  
  44.         this.um = um;  
  45.     }  
  46.       
  47. }  

 

 

2、DAO层代码示例

 

Java代码 
  1. package cn.javass.test.dao.impl;  
  2.   
  3. import cn.javass.framework.ioc.annotation.IService;  
  4. import cn.javass.framework.ioc.annotation.Scope;  
  5. import cn.javass.framework.orm.impl.BaseDAOImpl;  
  6. import cn.javass.test.dao.UserDao;  
  7.   
  8.   
  9. @IService(id="userDao",scope=Scope.singleton)  
  10. public class UserDaoImpl extends BaseDAOImpl implements UserDao{  
  11.       
  12. }  

 

 

3、服务层代码示例

 

Java代码 
  1. package cn.javass.test.service.impl;  
  2.   
  3. import java.util.List;  
  4.   
  5. import cn.javass.framework.aop.annotation.IInterceptor;  
  6. import cn.javass.framework.aop.transaction.TransactionManagerInterceptor;  
  7. import cn.javass.framework.ioc.annotation.IInject;  
  8. import cn.javass.framework.ioc.annotation.IService;  
  9. import cn.javass.framework.ioc.annotation.Scope;  
  10. import cn.javass.test.dao.UserDao;  
  11. import cn.javass.test.interceptor.MyInterceptor;  
  12. import cn.javass.test.model.UserModel;  
  13. import cn.javass.test.service.UserService;  
  14.   
  15.   
  16. @IService(id="userService")  
  17. public class UserServiceImpl implements UserService{  
  18.       
  19.     @IInject(id="userDao")  
  20.     private UserDao userDao ;  
  21.       
  22.   
  23.     public void setUserDao(UserDao userDao) {  
  24.         this.userDao = userDao;  
  25.     }  
  26.     @IInterceptor(classes={MyInterceptor.class,TransactionManagerInterceptor.class})  
  27.     @Override  
  28.     public boolean delete(UserModel um) {  
  29.         return this.userDao.delete(um);  
  30.     }  
  31.     @IInterceptor(classes={MyInterceptor.class,TransactionManagerInterceptor.class})  
  32.     @Override  
  33.     public List<UserModel> getAll(UserModel um) {  
  34.         return this.userDao.getAll(um.getClass());  
  35.     }  
  36.     @IInterceptor(classes={MyInterceptor.class,TransactionManagerInterceptor.class})  
  37.     @Override  
  38.     public boolean save(UserModel um) {  
  39.         return this.userDao.save(um);  
  40.     }  
  41.   
  42. }  

 

 

学习期间写的,实现相对简单。

3
6
分享到:
评论
2 楼 学海无涯穷欢乐 2013-03-16  
踩 的人是什么心态啊?无语,这么好的东西没人喜欢?
我发现软件编程界,勾心斗角很普遍啊,别人牛逼他就嫉妒。
楼主,我佩服你。
1 楼 学海无涯穷欢乐 2013-03-16  
我知道了什么叫做牛逼。这ssh有多少人都用不熟练啊。你能写出一个类似的,真的很了不起。

我也想写,但是能力真的很低,楼主挺牛的。佩服你啊

相关推荐

    开发者突击_Java+Web主流框架整合开发_J2EE+Struts+Hibernate+Spring+源代码

    2. **Struts**:是基于MVC(Model-View-Controller)设计模式的Java Web框架,用于简化动态网页应用程序的开发。Struts将业务逻辑、表示逻辑和数据访问逻辑分离,通过Action类处理请求,使用Tiles定义页面布局,提供...

    自己动手做框架——ORM,MVC,IOC框架

    同时,利用IOC容器管理MVC组件的实例,实现它们之间的依赖关系。 5. 编写测试:为框架编写单元测试和集成测试,验证各个部分的功能是否正常,确保框架的稳定性和可靠性。 通过实践这些步骤,你不仅能深入理解这些...

    spring ioc容器部署实现

    ### Spring IoC容器部署实现详解 #### 一、Spring IoC容器概述 Spring框架的核心特性之一就是Inversion of Control(IoC),也被称为Dependency Injection(DI)。IoC容器是Spring框架的重要组成部分,它负责管理...

    asp.net+mvc+ef+ioc多语言通用后台框架

    Entity Framework 是Microsoft提供的一种对象关系映射(ORM)框架,它允许开发者使用面向对象的方式来操作数据库。EF简化了数据库交互,通过实体类与数据库表之间的映射,使得开发者无需编写大量的SQL语句,即可实现...

    搭建Spring+Spring MVC+Hibernate开发框架

    然后,配置Spring的IoC容器,包括定义bean的实例化方式、初始化参数等。接着,设置Spring MVC的配置,如处理器映射器、视图解析器等。最后,配置Hibernate连接数据库的相关信息,包括数据源、实体类、映射文件等。 ...

    ioc框架实现

    - DAO.java:数据访问对象,负责与数据库交互,通常通过JDBC或ORM框架如Hibernate实现。 - Entity.java:实体类,对应数据库表的模型对象。 - *.jsp:JSP页面,用于显示和接收用户输入,与Controller进行交互。 ...

    examination_system-:基于SSM + Bootstrap的教务查询系统,是一个简单的教务查询系统,起初用于熟悉SSM的集成开发,使用技术。IOC容器:Spring Web框架:SpringMVC ORM框架:Mybatis数据源:C3P0日志:log4j前端框架: Bootstrap运行环境jdk8 + tomcat8 + mysql + Eclipse + maven项目技术(必填)spring + spring mvc + mybatis + bootstrap + jquery,系

    IOC容器:Spring Web框架:SpringMVC ORM框架:Mybatis数据源:C3P0日志:log4j前端框架:Bootstrap运行环境jdk8 + tomcat8 + mysql + Eclipse + maven项目技术:spring + spring mvc + mybatis + bootstrap + ...

    struts2+spring+hibernate+easyui管理框架

    Spring的IoC容器使得组件之间松耦合,提高了代码的可测试性和可维护性。 **Hibernate** 是一款持久化框架,简化了Java应用与数据库之间的交互。它通过ORM(对象关系映射)技术将Java对象与数据库表进行映射,避免了...

    Struts+Hibernate+Spring+三个框架简介

    **Hibernate** 是一款 ORM(Object Relational Mapping)框架,它的主要目标是提供一种机制,将 Java 对象映射到数据库表,并将 SQL 查询结果映射为 Java 对象,从而简化了持久层的开发。 - **ORM**:Hibernate ...

    autofac+mvc5+三层-ioc

    标题中的"autofac+mvc5+三层-ioc"指的是使用Autofac作为依赖注入容器,在ASP.NET MVC5框架下实现三层架构(通常包括表现层、业务逻辑层和数据访问层)的应用程序,并通过IOC(Inversion of Control,控制反转)来...

    JFinal极速WEB+ORM框架 v4.9.22.zip

    《JFinal极速WEB+ORM框架 v4.9.22》是Java开发领域中的一个高效、轻量级的Web应用程序框架,它集成了ORM(对象关系映射)功能,为开发者提供了快速构建Web应用的能力。这个框架的核心目标是简化开发流程,提高开发...

    SSH(spring+springmvc+mybatis)框架

    Spring还提供了众多模块,如Spring JDBC、Spring ORM、Spring Web等,用于数据库操作、ORM集成和Web应用开发。 2. **SpringMVC**:SpringMVC是Spring框架的一部分,主要用于构建Web应用程序。它遵循Model-View-...

    基于Tapestry+Spring+Hibernate框架的Web应用

    Spring框架是一个轻量级的控制反转(Inversion of Control, IoC)和面向切面编程(Aspect Oriented Programming, AOP)容器。Spring的核心功能之一是依赖注入(Dependency Injection, DI),它使得组件之间的耦合度...

    基于_Struts_2+Spring+JPA_框架的WEB_应用

    它提供了IoC(Inversion of Control)容器来管理对象生命周期,AOP(Aspect Oriented Programming)支持用于横切关注点的编程,以及丰富的数据访问抽象层。Spring的核心价值在于其“依赖注入”(DI)和“面向切面...

    搭建Struts2.1+Spring3.0+Hibernate3.3框架

    - Spring3.0 AOP库用于实现切面编程,Core库包含IoC容器,Persistence Core和Persistence JDBC则涉及数据访问,Web库则包含与Web应用相关的功能。 3. **Hibernate3.3**: - Hibernate是一个流行的对象关系映射...

    MVC+IOC+EF+SQLite源码,学习用

    在这个项目中,可能使用了IoC容器(如Autofac或Unity)来管理对象的生命周期和依赖关系,使得组件间的依赖关系不再硬编码,而是通过配置文件或代码来实现。 Entity Framework(EF)是.NET框架的一个对象关系映射...

    Struts2+Spring+Hibernate框架技术与项目实战源码与PDF.3

    Spring的IoC容器是其核心,通过配置文件或注解实现对象的管理和依赖关系的建立。同时,Spring还提供了对Hibernate的集成,使得ORM(对象关系映射)操作更加简便。 Hibernate是Java领域中最流行的ORM框架,它允许...

    Struts2+Spring+Hibernate框架实现的简易银行系统

    Spring的IoC容器负责管理对象的生命周期和依赖关系,使得代码更易于测试和维护。在银行系统中,Spring可能用于管理数据库连接、事务处理、以及服务层接口的实现,比如用户服务、账户服务等。 再者,Hibernate是ORM...

Global site tag (gtag.js) - Google Analytics