医薬プロジェクトソース解析(1)


1月22日にこのプロジェクトを引き継ぐ
このプロジェクトは医薬プロジェクトである.
このプロジェクトのコアポイント:
サーブレットの使用プロセス:
1.GenericServiceletというクラスには3つの方法があります.つまり、コアの方法です.
init();
services(ServletRequestServletResponse);
destroy();
その後、HttpServiceはGenericServiceを継承し、この3つの方法のほかに、doPost(HttpService Request,HttpServiceResponse)とdoGet(HttpService Request,HttpServiceResponse)の2つの方法が最も主要である.
BaseServiceletは私たちのservletのベースクラスであり、抽象クラスとしてHttpServiceletを継承しています.
サービスの方法は具体的に以下の通りです.
	protected synchronized void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		request.setCharacterEncoding("UTF-8");
		response.setCharacterEncoding("UTF-8");
		response.setHeader("content-type", "text/html;charset=UTF-8");
		this.request = request;
		this.response = response;
		setHandlePermission();

		logger.trace("       ,    :" + this.getClass().getSimpleName());
		//      
		for (Enumeration e = request.getParameterNames(); e.hasMoreElements(); ) {
			String name = e.nextElement();
			//      clq_0412
			//logger.trace("name:{} value:{}", name, request.getParameter(name));
		}

		session = request.getSession();

		employee = (Employee) session.getAttribute(Constant.sessionUserAttrib);
		writer = response.getWriter();
		//      
		dataJson = getParam(request);

		handle();
	}
employeeはログイン操作のユーザーであり、このユーザーが空であればログインページに戻る.
/***対応する操作権限を設定します.継承クラスはこの方法を実現する必要がある.     */    protected abstract void setHandlePermission();
(権限を設定する方法は、このBaseSeSeServeret抽象ベースクラスを継承する場合、サブクラスがその抽象メソッドを実装する必要があります)
2. PrintWriter writer = response.getWriter();
writeはフロントに戻るオブジェクトとして;
中のwriteを利用する.print(Object o)は、データをObjectに格納することができる.フロントエンドは、ページを表示するためにデータを受信する.
3.
protected void queryAll() {
	}
	protected void delete() {
	}
	protected void update() {
	}
	protected void query() {
	}
	protected void add() {
	}
検索の4つの方法を追加し、1つのクエリーのすべての方法を追加し、バックグラウンドはフロントエンドのcontrolTypeタイプに基づいてどの方法を呼び出すかを決定する.
4.クラスの上に@WebServicelet("/xxx.do")を注記で付けるサーブレットを書く.
削除・変更の方法を実現する.インタフェースを作成し、フロントがデータを取得するように呼び出すことに相当します.
バックグラウンドインタラクションの核心はこれで、次の編ではエンティティクラスとデータベースのマッピングコアのファイル解析を書きます.