servlet交互过程图详解,servlet的常见问题,创建web项目

Posted 余扯

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了servlet交互过程图详解,servlet的常见问题,创建web项目相关的知识,希望对你有一定的参考价值。

目录

一.B/S模式和C/S模式

C/S:客户端服务器端结构模式

B/S:浏览器服务器模结构模式

B/S结构图:

二.创建web项目

三.举例说明Servlet执行流程图:

 四.Servlet项目中常见的问题

一.当创建web项目时,没有勾选Java EE时,如何添加web

 二.在web文件中导入jar

 三.404

设置默认路径方式一:

 设置默认路径方式二:

四.405

 五.空指针和NumberFormatException

六.500

七.中文编码出错

tomcat8之后:

 tomcat8之前:


 

(使用jdk8版本尽量不要使用tomcat9及以上版本的tomcat,版本不匹配的问题)

一.B/S模式和C/S模式

C/S:客户端服务器端结构模式

优点:充分利用客户端机器资源,减轻服务器负荷。(将一部分安全性不高的计算机存储任务安装在客户端,不需要将所有的计算和资源放在服务器上,减轻服务器的压力)

缺点:占用客户端内存,需要安装升级,维护成本较高

B/S:浏览器服务器模结构模式

优点:所有数据全部部署在服务器上,安全性高,升级维护成本低。客户端不需要安装。

缺点:服务器负荷重,需要服务器和客户端浏览器频繁交互,产生网络负荷。

B/S结构图:

二.创建web项目

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<form method="post" action="Add">
    ID:<input type="text" name="id"/><br/>
    姓名:<input type="text" name="username"/><br/>
    balance:<input type="text" name="balance"/><br/>
    <input type="submit" value="添加">
</form>

</body>
</html>

package temp;


import Dao.UserDaoImpl;
import bean.User;
import org.apache.commons.dbutils.ResultSetHandler;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.util.List;

public class AddServlet extends HttpServlet 
    @Override
    protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException 
        request.setCharacterEncoding("utf-8");
        String userId = request.getParameter("id");
        int id = Integer.parseInt(userId);

        String name = request.getParameter("username");

        String userBalance = request.getParameter("balance");
        double balance = Double.parseDouble(userBalance);

        System.out.println(id);
        System.out.println(name);
        System.out.println(balance);
    


三.举例说明Servlet执行流程图:

 四.Servlet项目中常见的问题

一.当创建web项目时,没有勾选Java EE时,如何添加web

 

 二.在web文件中导入jar

在web-inf中创建lib,其中的类库只能被改模块使用,其他模块不能使用

如果已经在项目的目录下创建了lib:

 

 三.404

访问路径不对,检查网址

设置默认路径方式一:

 设置默认路径方式二:

在xml配置文件设置以下内容:

设置默认打开的页面名

四.405

405是值请求方法不支持:比如,method为post,但是servle没有实现doPost的方法,就会报405错误。

解释405错误是如何报出来的

 五.空指针和NumberFormatException

都是因为传入的参数为空导致

六.500

服务器内部错误,报这个错就难搞了,希望你没有,哈哈哈

七.中文编码出错

tomcat8之后


        只针对post方法:request.setCharacterEncoding("UTF-8");

 放在第一行执行哦

 tomcat8之前:


        (1.如果是post传递方法:
            request.setCharacterEncoding("UTF-8");
        (2.如果是get传递方法
            1.先将数据转换成字节数组
            String name = request.getParameter("name");
            byte[] by = name.getBytes("ISO-8859-1");
            2.将字节数组按照设定的编码格式转成成字符串
            name = new String(by,"UTF-8");

 

以上是关于servlet交互过程图详解,servlet的常见问题,创建web项目的主要内容,如果未能解决你的问题,请参考以下文章

会话技术cookie和session详解

servlet

Servlet之详解

Servlet详解

TOMCAT原理详解及请求过程(转)

Servlet简介及其生命周期详解