Resin2.1.4各位有没有把查询条件作为request的参数传递给一个*.jsp文件?
一般情况,查询条件没有问题的,但是,如果你用了模糊查询,问题就会出来了。不管你用什么办法,%后面的字符都会被解析成乱码。(我主要是在用了中文查询的时候,一直以为是中文的问题,尝试了所有的中文转换办法,后面才想到是这个问题)解决办法: 把%替换成*, 在jsp文件中再使用replace('*', '%')换回来。
哈哈

解决方案 »

  1.   

    你们真有创意阿!<%
    String s = "select * from a where a like '%abc%'";
    s = java.net.URLEncoder.encode(s,"utf-8");
    %>
    <a href="jsp4.jsp?sql=<%=s%>">jsp4.jsp</a>jsp4.jsp
    <%
    out.print(request.getParameter("sql"));
    %>
      

  2.   

    没人会那么用的,万一别人用给你的参
    数中增加其它的SQL,那你就等着人家攻击你吧!
    可以在你的库中创建表,创建用户,那你的数据库将
      

  3.   

    楼上说得是道理,不过可以先控制当前连数据库的权限,,,如果限制为只能SELECT 某个表的话那就应该没问题。
      

  4.   

    呵呵,事实上我的JSP处理的不是从页面传过去的参数,我是用VC写的程序中把此参数传过去。因为我在VC中生成参数,所以java.net.URLEncoder.encode是不能用了。
    传过去的仅仅是查询的条件而以,也就是Where后面的部分,安全还是没问题的。