package nufront.shiro.realm;
import java.sql.Connection;
import javax.annotation.Resource;
import nufront.shiro.entity.User;
import nufront.shiro.service.UserService;
import org.apache.shiro.authc.AuthenticationException;
import org.apache.shiro.authc.AuthenticationInfo;
import org.apache.shiro.authc.AuthenticationToken;
import org.apache.shiro.authc.SimpleAuthenticationInfo;
import org.apache.shiro.authz.AuthorizationInfo;
import org.apache.shiro.authz.SimpleAuthorizationInfo;
import org.apache.shiro.realm.AuthorizingRealm;
import org.apache.shiro.subject.PrincipalCollection;
import org.springframework.stereotype.Component;
public class MyRealm extends AuthorizingRealm{
private UserService userService;
/**
* 为当前用户授权
* */
@Override
protected AuthorizationInfo doGetAuthorizationInfo(
PrincipalCollection principals) {
//取得用户名
String userName = (String)principals.getPrimaryPrincipal();
//为当前用户授予角色和权限
SimpleAuthorizationInfo simpleAuthorizationInfo=new SimpleAuthorizationInfo();
try {
simpleAuthorizationInfo.setRoles(this.userService.getUserRolesByUserName(userName));
simpleAuthorizationInfo.setStringPermissions(this.userService.getUserPermissionsByUserName(userName));
} catch (Exception e) {
e.printStackTrace();
}
return simpleAuthorizationInfo;
}
/**
* 验证当前用户
* */
@Override
protected AuthenticationInfo doGetAuthenticationInfo(
AuthenticationToken token) throws AuthenticationException {
//取得当前用户
String userName = (String) token.getPrincipal();
User user = null;
try {
user = this.userService.getUserByUserName(userName);
if(user!=null){
//将数据库用户信息保存在AuthenticationInfo以便和用户提交过来的信息做对比
AuthenticationInfo authenticationInfo = new SimpleAuthenticationInfo(user.getUsername(),user.getPassword(),"");
return authenticationInfo;
}else{
return null;
}
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//验证用户
return null;
}
@Resource(name="userService")
public void setUserService(UserService userService) {
this.userService = userService;
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
shiro+spring+mybatis整合
共57个文件
class:15个
java:15个
xml:8个
需积分: 10 11 下载量 64 浏览量
2016-02-01
13:40:01
上传
评论 1
收藏 52KB ZIP 举报
温馨提示
这里是shiro + spring + mybatis整合开发的一个案例,以便做一个参考
资源推荐
资源详情
资源评论
收起资源包目录
shiro07_spring Maven Webapp.zip (57个子文件)
shiro07_spring Maven Webapp
pom.xml 4KB
target
test-classes
m2e-jee
web-resources
META-INF
maven
shiro07_spring
shiro07_spring
pom.xml 4KB
pom.properties 289B
MANIFEST.MF 114B
classes
mybatits
spring
.settings
com.genuitec.eclipse.j2eedt.core.prefs 56B
org.eclipse.m2e.core.prefs 90B
org.eclipse.wst.jsdt.ui.superType.name 6B
org.eclipse.wst.common.project.facet.core.xml 252B
org.eclipse.wst.common.component 705B
org.eclipse.wst.jsdt.ui.superType.container 49B
.jsdtscope 508B
org.eclipse.jdt.core.prefs 430B
src
test
java
main
webapp
META-INF
MANIFEST.MF 39B
WEB-INF
config
mybatits
mybatis-config.xml 321B
spring
applicationContext.xml 4KB
web.xml 3KB
classes
log4j.properties 2KB
nufront
shiro
dao
UserDao.class 455B
impl
UserDaoImpl.class 2KB
realm
MyRealm.class 3KB
db
DButil.class 2KB
test
MybatitsUtilTest.class 591B
servlet
AdminServlet.class 1KB
LoginServlet.class 2KB
TeacherServlet.class 1KB
StudentServlet.class 1KB
controller
UserController.class 2KB
service
UserService.class 467B
impl
UserServiceImpl.class 1KB
entity
User.class 928B
mappers
User.xml 933B
util
MybatitsUtil.class 1KB
ListUtil.class 932B
lib
index.jsp 996B
jsp
unauthorized.jsp 461B
admin.jsp 463B
login.jsp 703B
resources
java
log4j.properties 2KB
nufront
shiro
dao
UserDao.java 385B
impl
UserDaoImpl.java 2KB
realm
MyRealm.java 2KB
db
DButil.java 945B
test
MybatitsUtilTest.java 180B
servlet
StudentServlet.java 931B
TeacherServlet.java 931B
LoginServlet.java 1KB
AdminServlet.java 784B
controller
UserController.java 1KB
service
UserService.java 393B
impl
UserServiceImpl.java 1KB
entity
User.java 492B
mappers
User.xml 933B
util
ListUtil.java 423B
MybatitsUtil.java 965B
.project 2KB
.mymetadata 349B
.classpath 633B
共 57 条
- 1
资源评论
清风明月coder
- 粉丝: 116
- 资源: 27
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功