如何使用jsp页面跳转到servlet中读取数据库中的数据,再通过servlet跳转到下一个jsp页面

我有一个welcome.jsp页面,我想调用welcome.servlet,通过welcome.servlet去用数据库中的technique这个表中的title值,但不... 我有一个welcome.jsp页面,我想调用welcome.servlet,通过welcome.servlet去用数据库中的technique这个表中的title值,但不知道welcome.servlet该怎么写好

package jspservlet.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import jspservlet.dao.TechniqueDAO;
import jspservlet.dao.impl.TechniqueDAOImpl;
import jspservlet.vo.Technique;

public class WelcomeServlet extends HttpServlet {

}
大括号里面具体的代码不会写了。
最后读出来title的值

用req.getRequestDispatcher("./technique.jsp").forward(req, res);跳转到technique页面,在页面上将title值显示出来。
展开
 我来答
铂金羊羊羊
推荐于2017-12-16 · TA获得超过1043个赞
知道小有建树答主
回答量:230
采纳率:100%
帮助的人:208万
展开全部
servlet执行数据库操作.把结果例如得到了一个List all = DB.get()....
可以这样做 : request.setAttribute("allList",all);
这是把all的值赋给名字叫 allList 的
然后JSP 页面里就可以通过
List allList = request.getAttribute("allList");
然后在JSP页面里就可以得到这个结果了
我看你写的DAO操作.
如果结果是一个集合的话
所以servlet里应该是 List all = IDAO.getList() 看你自己的方法如果调用了..
然后通过我上面说的一个赋值,一个取值.就可以在JSP页面里取出来了.
更多追问追答
追问
package jspservlet.dao;

import jspservlet.vo.Technique;
public interface TechniqueDAO {
public int queryByTechnique(Technique technique) throws Exception;
}
追答
int i = queryByTechnique(Technique technique);
request.setAttribute("i",i); 这是赋值,在servlet里

int i= (int)request.getAttribute("i"); 这是取值,在JSP里

结果就出来了.
百度网友3ca2952
2012-07-03 · TA获得超过152个赞
知道答主
回答量:151
采纳率:0%
帮助的人:96.8万
展开全部
在jsp页面上用个超链接<a href=“WelcomeServlet ”>获得title</a>,什么数据库,看你导入的包已经写好了DAO的方法,那就直接调用DAO的方法,得到返回值。然后用request.setAttribute("xxx",title)保存,用
req.getRequestDispatcher("./technique.jsp").forward(req, res);
跳转到technique页面,用c标签取出,或者最基本的<%=request.getAttribute("xxx")%>就显示了
追问
能给qq帮看看吗?可能是我描述不清楚的问题=   =
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
cheneyfeng
2012-07-03 · TA获得超过485个赞
知道小有建树答主
回答量:646
采纳率:100%
帮助的人:503万
展开全部
数据库连接你有写么?
给你个 数据连接的类。
public class WebDataSource{
private static final String diverClass="org.gjt.mm.mysql.Driver";
private static final String url="jdbc:mysql://127.0.0.1/数据库名";
private static final String user="root";
private static final String pswd="密码";

public static Connection getConnection() throws SQLException{
Connection conn=null;

try{
Class.forName(diverClass);
conn=DriverManager.getConnection(url, user, pswd);
}
catch(Exception ex){
StringBuffer sb=new StringBuffer();

sb.append("无法连接到数据库,请检查驱动类或数据库连接。\r\n");
sb.append("<br>可能原因一:"+diverClass+":对应的驱动类未被载入工程\r\n");
sb.append("<br>可能原因二:url"+url+":信息配置不正确\r\n");
sb.append("<br>可能原因三:user"+user+":不正确\r\n");
sb.append("<br>可能原因四:password"+pswd+":不正确\r\n");

throw new SQLException(sb.toString());
}

return conn;
}

public static void closeStatement(Statement stmt) {
try {
if (stmt != null) {
stmt.close();
}
} catch (SQLException ex) {
System.out.println(ex);
}
}
public static void closeConnection(Connection conn) {
try {
if (conn != null) {
conn.close();
}
} catch (SQLException ex) {
System.out.println(ex);
}
}

在你的servlet 中先调用
getConnection() 这个方法然后创建数据库连接对象,执行sql语句。然后将语句执行sql语句。
给你个例子,研究下。
try {
conn = this.getConnection();
pstmt = (PreparedStatement) conn.prepareStatement(“sql语句”);
pstmt.setInt(1, anli_tree_id);
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
lt.setId(rs.getInt("ID"));
}
rs.close();
} catch (SQLException ex) {
System.err.println(ex.getMessage());
} finally {
closeStatement(pstmt);
closeConnection(conn);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
tlyc520
2012-07-03
知道答主
回答量:14
采纳率:0%
帮助的人:7.5万
展开全部
TechniqueDAO dao = new TechniqueDAOImpl();
接着调用dao里面的方法去查询title的值(dao.方法)
然后requst.setAttribute("title",数据库查询出来的title的值);
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
asdjlhasud
2012-07-03
知道答主
回答量:2
采纳率:0%
帮助的人:3142
展开全部
buzhidao a
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式