ローコード高速開発プラットフォーム JNPF 高速開発プラットフォーム 3.4.7 バージョン フレームワーク ソース コード展開ドキュメントの入力手順

JNPF 高速開発プラットフォームは単なるバックグラウンド開発フレームワークではなく、エンタープライズ レベルの高速開発ソリューションです。バックエンドは Spring Boot、Shiro、MyBatis の古典的な組み合わせに基づいており、フロントエンドは Beetl の古典的な開発モードを採用しています。 Bootstrap、AdminLTE、または Vue3 の分離バージョン、Vite、Ant Design Vue、TypeScript、Vben Admin の最先端のテクノロジー スタック。ビジネスモジュールプロジェクトとマイクロサービスモジュールプロジェクトを自動作成し、組織、ロールユーザー、メニューとボタンの認可、データ権限、システムパラメータ、コンテンツ管理、ワークフローなど。疎結合設計、マイクロカーネルお​​よびプラグイン アーキテクチャ、モジュールの追加または削除が簡単、インターフェース更新不要、ワンクリックでスキン変更、複数アカウントのセキュリティ設定、パスワード ポリシー、オンライン ファイル プレビュー、メッセージ プッシュ、多様なサードパーティ ログイン、オンラインスケジュールされたタスクの構成、クラスターのサポート、SAAS のサポート、複数のデータ ソースのサポート、読み取りと書き込みの分離、サブデータベースのサブテーブルのサポート、マイクロサービス アプリケーションのサポート。http://www.jnpfsoft.com/?from=CSDNm テスト

JeeSite 高速開発プラットフォームの主な目的は、若手の研究開発担当者が複雑なビジネス機能を迅速に開発できるようにする一方で、上級担当者がより有益な作業を行う時間を確保できるようにすることです。開発者はビジネスに集中でき、残りの開発者は技術的な詳細をカプセル化して技術的な困難を軽減するプラットフォームを利用できるため、人件費が節約され、プロジェクト サイクルが短縮され、ソフトウェアのセキュリティと品質が向上します。

private byte[] _buffer = new byte[10_000_000];
private Random _random = new Random();

[Benchmark]
public Random Ctor() => new Random();

[Benchmark]
public int Next() => _random.Next();

[Benchmark]
public int NextMax() => _random.Next(64);

[Benchmark]
public int NextMinMax() => _random.Next(0, 64);

[Benchmark]
public double NextDouble() => _random.NextDouble();

[Benchmark]
public void NextBytes_Array() => _random.NextBytes(_buffer);

[Benchmark]
public void NextBytes_Span() => _random.NextBytes((Span<byte>)_buffer);

JNPF迅速開発プラットフォーム

JNPF 迅速開発プラットフォームは、フロントエンドとバックエンドの分離技術を採用し、B/S アーキテクチャを採用して開発し、ワンストップ開発とマルチターミナル (APP + PC) の使用を形成します。http://www.jnpfsoft.com/?from=CSDNm テスト

JNPF迅速開発プラットフォームは、フロントエンドとバックエンドの分離技術を採用し、開発にB/Sアーキテクチャを採用し、ワンストップ開発とマルチターミナル(APP + PC)の使用を形成し、統一された権限管理、柔軟なインターフェイス呼び出し、ドラッグアンドドロップによるプロセス構築など業界トップクラスの研究開発技術体制。

フレームコンポーネント

  • ロンボク島 1.18.8

  • Slf4j 1.7.28

  • レディス 3.2.1

  • Apache Commons言語 3 3.7

  • Apache Commons io 2.5

  • Apache Commons プール2 2.6.2

  • オブジェクト/JSON シリアル化: Jackson 2.9.6

  • テンプレートエンジン: ベロシティ 2.0

  • ドキュメンテーションツール: easypoi 4.0.0

  • タスクのスケジューリング: Quartz 2.3.1

  • PDF:itextpdf 5.5.6

  • Spring Boot クイック スタート: spring-boot-starter 2.1.8.RELEASE

  • im: スプリングブートスターターウェブソケット 2.1.8.RELEASE

  • AOP: スプリングブートスターター-AOP 2.1.8.RELEASE

  • 電子メール: spring-boot-starter-mail 2.1.8.RELEASE

  • WeChat: weixin-java-miniapp 3.3.0

  • 携帯電話プッシュ: gexin-rp-sdk-http 4.1.1.3

  • サムネール: サムネレーター 0.4.8

  • 列挙クラス: カーネルモデル 2.1.7

  • QRコード: com.google.zxing-core 3.3.0

  • ピンインを取得: pinyin4j 2.5.0

  • MySQL : mysql-connector-java 8.0.11

  • SQLサーバー:sqljdbc 4 4.0

  • オラクル: ojdbc6 11.2.0

private byte[] _data;

[GlobalSetup]
public void Setup()
{
    _data = new byte[64];
    RandomNumberGenerator.Fill(_data);
}

[Benchmark]
public string ToHexString() => Convert.ToHexString(_data);
[Params(1, 4096)]
public int BufferSize { get; set; }

[GlobalSetup]
public void Setup()
{
    byte[] data = new byte[10_000_000];
    new Random(42).NextBytes(data);

    string path = Path.GetTempFileName();
    File.WriteAllBytes(path, data);

    _fileStream = new FileStream(path, FileMode.Open, FileAccess.Read, FileShare.Read, BufferSize, IsAsync);
}

[GlobalCleanup]
public void Cleanup()
{
    _fileStream.Dispose();
    File.Delete(_fileStream.Name);
}

おすすめ

転載: blog.csdn.net/ohpppp/article/details/130891850