考虑一个简单的Java Web应用程序,它具有使用JSP,Servlets,JDBC和JSTL的登录和注册功能。我需要使应用程序具有正常的public_users,然后是管理员。它们都使用相同的登录页面,但是当公共用户登录时,它与登录时的管理员相比具有不同的仪表板实用程序。
我尝试在Google上搜索,但我找不到具体的答案。
是否可以让这两个用户使用相同的登录页面?如果任何用户拥有有效凭据,则根据状态“admin”或“public_user”有没有办法将它们重定向到2个完全不同的页面?
在数据库中,如何将特定用户设置为admin,或邀请某人成为管理员?
建议将不胜感激, 谢谢
答案 0 :(得分:0)
答案 1 :(得分:0)
有几种方法可以解决这个问题。
有一些框架作品(tile ..etc)。
如果您不想使用JSTL
include指令,其中包含针对不同用户的条件
假设大多数页面对所有用户都是通用的,则只有正文部分可能会发生变化。
因此,为每种类型制作一个单独的Jsp,并在一个想法中包含在主jsp中。
在坚果壳中我们也可以用一个jsp
进行维护,我们可以在controller
中保持条件
。但是,对于每种类型的目的,单独jsp
几乎没有任何费用,也更容易维护
答案 2 :(得分:-1)
一种方法是使用2个资源并根据领域和< security-constraint>授予授权。和< auth-method>在web.xml中的FORM< / auth-method&gt ;,看到这个: http://docs.oracle.com/javaee/6/tutorial/doc/gkbaa.html 第二种方法是在同一页面中使用门户技术并通过portlet授予权限。但是,你说你正在使用JSP / Servlet。 最糟糕的方法是使用单个资源,获取请求参数(用户和密码)并根据您从请求获得的内容操作页面内容(但是,这是......'首次使用JSP / Servlets解决方案进行编程)。