第一个servlet程序,不知道该怎么访问url,在这里这个servlet和jsp是怎么交互的
刚刚接触servlet,就在myeclipse里写了一个简单的程序:servlet雷是这样的:packagetest;importjava.io.IOException;...
刚刚接触servlet,就在myeclipse里写了一个简单的程序:
servlet雷是这样的:
package test;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ServletDemoFirst extends HttpServlet{
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
response.setContentType("test/html;charset=GB2312");
PrintWriter out=response.getWriter();
out.print("第一个servlet程序");// 使用 "out"把应答内容发送到浏览器
out.close();
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException{
doGet(request,response);
}
}
web.xml是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<description>什么都行</description>
<display-name>什么都行</display-name>
<servlet-name>ServletDemoFirst</servlet-name>
<servlet-class>
test.ServletDemoFirst
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletDemoFirst</servlet-name>
<url-pattern>/servlet/ServletDemoFirst/index.jsp</url-pattern>
</servlet-mapping>
</web-app>
还有就是一个默认生成的jsp页面:index.jsp 展开
servlet雷是这样的:
package test;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
public class ServletDemoFirst extends HttpServlet{
public void doGet(HttpServletRequest request,HttpServletResponse response) throws IOException{
response.setContentType("test/html;charset=GB2312");
PrintWriter out=response.getWriter();
out.print("第一个servlet程序");// 使用 "out"把应答内容发送到浏览器
out.close();
}
public void doPost(HttpServletRequest request,HttpServletResponse response) throws ServletException, IOException{
doGet(request,response);
}
}
web.xml是这样的:
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5"
xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<servlet>
<description>什么都行</description>
<display-name>什么都行</display-name>
<servlet-name>ServletDemoFirst</servlet-name>
<servlet-class>
test.ServletDemoFirst
</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>ServletDemoFirst</servlet-name>
<url-pattern>/servlet/ServletDemoFirst/index.jsp</url-pattern>
</servlet-mapping>
</web-app>
还有就是一个默认生成的jsp页面:index.jsp 展开
4个回答
展开全部
举个例子吧在Index.jsp中加个a标签
<a href="<%=request.getContextPath()%>/ServletDemoFirst">点这里</a>
他会跳转到你的servlet类中 默认执行get请求 所以会进入doGet方法 按照你的配置 即使请求时Post也会跳到doGet方法中
数据交互的话 你可以在JSP中加个表单什么的 然后提交到以上的Servlet中 但是表单的请求一般都是POST所以 要处理表单 必须在doPost方法中去处理 可以使用request.getParament("");去获取你提交的值 简单的就类似于这样
<a href="<%=request.getContextPath()%>/ServletDemoFirst">点这里</a>
他会跳转到你的servlet类中 默认执行get请求 所以会进入doGet方法 按照你的配置 即使请求时Post也会跳到doGet方法中
数据交互的话 你可以在JSP中加个表单什么的 然后提交到以上的Servlet中 但是表单的请求一般都是POST所以 要处理表单 必须在doPost方法中去处理 可以使用request.getParament("");去获取你提交的值 简单的就类似于这样
展开全部
url-pattern不要这样配,你可以配成这样/servlet/firstServlet,servlet你可以认为和jsp一样就是一个请求。要实现交互,你可以让servlet这个请求跳转到jsp这个请求(我们一般说servlet跳转到jsp这个页面)。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
首先,你的<url-pattern>/servlet/ServletDemoFirst/index.jsp</url-pattern>比较怪异,一般情况下是如下形式:
<url-pattern>/servlet/ServletName</url-pattern>
在jsp中引用url为:/servlet/ServletName
如:<a href="/servlet/ServletName">asd</a>
<form action="/servlet/ServletName" method="post"></form>
等等
<url-pattern>/servlet/ServletName</url-pattern>
在jsp中引用url为:/servlet/ServletName
如:<a href="/servlet/ServletName">asd</a>
<form action="/servlet/ServletName" method="post"></form>
等等
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
通过doget和dopost方法,一般在dopost()里写方法,不喜欢在doget里面写如果非要用doget的话那么下面method=get
然后jsp中的form中method=post,action就是你的servlet 的名字
web。xml就不用说了吧,就是一些简单的映射
然后jsp中的form中method=post,action就是你的servlet 的名字
web。xml就不用说了吧,就是一些简单的映射
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询