ssh注解basedao简单的实现
@Repository
public class BaseDao extends HibernateDaoSupport{
protected Class objectClass;
protected String className; protected String alias; // protected Session session; private static final Logger log = LoggerFactory
.getLogger(BaseDao.class); @Resource
public void setSessionFactry(SessionFactory sessionFactroy){
super.setSessionFactory(sessionFactroy);
} // public BaseDao() {
// }
// public BaseDao(Class objectClass) {
// init(objectClass);
// }
// public BaseDao(Class objectClass, String alias) {
// init(objectClass, alias);
// }
public void init(Class objectClass) {
this.objectClass = objectClass;
this.className = objectClass.toString();
this.className = className.substring(className.lastIndexOf(".") + 1);
this.alias = className.toLowerCase();
}
public void init(Class objectClass, String alias) {
this.alias = alias;
this.objectClass = objectClass;
this.className = objectClass.toString();
this.className = className.substring(className.lastIndexOf(".") + 1);
}
public void setAlias(String alias) {
this.alias = alias;
}
/**
*
* @Description: 添加
* @param @param object
* @param @return
* @return boolean
* @throws
* @author xxx
* @date 2016-1-8
*/
public boolean save(Object object) {
System.out.println(this.className+";"+this.className);
log.debug("saving "+this.className+" instance");
boolean bool=false;
Session session = this.getHibernateTemplate().getSessionFactory().getCurrentSession();
Transaction tc = (Transaction) session.beginTransaction();
if (true) {
tc.rollback();
return false;
}
try {
session.save(object);
log.debug("save successful");
tc.commit();
bool=true;
} catch (Exception e) {
tc.rollback();
log.error("save failed", e);
System.out.println(e.getMessage());
}finally{
return bool;
}
}
@Service
public class BaseService<E> {
@Resource
private BaseDao basedao; // public BaseService() {
// super();
// }
// public BaseService(Class<E> _class) {
// basedao = new BaseDao(_class);
// } public void zhuru(Class<E> _class){
basedao.init(_class);
} public String save(E e){
String message="";
boolean bool=basedao.save(e);
if (bool) {
message="true";
}else {
message="false";
}
return message;
}
}
action调用
action引用implements Preparable,在每次调用方法前调用为basedao一些属性赋值
@Override
public void prepare() throws Exception {
baseService.zhuru(xxx.class);
} @Autowired
private BaseService<TPosition> baseService; String result=baseService.save(project);
简单记录下,也是刚摸索弄得,有什么问题,多多指教啊
ssh注解basedao简单的实现的更多相关文章
- 详解SSH注解配置,bean注解、事物注解等
使用过SSH注解的屌丝们都知道,要想使用注解需要在applicationContext.xml配置文件里面开启注解配置,开启方式如下:1.头部声明需加入xmlns:context="http ...
- ssh注解整合
ssh注解整合 导入java包 配置struts2环境 1. 创建struts.xml配置文件 <?xml version="1.0" encoding="UTF- ...
- spring注解开发中常用注解以及简单配置
一.spring注解开发中常用注解以及简单配置 1.为什么要用注解开发:spring的核心是Ioc容器和Aop,对于传统的Ioc编程来说我们需要在spring的配置文件中邪大量的bean来向sprin ...
- Java注解--实现简单读取excel
实现工具类 利用注解实现简单的excel数据读取,利用注解对类的属性和excel中的表头映射,使用Apache的poi就不用在业务代码中涉及row,rows这些属性了. 定义注解: @Retentio ...
- java基础强化——深入理解java注解(附简单ORM功能实现)
目录 1.什么是注解 2. 注解的结构以及如何在运行时读取注解 2.1 注解的组成 2.2 注解的类层级结构 2.3 如何在运行时获得注解信息 3.几种元注解介绍 3.1 @Retention 3.2 ...
- 常用的SSH注解标签
常用的SSH注解标签 1.Spring的注解 关于配Bean用的 @Component @Controller @Service @Repository 作用 ...
- Springboot使用自定义注解实现简单参数加密解密(注解+HandlerMethodArgumentResolver)
前言 我黄汉三又回来了,快半年没更新博客了,这半年来的经历实属不易,疫情当头,本人实习的公司没有跟员工共患难, 直接辞掉了很多人.作为一个实习生,本人也被无情开除了.所以本人又得重新准备找工作了. 算 ...
- 基于注解的简单SSH保存用户小案例
需求:搭建SSH框架环境,使用注解进行相关的注入(实体类的注解,AOP注解.DI注入),保存用户信息 效果: 一.导依赖包 二.项目的目录结构 三.web.xml配置 <?xml version ...
- ssh 注解写法
弄了半天 (好久哦) 首先 applicationContext-db.xml <?xml version="1.0" encoding="UTF-8" ...
随机推荐
- Learning Core Data 1
What is Core Data? If you want to build anything beyond the most simplistic apps for iOS, you’ll nee ...
- Skip StyleCop Warnings.
[SuppressMessage("Microsoft.StyleCop.CSharp.MaintainabilityRules", "SA1401:FieldsMust ...
- (C#) Parse xml 时, 返回的node值总是null。
网上查了一下,原因在于要parse的Xml文件本身包含了一些namespace,这些需要被添加进去. http://msdn.microsoft.com/zh-cn/library/system.xm ...
- NeHe OpenGL教程 第四十四课:3D光晕
转自[翻译]NeHe OpenGL 教程 前言 声明,此 NeHe OpenGL教程系列文章由51博客yarin翻译(2010-08-19),本博客为转载并稍加整理与修改.对NeHe的OpenGL管线 ...
- 502 bad gateway 可能的错误原因
1.PHP程序的执行时间超过了Nginx的等待时间,可以适当增加nginx.conf配置文件中FastCGI的timeout时间 #http代码段中增加 fastcgi_connect_timeout ...
- MVC ViewData和ViewBag[转]
转自:http://blog.csdn.net/a497785609/article/details/7854402#t0 视图数据可以通过ViewBag属性访问,它主要是为了从Contr ...
- js跳转页面方法整理
1.window.location.href方式 window.location.href="http://www.zgw8.com"; 2.window.navigate方式跳转 ...
- Linux设置服务自启动(转载)
From:http://www.cnblogs.com/nerxious/archive/2013/01/18/2866548.html 有时候我们需要Linux系统在开机的时候自动加载某些脚本或系统 ...
- Python中if __name__ == "__main__": 的作用
在很多python脚本中在最后的部分会执行一个判断语句if __name__ == "__main__:",之后还可能会有一些执行语句.那添加这个判断的目的何在? 在python编 ...
- SQLServer 2008以上误操作数据库恢复方法——日志尾部备份(转)
问题: 经常看到有人误删数据,或者误操作,特别是update和delete的时候没有加where,然后就喊爹喊娘了.人非圣贤孰能无过,做错可以理解,但不能纵容,这个以后再说,现在先来解决问题. 遇到这 ...