我写了两个页面,
index.jsp<jsp:forward page="attribute/attribute.jsp">
<jsp:param name="attribute" value="铁"/>
</jsp:forward>attribute.jsp<%@ page language="java" import="java.sql.*" pageEncoding="GBK"%>
<%@page import="jdbc.jdbc"%>
<%
request.setCharacterEncoding("GBK");
String attribute = request.getParameter("attribute");
Connection conn = jdbc.getConnection();
String sql = "select * from accouter where attribute='" + attribute+ "' order by grade asc";
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(sql);
while (rs.next()) {
%>
<TR height=19>
<TD width="10%"><%=rs.getString("grade")%></TD>
<TD width="12%"><%=rs.getString("name")%></TD>
<TD width="8%"><%=rs.getString("attribute")%></TD>
<TD width="20%"><%=rs.getString("number")%></TD>
<TD width="50%"><%=rs.getString("assembled")%></TD>
</TR>
<%
}
%>
但是无法传值,index.jsp
无法显示,麻烦知道的帮忙看下,是不是个细节忘了,谢谢了
index.jsp<jsp:forward page="attribute/attribute.jsp">
<jsp:param name="attribute" value="铁"/>
</jsp:forward>attribute.jsp<%@ page language="java" import="java.sql.*" pageEncoding="GBK"%>
<%@page import="jdbc.jdbc"%>
<%
request.setCharacterEncoding("GBK");
String attribute = request.getParameter("attribute");
Connection conn = jdbc.getConnection();
String sql = "select * from accouter where attribute='" + attribute+ "' order by grade asc";
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(sql);
while (rs.next()) {
%>
<TR height=19>
<TD width="10%"><%=rs.getString("grade")%></TD>
<TD width="12%"><%=rs.getString("name")%></TD>
<TD width="8%"><%=rs.getString("attribute")%></TD>
<TD width="20%"><%=rs.getString("number")%></TD>
<TD width="50%"><%=rs.getString("assembled")%></TD>
</TR>
<%
}
%>
但是无法传值,index.jsp
无法显示,麻烦知道的帮忙看下,是不是个细节忘了,谢谢了
会不会是value传的中文问题
index.jsp
负责显示,因为要显示不同的分类,所以想到了用jsp:forward 传值到xianshi.jsp里面查询出来,然后再index.jsp里面显示。
-------------------
index.jsp显示是:
例如:
职称(下面显示的全是有职称的人,从数据库里面读取)
1.xxxx
2.XXXX
奖金(下面显示全是有奖金的人,从数据库里面读取)
1.xxxx
2.XXXX
城市户口(下面显示全是有城市户口的人,从数据库里面读取)
1.xxxx
2.XXXX
(因为index.jsp页面显示的是按照,奖金,户口这样不同的分类在不同的类别下面全部显示出来,所以想到了用forward传值,但是试验后发现一个页面里面用几个forward,只显示一个,不知道是不是一个页面只能传一个值,多的话只接第一个值。
不知道还有没有其他的方法,希望高手帮忙下,谢谢了!<jsp:forward page="xianshi.jsp">
<jsp:param name="attribute" value="职称">
</forward>
------------------
<jsp:forward page="xianshi.jsp">
<jsp:param name="attribute" value="奖金">
</forward>)xianshi.jsp
<%@ page language="java" import="java.sql.*" pageEncoding="GBK"%>
<%@page import="jdbc.jdbc"%>
<%
request.setCharacterEncoding("GBK");
String attribute = request.getParameter("attribute");
Connection conn = jdbc.getConnection();
String sql = "select * from accouter where attribute='" + attribute+ "' order by grade asc";
Statement st = conn.createStatement();
ResultSet rs = st.executeQuery(sql);
while (rs.next()) {
%>
<TR height=19>
<TD width="10%"><%=rs.getString("grade")%></TD>
<TD width="12%"><%=rs.getString("name")%></TD>
<TD width="8%"><%=rs.getString("attribute")%></TD>
<TD width="20%"><%=rs.getString("number")%></TD>
<TD width="50%"><%=rs.getString("assembled")%></TD>
</TR>
<%
}
%>
在Tomcat的server.xml的两个Connector元素中加上URIEncoding= "UTF-8 "属性。
你看看是不是路径有误
在这句话下面加上attribute = new String(attribute.getBytes("ISO-8859-1"), "GBK");
因为你直接转发过来的默认是get请求,而上面这句话是针对post请求,明白了吧!
现在用jsp标签的人很少啊,鼓励一下!
index.jsp页(只贴关键代码了)
职称:
<jsp:include page="xianshi.jsp">
<jsp:param name="attribute" value="职称"/>
</jsp:include>
奖金:
<jsp:include page="xianshi.jsp">
<jsp:param name="attribute" value="奖金"/>
</jsp:include>然后你那个xianshi.jsp 接收value的值就可以了,我简单的写了个HR项目,用你的思路搞定,按照我给你说的试试看,应该是没有问题的。