Servlet跳转问题

Servlet问题:servlet cannot be resolved to a type解决办法

Servlet测试代码:

package testservlet;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;

public class servlet1 extends HttpServlet {
private static final String CONTENT_TYPE="text/html;charset=GBK";
public void init() throws ServletException{
  
}
public void doGet(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
   response.setContentType(CONTENT_TYPE);
   PrintWriter out=response.getWriter();
   out.println("<html>");
   out.println("<head><title>让中文不再是乱码</title></head>");
   out.println("<body bgcolor=\"#ffffff\">");
   out.println("<span style=\"font-size:9pt;\">    让输出的中文不再是乱码!<br><br>");
   out.println("这回总算可以看到你的真面目啦</span>");
   out.println("</body></html>");
}
public void doPost(HttpServletRequest request,HttpServletResponse response)throws ServletException,IOException{
   doGet(request,response);
}
public void destroy(){
  
}

}

然而在eclipse里却显示

servlet cannot be resolved to a type

servlet.http cannot be resolved to a type

找了半天资料才知道jdk 里不包括servlet-api.jar这个包,于是到tomcat里找到这个包复制到jdk\jre\lib

再设置classpath,结果还是无济于事,后来闯进一个英文论坛看到似乎好像说工程里的路径权限高,并且eclipse并到classpath里寻找jar位置,所以我就到我的java项目里

1)开发工具是:myEclipse

项目名-->右键

Property-->选择

Java Build Path-->选择

Add External JARs-->选择

servlet-api.jar的路径输入即可 该包在tomcat里有 搜索即课找到

///

2)开发工具是:Eclipse

WEB-INF/lib->右键

Property-->选择

Java Build Path-->选择

Add External JARs-->选择

servlet-api.jar的路径输入即可 该包在tomcat里有 搜索即课找到

经验证,这应该是eclipse的一个bug

结论就是

eclipse的web项目如果需要引用其他的jar包,
jar包必须加入WEB-INF/lib才有用 (会自动导入web app包里)

如果仅仅是build path引用本地的jar包
效果与没导入jar包的效果一样,相当于没导包。

想用tomcat跑起来的放在lib里

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
servlet中,可以使用RequestDispatcher的forward方法来跳转页面。例如,可以使用以下代码将请求转发到名为"EShop.jsp"的JSP页面: ```java String url = "/EShop.jsp"; ServletContext sc = getServletContext(); RequestDispatcher rd = sc.getRequestDispatcher(url); rd.forward(req, res); ``` 这将把请求和响应对象传递给目标页面,使目标页面能够处理请求并生成响应。注意,使用forward方法跳转页面后,地址栏不会发生变化。\[1\] 另外,需要注意的是,forward方式只能跳转到本web应用中的页面上,无法跳转到其他应用或外部网页。如果想要在跳转后传递参数,可以使用url中带parameter、session或request.setAttribute等方法。\[3\] #### 引用[.reference_title] - *1* *2* [Servlet跳转到jsp页面的几种方法](https://blog.csdn.net/weixin_30713953/article/details/96238984)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Servlet跳转页面](https://blog.csdn.net/weixin_40912987/article/details/116167119)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值