这是shiro的学习过程中做的小示例
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 10 2016-03-06 20:31 ShiroLearn.idea.name
文件 299 2016-03-06 20:38 ShiroLearn.ideaartifactsShiroWeb_war.xml
文件 5303 2016-03-09 09:51 ShiroLearn.ideaartifactsShiroWeb_war_exploded.xml
文件 1323 2016-03-07 16:37 ShiroLearn.ideacompiler.xml
文件 76 2016-03-06 20:31 ShiroLearn.ideacopyrightprofiles_settings.xml
文件 200 2016-03-06 20:31 ShiroLearn.ideaencodings.xml
文件 241 2016-03-08 14:49 ShiroLearn.ideainspectionProfilesprofiles_settings.xml
文件 751 2016-03-08 14:49 ShiroLearn.ideainspectionProfilesProject_Default.xml
文件 560 2016-03-08 11:43 ShiroLearn.idealibrariesJava_EE_6_Java_EE_6.xml
文件 462 2016-03-07 17:27 ShiroLearn.idealibrariesMaven__antlr_antlr_2_7_7.xml
文件 514 2016-03-07 16:52 ShiroLearn.idealibrariesMaven__aopalliance_aopalliance_1_0.xml
文件 594 2016-03-06 20:43 ShiroLearn.idealibrariesMaven__commons_beanutils_commons_beanutils_1_8_3.xml
文件 605 2016-03-07 18:02 ShiroLearn.idealibrariesMaven__commons_fileupload_commons_fileupload_1_3_1.xml
文件 503 2016-03-07 18:02 ShiroLearn.idealibrariesMaven__commons_io_commons_io_2_4.xml
文件 558 2016-03-07 16:52 ShiroLearn.idealibrariesMaven__commons_logging_commons_logging_1_2.xml
文件 522 2016-03-07 17:27 ShiroLearn.idealibrariesMaven__com_fasterxml_classmate_1_3_0.xml
文件 548 2016-03-08 11:37 ShiroLearn.idealibrariesMaven__com_google_code_kaptcha_kaptcha_2_3_2.xml
文件 493 2016-03-08 11:32 ShiroLearn.idealibrariesMaven__com_mchange_c3p0_0_9_5_2.xml
文件 598 2016-03-08 11:32 ShiroLearn.idealibrariesMaven__com_mchange_mchange_commons_java_0_2_11.xml
文件 462 2016-03-07 17:27 ShiroLearn.idealibrariesMaven__dom4j_dom4j_1_6_1.xml
文件 437 2016-03-08 11:33 ShiroLearn.idealibrariesMaven__jstl_jstl_1_2.xml
文件 462 2016-03-07 16:50 ShiroLearn.idealibrariesMaven__junit_junit_3_8_1.xml
文件 469 2016-03-08 11:56 ShiroLearn.idealibrariesMaven__log4j_log4j_1_2_17.xml
文件 574 2016-03-08 17:38 ShiroLearn.idealibrariesMaven__mysql_mysql_connector_java_5_1_36.xml
文件 519 2016-03-07 16:53 ShiroLearn.idealibrariesMaven__net_sf_ehcache_ehcache_2_10_0.xml
文件 547 2016-03-07 17:58 ShiroLearn.idealibrariesMaven__net_sf_ehcache_ehcache_core_2_5_0.xml
文件 556 2016-03-08 11:43 ShiroLearn.idealibrariesMaven__org_apache_commons_commons_lang3_3_4.xml
文件 654 2016-03-07 17:27 ShiroLearn.idealibrariesMaven__org_apache_geronimo_specs_geronimo_jta_1_1_spec_1_1_1.xml
文件 541 2016-03-06 20:43 ShiroLearn.idealibrariesMaven__org_apache_shiro_shiro_core_1_2_2.xml
文件 541 2016-03-07 17:55 ShiroLearn.idealibrariesMaven__org_apache_shiro_shiro_core_1_2_4.xml
............此处省略1197个文件信息
package com.shiro.test;
import org.apache.shiro.SecurityUtils;
import org.apache.shiro.authc.*;
import org.apache.shiro.config.IniSecurityManagerFactory;
import org.apache.shiro.mgt.SecurityManager;
import org.apache.shiro.session.Session;
import org.apache.shiro.subject.Subject;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
/**
* Created by GWCheng on 2016/3/6.
*/
public class Tutorial {
private static final transient Logger log = LoggerFactory.getLogger(Tutorial.class);
public static void main(String[] args) {
log.info(“My First Apache Shiro Application“);
//1.获取SecurityManager工厂,此处使用Ini配置文件初始化SecurityManager
IniSecurityManagerFactory factory = new IniSecurityManagerFactory(“classpath:shiro.ini“);
//2.得到SecurityManager实例 并绑定给SecurityUtils
SecurityManager securityManager = factory.getInstance();
SecurityUtils.setSecurityManager(securityManager);
// get the currently executing user:
Subject currentUser = SecurityUtils.getSubject();
// Do some stuff with a Session (no need for a web or EJB container!!!)
Session session = currentUser.getSession();
session.setAttribute(“someKey“ “aValue“);
String value = (String) session.getAttribute(“someKey“);
if (value.equals(“aValue“)) {
log.info(“Retrieved the correct value! [“ + value + “]“);
}
// let‘s login the current user so we can check against roles and permissions:
if (!currentUser.isAuthenticated()) {
UsernamePasswordToken token = new UsernamePasswordToken(“lonestarr“ “vespa“);
token.setRememberMe(true);
try {
currentUser.login(token);
} catch (UnknownAccountException uae) {
log.info(“There is no user with username of “ + token.getPrincipal());
} catch (IncorrectCredentialsException ice) {
log.info(“Password for account “ + token.getPrincipal() + “ was incorrect!“);
} catch (LockedAccountException lae) {
log.info(“The account for username “ + token.getPrincipal() + “ is locked. “ +
“Please contact your administrator to unlock it.“);
}
// ... catch more exceptions here (maybe custom ones specific to your application?
catch (AuthenticationException ae) {
//unexpected condition? error?
}
}
//say who they are:
//print their identifying principal (in this case a username):
log.info(“User [“ + currentUser.getPrincipal() + “] logged in successfully.“);
//test a role:
if (currentUser.hasRole(“schwartz“)) {
log.info(“May the Schwartz be with you!“);
} else {
log.info(“Hello mere mortal.“);
}
//test a typed permission (not instance-level)
if (curr
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 10 2016-03-06 20:31 ShiroLearn.idea.name
文件 299 2016-03-06 20:38 ShiroLearn.ideaartifactsShiroWeb_war.xm
文件 5303 2016-03-09 09:51 ShiroLearn.ideaartifactsShiroWeb_war_exploded.xm
文件 1323 2016-03-07 16:37 ShiroLearn.ideacompiler.xm
文件 76 2016-03-06 20:31 ShiroLearn.ideacopyrightprofiles_settings.xm
文件 200 2016-03-06 20:31 ShiroLearn.ideaencodings.xm
文件 241 2016-03-08 14:49 ShiroLearn.ideainspectionProfilesprofiles_settings.xm
文件 751 2016-03-08 14:49 ShiroLearn.ideainspectionProfilesProject_Default.xm
文件 560 2016-03-08 11:43 ShiroLearn.idealibrariesJava_EE_6_Java_EE_6.xm
文件 462 2016-03-07 17:27 ShiroLearn.idealibrariesMaven__antlr_antlr_2_7_7.xm
文件 514 2016-03-07 16:52 ShiroLearn.idealibrariesMaven__aopalliance_aopalliance_1_0.xm
文件 594 2016-03-06 20:43 ShiroLearn.idealibrariesMaven__commons_beanutils_commons_beanutils_1_8_3.xm
文件 605 2016-03-07 18:02 ShiroLearn.idealibrariesMaven__commons_fileupload_commons_fileupload_1_3_1.xm
文件 503 2016-03-07 18:02 ShiroLearn.idealibrariesMaven__commons_io_commons_io_2_4.xm
文件 558 2016-03-07 16:52 ShiroLearn.idealibrariesMaven__commons_logging_commons_logging_1_2.xm
文件 522 2016-03-07 17:27 ShiroLearn.idealibrariesMaven__com_fasterxm
文件 548 2016-03-08 11:37 ShiroLearn.idealibrariesMaven__com_google_code_kaptcha_kaptcha_2_3_2.xm
文件 493 2016-03-08 11:32 ShiroLearn.idealibrariesMaven__com_mchange_c3p0_0_9_5_2.xm
文件 598 2016-03-08 11:32 ShiroLearn.idealibrariesMaven__com_mchange_mchange_commons_java_0_2_11.xm
文件 462 2016-03-07 17:27 ShiroLearn.idealibrariesMaven__dom4j_dom4j_1_6_1.xm
文件 437 2016-03-08 11:33 ShiroLearn.idealibrariesMaven__jstl_jstl_1_2.xm
文件 462 2016-03-07 16:50 ShiroLearn.idealibrariesMaven__junit_junit_3_8_1.xm
文件 469 2016-03-08 11:56 ShiroLearn.idealibrariesMaven__log4j_log4j_1_2_17.xm
文件 574 2016-03-08 17:38 ShiroLearn.idealibrariesMaven__mysql_mysql_connector_java_5_1_36.xm
文件 519 2016-03-07 16:53 ShiroLearn.idealibrariesMaven__net_sf_ehcache_ehcache_2_10_0.xm
文件 547 2016-03-07 17:58 ShiroLearn.idealibrariesMaven__net_sf_ehcache_ehcache_core_2_5_0.xm
文件 556 2016-03-08 11:43 ShiroLearn.idealibrariesMaven__org_apache_commons_commons_lang3_3_4.xm
文件 654 2016-03-07 17:27 ShiroLearn.idealibrariesMaven__org_apache_geronimo_specs_geronimo_jta_1_1_spec_1_1_1.xm
文件 541 2016-03-06 20:43 ShiroLearn.idealibrariesMaven__org_apache_shiro_shiro_core_1_2_2.xm
文件 541 2016-03-07 17:55 ShiroLearn.idealibrariesMaven__org_apache_shiro_shiro_core_1_2_4.xm
............此处省略1197个文件信息
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)