私は現在、私が設計したい大量のコードを持っているプログラムを持っています。このコードは、多数のテキストファイルを受け取り、それを興味深い方法で記述されたインタープリターに渡して、他のシステムに渡されるプレーンテキストファイルレポートを生成します。理論的には、これにより、プログラマーでなくても、Javaとインタープリターの内部動作を理解していなくてもレポートを変更できます。実際には、小さな変更を加えると、インタプリタを調べて微調整する必要が生じる可能性があります(ドメイン固有言語は、他のプログラマーにとっても完全に友好的ではありません)。
このコードを再設計したいと思います。主にWebプログラマーとして、「プログラマー以外の人がレポートを変更できる...」と考えたときに最初に頭に浮かんだのは、レポートをWebページに置き換えて、「ああ、ハァッ!Jsp」と自分に言い聞かせたことです。これは、ぎこちなく書かれたDSLステートメントではなく、taglibsとjavaスクリプトレット(後でそうなる可能性があるので望ましくない)とともに、人々にとってあなたが見るものはほとんどあなたが得るものであるという素晴らしいアプローチを私に与えるでしょう。
jspをjavaにコンパイルするために使用することは可能ですがjspc
(アプリケーションの別の部分はjbossサーバーでejbsを実行するため、jspc
それほど遠くありません)、使用するボイラープレートコードは、出力をページコンテキストにフックしようとします。 servletcontext。これには、コードをだましてWebコンテナー内で実行されていると思い込ませ(不可能ではありませんが、クルーゲ)、ヘッダーを削除する必要があります。
テキストファイルへの印刷に使用できるJava用の別のテンプレートアプローチ(またはライブラリ)はありますか?私がこれまで見てきたものはすべて、Web用に最適化されているか、特定のアプリケーションサーバーに緊密に結合されている(そしてWeb作業用に設計されている)ようです。