问题描述
问一下,把数据库里的表放到jsp页面中,就是生成多个页面,这你们做过这样的没??本身没有jsp页面,当程序运行时,产生的。具体例子是:例如有个usergroups表,有多个用户的权限的记录,每条记录是一个用户组,当运行时,生成多个jsp页面,每个页面代表一个用户组,在里面用map保存,数据。直接用文件生成好像不行吧,目的是放在jsp页面中,比数据库中拿数据快点。不是内存,是物理存在的jsp页面。在用到得页面这样取<jsp:includepage="forumdata/cache/usergroup_${jsprun_groupid}.jsp"/>这样就可以取得她的权限了。不要访问数据库了。麻烦高手帮忙解决下。最好有具体的详细的例子。
解决方案
解决方案二:
虽然觉的问题怪怪的。但应该还是有方法实现,首先JSP的本质还是Servlet,所以可以先把/cache映射到一个Servlet上,web.xml可以配置。通过request.getRequestURI()得到usergroup_${jsprun_groupid}.jsp,然后通过字符串解析,读出jsprun_groupid值,读数据库,然后把数据存在MAP里,调用request.setAttribute(key,Map),然后request.getRequestDispatcher().forward(),随便返回到一个空页面就可以了。如果你在HOST页面调用request.getAttribute(key)也应该可以拿到MAP.但只是做缓存的话,其实还有其它的方法,比如servletContext里,或者用filter都可以,这个方法会比较麻烦.
解决方案三:
首先谢谢你的回答。但是你的解决方案是放在过滤器里面,根据请求解析请求页面字符串,但是每次都要访问数据库把map放在request中,不太符合我的意图。我的意思是放在jsp页面中。以后就不要访问数据库了。直接动态导入相应页面就行了。
解决方案四:
没做过不了解不知道有什么好处生成HTML的优点很大但生成JSP干嘛JSP本身就是动态页面
解决方案五:
你说的是根据表自动生成jsp界面吗?
解决方案六:
引用4楼lgh1117的回复:
你说的是根据表自动生成jsp界面吗?
是的
解决方案七:
引用3楼bearkin的回复:
没做过不了解不知道有什么好处生成HTML的优点很大但生成JSP干嘛JSP本身就是动态页面
html不能保存map啊,map里含有数据库里面的一个用户组信息。
解决方案八:
怎么没人啊,不要沉了啊。
解决方案九:
不会帮顶!!!期待高手。