appfuse 登录跳转

来源:互联网 发布:java静态方法调用 编辑:程序博客网 时间:2024/06/14 11:43

以appfuse3为例子:        spring mvc架构的

搭建好appfuse后,开始研究它的一个个技术是如何进行组合的; 首先说下登录的跳转;

1   看到web.xml中的,默认的访问界面还是 index.jsp

    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>

2   直接输入地址后,默认是加载index.jsp的对于,index.jsp中,可以看到很简单就两行;

<%@ include file="/common/taglibs.jsp"%>  
<c:redirect url="/home"/>

第一个可以进入看下,是一些标签啥的, 第二行就是一个跳转, jsp c标签的一个跳转;  该跳转

是根据 spring mvc的方式可以看到,在 dispatcher-servlet.xml 中 :

    <!-- Convenient way to map URLs to JSPs w/o having a Controller -->
    <mvc:view-controller path="/admin/activeUsers" view-name="admin/activeUsers"/>
    <mvc:view-controller path="/home" view-name="home"/>

由上面可以看到是直接跳到home.jsp 的;

我们打开home.jsp可以看到是appfuse的主界面的样式 ; 

但是我们实际的跳转是对于没有登录的,即是说在session中没有存在的用户,是直接到登录界面login的,但是

如上的方式,是到了home界面。


3  使用了 urlrewirte 和 Spring security控制的原因  ,简单一提,个人见解,欢迎指正;

对于urlrewrite中:

    <!-- Spring MVC -->
    <rule>
        <from>/**</from>
        <to>/app/$1</to>

    </rule>

对于所有的跳转,例如上面的跳转到/home , 会被重新指向/app/home


security.xml中:

    <http auto-config="true">
        <intercept-url pattern="/app/admin/**" access="ROLE_ADMIN"/>
        <intercept-url pattern="/app/passwordHint*" access="ROLE_ANONYMOUS,ROLE_ADMIN,ROLE_USER"/>
        <intercept-url pattern="/app/requestRecoveryToken*" access="ROLE_ANONYMOUS,ROLE_ADMIN,ROLE_USER" />
        <intercept-url pattern="/app/updatePassword*" access="ROLE_ANONYMOUS,ROLE_ADMIN,ROLE_USER" />
        <intercept-url pattern="/app/signup*" access="ROLE_ANONYMOUS,ROLE_ADMIN,ROLE_USER"/>
        <intercept-url pattern="/app/**" access="ROLE_ADMIN,ROLE_USER"/>
        <form-login login-page="/login" authentication-failure-url="/login?error=true" login-processing-url="/j_security_check"/>
        <remember-me user-service-ref="userDao" key="e37f4b31-0c45-11dd-bd0b-0800200c9a66"/>
    </http>


    <authentication-manager>
        <authentication-provider user-service-ref="userDao">
            <password-encoder ref="passwordEncoder">
            </password-encoder>
        </authentication-provider>
    </authentication-manager>



<form-login login-page="/login" authentication-failure-url="/login?error=true" login-processing-url="/j_security_check"/>

login-processing-url :  默认的执行检查url

login-page : 验证成功的跳转;

authentication-failure-url="/login?error=true" : 验证失败的跳转

<form-login login-page="/login" authentication-failure-url="/login?login_error=true" default-target-url="/index.jsp"/>login-page表示用户登陆时显示我们自定义的login.jsp。这时我们访问系统显示的登陆页面将是我们上面创建的login.jspauthentication-failure-url表示用户登陆失败时,跳转到哪个页面。当用户输入的登录名和密码不正确时,系统将再次跳转到/login.jsp,并添加一个error=true参数作为登陆失败的标示。default-target-url表示登陆成功时,跳转到哪个页面。



<authentication-provider user-service-ref="userDao"> : 对于userDao实现了

UserDetails loadUserByUsername(String username) throws UsernameNotFoundException;  该方法,可以进行数据库查询验证,根据结果

进行判断是否认证通过;












0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 匡威鞋掉色了怎么办 补眉后颜色很淡怎么办 磨砂画出毛了怎么办 纹眉毛不上色怎么办 四岁儿童龋齿怎么办 墙没有刷乳胶漆怎么办 壁纸不想要了怎么办 自粘墙纸撕不掉怎么办 打雷了怎么办主题画 打雷了怎么办小班教案 费雪小火车不走怎么办 宝宝睡觉要开灯怎么办 门上有人做记号怎么办 颜料粘上衣服洗不掉怎么办 半夜有小偷开锁怎么办 幼儿园人数较多怎么办 附近幼儿园拖班招满了怎么办 6个月大宝宝拉肚子怎么办 婴儿容易吐奶怎么办 新生儿睡眠时间颠倒怎么办 婴儿睡觉黑白颠倒怎么办 婴儿黑白颠倒了怎么办 宝宝肠粘膜受损怎么办 dnf会卡换装怎么办? 孩子不讲理蛮横怎么办 孩子不爱上学了怎么办 幼儿园孩子不爱上学怎么办 额头撞肿了怎么办 两岁半宝宝说话晚怎么办 1岁宝宝拉肚子怎么办? 小孩嗓子老哑怎么办 小孩嗓子经常哑怎么办 小孩子一年级成绩差怎么办 小孩子一年级学习成绩差怎么办 楼上有孩子扰民怎么办 隔壁小孩太吵怎么办 楼上孩子太吵怎么办 泰国贴纸签小孩怎么办 六个月宝宝近视怎么办 孩子视力低应该怎么办 儿童视力低常怎么办