まず、目的
オープンソースのJavaの目的で、個々のは、最近に表示するために実行可能なjavaWeb感かなり基本的なフレームワーク分析を学び、実践するために着手した自身、あなたは首長が改善すべき指針を批判見えます。それはそれを歓迎すると何も間違っているを見つけ、調査及び研究の実行可能な場所を見つけます。
第二に、選択
1.springboot(プラグインjavaWeb開発フレームワーク、我々はすべてそれを知っている必要がありますなぜ、私たちは多くの時間を短縮するためにプロジェクトを構築することができます)
2.springブートデータ-JPA(個人的には内蔵の強力な分析方法のSQLの良い利用の持続性ライブラリだと思う、単一のテーブル用のSQL文と一部の学生ショートボードのための良い援助することができ、それは強力ですしかし、クエリに関連付けられた複数テーブルのための私の方法は、SQLの彼らの定義である。それはまた、エンティティクラスの利益マッピング関係を実行する必要はありませんがあります[MyBatisので、これは最も厄介な領域です])
3.redis(ユーザーのログインメニューシステムをcキャッシュ特定のビジネス要件bのバッファ・キャッシュキャッシュ)
4.mysql
5.druid(alibabaのデータベース接続プール)
6.mongodb(オプション)
7.mavenパッケージ管理ツール
8.IDEA2019開発ツール
9.JDK1.8
三、正题
この記事では、プロジェクトを説明し、プロジェクトが接続するエンドを添付します
1.リクエスト阻止層--->フィルタ要求、ログイン認証。インターフェイスを実装することによって達成HandlerInterceptor
2 --->ログ層を止める方法は、結果は、統一されたパッケージを返します。AOPの実装
例外を選択するために使用されるビジネスロジックの分析3.カスタム例外クラスとオーバーライドメソッドにfillInStackTraceのパフォーマンスに影響を与えないために、スローされます
https://blog.csdn.net/itguangit/article/details/85341774 描きます
4.APIリターンApiResult均一インターフェイスクラス、以下の特性
/** 结果码 */ private int code = 500; /** 消息 */ private String message = ""; /** 数据 */ private Object data; /** 异常 */ private Exception ex; /** 是否成功 */ private boolean success;
パラメータParamVerificationをチェックすることで検証ベースのカスタムパラメータの検証注釈(後者はコメントにチェックします)
@Retention(RetentionPolicy.RUNTIME) @Target({ElementType.PARAMETER,ElementType.FIELD}) public @interface Verification { // 是否可空 boolean nullable() default true; // 最大长度 int maxLength() default 0; // 最小长度 int minLength() default 0; // 描述(用于校验失败时提示所用) String desc() default ""; // 格式(预留) String format() default ""; }
6.プロジェクトのパッケージ構造
7.プロジェクトアドレス
四、结束
学习+实践,有什么不妥之处欢迎留言批评教育。后期会加上 spring clould 生态的微服务框架。