jsp/servlet的一些经验 给新手看

jsp/servlet 第一篇 部署servlet myeclipse8.5 +tomcat6.033+mysql5.0+jdk4.6
当开始建项目时出现 description The requested resource () is not available. 错误 
解决办法是在新建项目时只是用1.6版本的jdk 在弹出窗口选择no
 
还有一个问题就是 连接数据库问题 必须在lib里面放上mysql的驱动jar包
然后build path 进去 不然会出现无法连接数据库问题
具体文件结构
 
 在index页面进行操作然后向RegServlet发送http请求 在RegServlet 处理
 
index主要代码
 
RegServlet主要代码 (主要的就是连接数据库一个init()方法和一个dopost()方法,具体有5个方法tomcat会进行调用 类似于生命周期)
public class RegServlet extends HttpServlet {
 private static final long serialVersionUID = 1789481329876401944L;
 // 数据库连接Connection
 private Connection conn;
 
 // 初始化方法
 public void init() throws ServletException {
  super.init();
  try {
   // 加载驱动
   Class.forName("com.mysql.jdbc.Driver");
   // 数据库连接url
   String url = "jdbc:mysql://localhost:3306/test"; //test数据库名
   // 获取数据库连接
   conn = DriverManager.getConnection(url, "root", "123456");
  } catch (Exception e) {
   e.printStackTrace();
  }
 }
 
 // doPost()方法用于对index传过来的请求进行处理
 public void doPost(HttpServletRequest request, HttpServletResponse response)
   throws ServletException, IOException {
 }
 

<servlet>配置

servlet-mapping 是什么?

主要是截获请求的,  
  如果你的url-pattern定义的是路径,那么以后所有对这个路径下资源的请求都会由servlet-name中定义的servlet处理;  
  如果你的url-pattern定义的是资源格式例如*.do等,那么对于所有符合这种格式的资源的请求都由指定的servlet处理。
Top

3 楼www203(水户洋平)回复于 2003-07-07 11:32:01 得分 0 <servlet>  
          <servlet-name>sampleSeverlet</servlet-name>  
          <servlet-class>page.sampleSeverlet</servlet-class>  
      </servlet>  
  一般你在上面定义sampleSeverlet,然后再在下面定义  
        <servlet-mapping>  
                  <servlet-name>sampleSeverlet</servlet-name>  
                  <url-pattern>/toSeverlet/*</url-pattern>  
          </servlet-mapping>  
 
Top

4 楼showmetheway(雪儿甜心)回复于 2003-07-07 11:32:45 得分 0 你们的意思是:  
  http://localhost:8080/toSeverlet/*   等价于   http://localhost:8080/sampleSeverlet
Top

5 楼mellono(mellono)回复于 2003-07-07 11:43:13 得分 0 不是等价于,而是这个请求由指定的servlet处理。  
  例如  
  <servlet-mapping>  
          <servlet-name>sampleSeverlet</servlet-name>  
          <url-pattern>*.do</url-pattern>  
  </servlet-mapping>  
  你在一个页面中输入了一些信息,提交到a.do,那么sampleServlet就会截获这个请求,你可以在sampleServlet中做任何你想做的处理。  
  建议看一下MVC的资料,这种处理在MVC中常用。

 1.以/开始并以/*结束的字符串用来映射路径,例如:

           <url-pattern>/admin/*</url-pattern>

            如果没有精确匹配,那么对/admin/路径下的资源的所有请求将由映射了上述URL样式的Servle来处理

  2.以*.为前缀的字符串用来映射扩展名,例如:

            <url-pattern>*.do</url-pattern>

             如果没有精确匹配和路径匹配,那么对具有.do扩展名的资源的请求将由映射了上述URL样式的Servlet处理

 3.以一个单独的/指示这个web应用程序默认的Servlet,例如:

             <url-pattern>/</url-pattern>

             如果对于某个请求,没有找到匹配的Servlet,那么将使用web应用程序的默认Servlet来处理

4.精确匹配,例如: 

             <url-pattern>/login</url-pattern>

通俗的讲就是jsp页面发送的请求只要发到<url-pattern> 指定的就可以让他上面的<servlet-name>sampleSeverlet</servlet-name>  进行处理

 
 
 
 
 
 
 
 

posted on 2013-11-30 01:02  priout  阅读(292)  评论(0编辑  收藏  举报