精华帖 (0) :: 良好帖 (7) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2012-08-10
最后修改:2012-08-13
一个IoC容器+Web层框架+ORM框架的简单实现(适用于学习用) 类似于SSH实现。
在学习期间写的,实现相对简单。欢迎下载。
涉及技术点: 反射、注解、配置文件、动态代理 实现了: IoC AOP Web层框架 ORM框架 。
看大家那么喜欢,再把我的其他学习资料共享给大家:http://sishuok.com/forum/posts/list/5164.html
1、Web层代码示例:
package cn.javass.test.action; import cn.javass.framework.ioc.annotation.IInject; import cn.javass.framework.web.annotation.IAction; import cn.javass.framework.web.annotation.IGoto; import cn.javass.framework.web.core.Action; import cn.javass.framework.web.core.ActionContext; import cn.javass.test.model.UserModel; import cn.javass.test.service.UserService; @IAction(path="/user", result={@IGoto(key="success",path="test.jsp")} ) public class UserAction implements Action{ @IInject(id="userService") private UserService userService; public void setUserService(UserService userService) { this.userService = userService; } private UserModel um = new UserModel(); @Override public String execute() { System.out.println("======="+um.toString()); try{ userService.save(um); // userService.save(um); }catch (Exception e) { System.out.println(e.getMessage()); } um.getAddress().setAddress("zhangjavassp"); ActionContext.getContext().put("haha", "hahahhahaa"); // userService.save(um); return "success"; } public UserModel getUm() { return um; } public void setUm(UserModel um) { this.um = um; } }
2、DAO层代码示例
package cn.javass.test.dao.impl; import cn.javass.framework.ioc.annotation.IService; import cn.javass.framework.ioc.annotation.Scope; import cn.javass.framework.orm.impl.BaseDAOImpl; import cn.javass.test.dao.UserDao; @IService(id="userDao",scope=Scope.singleton) public class UserDaoImpl extends BaseDAOImpl implements UserDao{ }
3、服务层代码示例
package cn.javass.test.service.impl; import java.util.List; import cn.javass.framework.aop.annotation.IInterceptor; import cn.javass.framework.aop.transaction.TransactionManagerInterceptor; import cn.javass.framework.ioc.annotation.IInject; import cn.javass.framework.ioc.annotation.IService; import cn.javass.framework.ioc.annotation.Scope; import cn.javass.test.dao.UserDao; import cn.javass.test.interceptor.MyInterceptor; import cn.javass.test.model.UserModel; import cn.javass.test.service.UserService; @IService(id="userService") public class UserServiceImpl implements UserService{ @IInject(id="userDao") private UserDao userDao ; public void setUserDao(UserDao userDao) { this.userDao = userDao; } @IInterceptor(classes={MyInterceptor.class,TransactionManagerInterceptor.class}) @Override public boolean delete(UserModel um) { return this.userDao.delete(um); } @IInterceptor(classes={MyInterceptor.class,TransactionManagerInterceptor.class}) @Override public List<UserModel> getAll(UserModel um) { return this.userDao.getAll(um.getClass()); } @IInterceptor(classes={MyInterceptor.class,TransactionManagerInterceptor.class}) @Override public boolean save(UserModel um) { return this.userDao.save(um); } }
学习期间写的,实现相对简单。 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2012-08-11
多谢分享,源代码下载学习ing,正好刚学完SSH没多久
|
|
返回顶楼 | |
发表时间:2012-08-11
可以在论坛多讨论下写的心得...
|
|
返回顶楼 | |
发表时间:2012-08-12
不错。请问楼主工作几年了?请问这个东西写了多久啊。?
|
|
返回顶楼 | |
发表时间:2012-08-12
allwefantasy 写道 可以在论坛多讨论下写的心得...
嗯,一定 |
|
返回顶楼 | |
发表时间:2012-08-12
m635674608 写道 不错。请问楼主工作几年了?请问这个东西写了多久啊。?
这个是我在培训期间写的 ,当时为了看看SSH到底怎么工作写的 |
|
返回顶楼 | |
发表时间:2012-08-12
下载下来瞧瞧,
|
|
返回顶楼 | |
发表时间:2012-08-13
好东西!有东西学习了,我以前公司里一个大神也写过一个。
|
|
返回顶楼 | |
发表时间:2012-08-13
fenghang 写道 m635674608 写道 不错。请问楼主工作几年了?请问这个东西写了多久啊。?
这个是我在培训期间写的 ,当时为了看看SSH到底怎么工作写的 不会是大学刚毕业的培训吧?如果是那你真的功底不错啊。 |
|
返回顶楼 | |
发表时间:2012-08-13
轻指飞扬 写道 好东西!有东西学习了,我以前公司里一个大神也写过一个。
谢谢 |
|
返回顶楼 | |