package org.springside.examples.miniweb.service.user;
import java.util.List;
import org.hibernate.SessionFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
import org.springside.examples.miniweb.entity.user.Authority;
import org.springside.examples.miniweb.entity.user.Role;
import org.springside.examples.miniweb.entity.user.User;
import org.springside.modules.orm.hibernate.Page;
import org.springside.modules.orm.hibernate.SimpleHibernateTemplate;
/**
* 整个User模块内的业务逻辑Facade类.
* 组合user,role,auth三者的DAO.
* DAO均由SimpleHibernateTemplate指定泛型生成.
*
* @author calvin
*/
@Service
@Transactional
public class UserManager {
private static String AUTH_HQL = "select count(u) from User u where u.loginName=? and u.password=?";
private SimpleHibernateTemplate<User, Long> userDao;
private SimpleHibernateTemplate<Role, Long> roleDao;
private SimpleHibernateTemplate<Authority, Long> authDao;
@Autowired
public void setSessionFactory(SessionFactory sessionFactory) {
userDao = new SimpleHibernateTemplate<User, Long>(sessionFactory, User.class);
roleDao = new SimpleHibernateTemplate<Role, Long>(sessionFactory, Role.class);
authDao = new SimpleHibernateTemplate<Authority, Long>(sessionFactory, Authority.class);
}
@Transactional(readOnly = true)
public User getUser(Long id) {
return userDao.get(id);
}
@Transactional(readOnly = true)
public Page<User> getAllUsers(Page<User> page) {
return userDao.findAll(page);
}
@Transactional(readOnly = true)
public User getUserByLoginName(String loginName) {
return userDao.findUniqueByProperty("loginName", loginName);
}
public void saveUser(User user) {
userDao.save(user);
}
public void deleteUser(Long id) {
User user = userDao.get(id);
userDao.delete(user);
}
@Transactional(readOnly = true)
public boolean isLoginNameUnique(String loginName, String orgLoginName) {
return userDao.isUnique("loginName", loginName, orgLoginName);
}
/**
* 验证用户名密码.
* 因为使用acegi做安全管理,此函数已作废,仅用作demo.
*
* @return 验证通过时返回true.用户名或密码错误均返回false.
*/
@Transactional(readOnly = true)
public boolean auth(String loginName, String password) {
if (!StringUtils.hasText(loginName) || !StringUtils.hasText(password))
return false;
return (userDao.findLong(AUTH_HQL, loginName, password) == 1);
}
@Transactional(readOnly = true)
public List<Role> getAllRoles() {
return roleDao.findAll();
}
@Transactional(readOnly = true)
public Role getRole(Long id) {
return roleDao.get(id);
}
public void saveRole(Role role) {
roleDao.save(role);
}
public void deleteRole(Long id) {
Role role = roleDao.get(id);
roleDao.delete(role);
}
@Transactional(readOnly = true)
public List<Authority> getAllAuths() {
return authDao.findAll();
}
@Transactional(readOnly = true)
public Authority getAuthority(Long id) {
return authDao.get(id);
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
struts2+spring2.5+hibernate3.2 annotation配置完整eclipse项目,带数据库脚本
共114个文件
jar:58个
xml:12个
jsp:11个
5星 · 超过95%的资源 需积分: 9 46 下载量 186 浏览量
2008-10-20
13:59:43
上传
评论 1
收藏 13.93MB RAR 举报
温馨提示
struts2+spring2.5+hibernate3.2 annotation配置完整eclipse项目,带数据库脚本
资源推荐
资源详情
资源评论
收起资源包目录
struts2+spring2.5+hibernate3.2 annotation配置完整eclipse项目,带数据库脚本 (114个子文件)
UserManager.class 5KB
UserAction.class 5KB
RoleAction.class 4KB
User.class 3KB
UserDetailServiceImpl.class 3KB
Role.class 3KB
Authority.class 1KB
IdEntity.class 788B
ServiceException.class 427B
.classpath 5KB
jquery.validate.css 241B
default.css 98B
unchecked.gif 223B
checked.gif 220B
hibernate-core-3.3.1.GA.jar 2.17MB
aspectjweaver-1.6.1.jar 1.5MB
freemarker-2.3.12.jar 843KB
spring-security-core-2.0.4.jar 755KB
struts2-core-2.1.2.jar 697KB
commons-collections-3.2.1.jar 562KB
xwork-2.1.1.jar 510KB
derbyclient-10.4.2.0.jar 502KB
spring-beans-2.5.5.jar 475KB
spring-context-2.5.5.jar 462KB
javassist-3.4.GA.jar 460KB
antlr-2.7.6.jar 433KB
spring-webmvc-2.5.5.jar 395KB
standard-1.1.2.jar 384KB
spring-orm-2.5.5.jar 366KB
backport-util-concurrent-3.1.jar 324KB
spring-jdbc-2.5.5.jar 320KB
spring-aop-2.5.5.jar 319KB
cglib-nodep-2.1_3.jar 317KB
dom4j-1.6.1.jar 307KB
spring-core-2.5.5.jar 281KB
hibernate-annotations-3.4.0.GA.jar 273KB
ehcache-1.5.0.jar 258KB
commons-lang-2.4.jar 256KB
mysql-connector-java-3.0.15-ga-bin.jar 230KB
spring-tx-2.5.5.jar 226KB
commons-beanutils-1.8.0.jar 226KB
spring-web-2.5.5.jar 189KB
logback-core-0.9.9.jar 188KB
spring-test-2.5.5.jar 176KB
ognl-2.6.11.jar 164KB
junit-3.8.2.jar 118KB
logback-classic-0.9.9.jar 117KB
xml-apis-1.0.b2.jar 107KB
servlet-api-2.4.jar 95KB
spring-context-support-2.5.5.jar 92KB
commons-io-1.3.2.jar 86KB
easymock-2.4.jar 79KB
spring-security-acl-2.0.4.jar 68KB
hibernate-commons-annotations-3.1.0.GA.jar 65KB
easymockclassextension-2.4.jar 62KB
commons-logging-1.1.1.jar 59KB
commons-fileupload-1.2.1.jar 56KB
ejb3-persistence-1.0.2.GA.jar 49KB
commons-codec-1.3.jar 46KB
struts2-codebehind-plugin-2.1.2.jar 28KB
jstl-1.1.2.jar 20KB
slf4j-api-1.5.3.jar 20KB
spring-security-taglibs-2.0.4.jar 19KB
jcl-over-slf4j-1.5.3.jar 16KB
springside3-core-3.0.3.jar 16KB
jta-1.1.jar 13KB
struts2-spring-plugin-2.1.2.jar 9KB
jsr107cache-1.0.jar 8KB
spring-security-core-tiger-2.0.4.jar 8KB
hibernate-ehcache-3.3.1.GA.jar 7KB
jsr250-api-1.0.jar 6KB
aopalliance-1.0.jar 4KB
UserManager.java 3KB
UserAction.java 3KB
User.java 2KB
RoleAction.java 2KB
UserDetailServiceImpl.java 2KB
Role.java 2KB
Authority.java 984B
IdEntity.java 506B
ServiceException.java 332B
jquery.js 54KB
jquery.validate.js 13KB
messages_cn.js 1KB
user-input.jsp 3KB
login.jsp 2KB
user.jsp 2KB
role-input.jsp 2KB
role.jsp 1KB
500.jsp 1KB
403.jsp 567B
404.jsp 482B
meta.jsp 474B
taglibs.jsp 259B
index.jsp 48B
MANIFEST.MF 39B
.mymetadata 294B
.project 1KB
application.properties 23B
application.properties 23B
共 114 条
- 1
- 2
资源评论
- doudou_7152014-07-31真心说,不错,就是要分太多了
- liu0503060232015-07-02好东西,适合我这样的半吊子学习用。
- fushaoping20082013-08-30真心说,不错,就是要分太多了
- DavidIsReallyGood2014-04-08确实很有帮助
- 程序员强仔2014-06-25确实很有帮助,真心说,不错,就是要分太多了
fei_6666
- 粉丝: 14
- 资源: 9
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功