Hibernate 如何使用struts2管理我的java类中的角色

Hibernate 如何使用struts2管理我的java类中的角色,hibernate,jakarta-ee,struts2,tomcat7,Hibernate,Jakarta Ee,Struts2,Tomcat7,大家好,我是Java EE的初学者,正在使用struts 2和hibernate开发应用程序,在我的表用户中,我有不同的角色(管理员、用户实习生、euserextern) 这是我的支柱 <package name="rolePackage" namespace="/" extends="struts-security"> <interceptors> <interceptor name="rolesInterceptor" class=

大家好,我是Java EE的初学者,正在使用struts 2和hibernate开发应用程序,在我的表用户中,我有不同的角色(管理员、用户实习生、euserextern)

这是我的支柱

<package name="rolePackage"  namespace="/" extends="struts-security">
    <interceptors>  
        <interceptor name="rolesInterceptor" class="ma.stm.interceptor.RolesInterceptor" />
        <interceptor-stack name="defaultSecurityStack">
            <interceptor-ref name="defaultSecurityStack" />
            <interceptor-ref name="rolesInterceptor" >
                <param name="roleActions">*: Internal;
                admin: Admin;
                userinterne: UserInterne;
                userextern: UserExterne
                </param>
            </interceptor-ref>
            </interceptor-stack>
        </interceptors> 
    <action name="Admin">
        <result>/STM/WebContent/web/admin/adduser.jsp</result>
    </action>
    <action name="UserInterne">
        <result>/STM/WebContent/web/userinterne/Userinterne.jsp</result>
    </action>
    <action name="userextern">
        <result>/STM/WebContent/web/userexterne/Userexterne.jsp</result>
    </action>   
</package>

但是我该怎么做呢?请帮助我?

首先,您可以正确比较字符串。第二,您可以正确命名您的方法;名为
getRoles()
的内容不应返回单个对象,而应返回列表。第三,实际问题是什么?定义全局结果并在字符串比较后返回它们。实际问题是如何将方法重定向到操作?通过返回
redirectAction
result的名称。类似于全局结果或特定于操作的结果。好的,谢谢。我将尝试您还可以实现principal aware以获取当前安全对象,并检查它是否属于特定角色。如果操作只重定向到某个操作,但利用带有拦截器的代码来路由您的操作,则无需编写操作。
if(result.getRoles()=="Admin"){
            redirection to action admin

        }
if(result.getRoles()=="Userintern"){
            redirection to action Userinterne

        }