コンテンツ
1.Webプロジェクトの作成時にJavaEEがチェックされていない場合にWebを追加する方法
5.ヌルポインタとNumberFormatException
(jdk8バージョンを使用する場合は、tomcat 9以降のtomcatバージョンを使用しないようにしてください。バージョンが一致しないためです)
1. B/SモードとC/Sモード
C / S:クライアント-サーバー側構造モード
利点:クライアントマシンのリソースを最大限に活用し、サーバーの負荷を軽減します。(セキュリティの低いコンピューターストレージタスクの一部はクライアント側にインストールされ、すべてのコンピューティングとリソースをサーバーに配置する必要がないため、サーバーへの負荷が軽減されます)
短所:クライアントメモリを占有し、インストールとアップグレードが必要であり、メンテナンスコストが高い
B / S:ブラウザサーバーモジュール構造モード
利点:すべてのデータがサーバーにデプロイされ、セキュリティが高く、アップグレードとメンテナンスのコストが低くなります。クライアントはインストールを必要としません。
短所:サーバーの負荷が高く、サーバーとクライアントブラウザー間で頻繁にやり取りする必要があるため、ネットワークに負荷がかかります。
B / S構造図:
2.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);
}
}
3.サーブレットの実行フローチャートを説明する例:
4.サーブレットプロジェクトでよくある問題
1.Webプロジェクトの作成時にJavaEEがチェックされていない場合にWebを追加する方法
2.jarファイルをWebファイルにインポートします
web-infにlibを作成します。その中のクラスライブラリは、変更されたモジュールでのみ使用でき、他のモジュールでは使用できません。
libがプロジェクトのディレクトリに作成されている場合:
3.404
アクセスパスが正しくありません。URLを確認してください
デフォルトのパス方法1を設定します。
デフォルトのパス方法2を設定します。
xml構成ファイルで以下を設定します。
開くデフォルトのページ名を設定する
Four.405
405は、値要求メソッドがサポートされていないことを意味します。たとえば、メソッドがpostであるが、servleがdoPostメソッドを実装していない場合、405エラーが報告されます。
405エラーがどのように報告されるかを説明する
5.ヌルポインタとNumberFormatException
着信パラメータが空であるためすべて
Six.500
サーバーに内部エラーがあります。このエラーを報告するのは困難です。報告しないでください、ははは
7.中国のエンコーディングエラー
tomcat8の後:
postメソッドの場合のみ:request.setCharacterEncoding( "UTF-8");
最初の行で実行
tomcat8の前:
(1.配信後のメソッドの場合:
request.setCharacterEncoding( "UTF-8");
(2.配信の取得メソッドの場合
1.最初にデータをバイト配列に変換します
String name = request.getParameter( " name ");
byte [] by = name.getBytes(" ISO-8859-1 ");
2.設定されたエンコーディング形式に従ってバイト配列を文字列に変換します
name= new String(by、" UTF-8 ") ;