0

JSTLで、ユーザーがいくつかの数値を入力する更新ページを作成しています。次に、Java Beanを呼び出し、数値をパラメーターとして渡します。これにより、JFreeChartを使用してPNG画像が作成されます。を使用してファイルをハードドライブに直接保存すると、これらすべてが正常に機能します

ImageIO.write(myBufferedImage、 "png"、new File( "C:/testChart.png"));

また、画像をTomcatディレクトリに保存して、ローカルホストでWebサイトを実行しているときに表示することもできます。ただし、このコードがローカルホストではないサーバーで起動されると、tomcatディレクトリへの保存は機能しません。このファイルをサーバーに直接書き込むにはどうすればよいですか。たとえば、EclipseプロジェクトのWebContentフォルダー(Java Beanはsrcフォルダーにあります)に書き込みますか?助けてくれてありがとう。

4

2 に答える 2

1

ServletUtilitiesクラスを使用することをお勧めします。Java tempdir に保存し、セッションが無効になるとクリーンアップします。:) ファイルを表示するためのもう 1 つのヒントは、DisplayChart サーブレットを使用して画像を取得することです。これは web.xml に入ります

      <servlet>
    <servlet-name>DisplayChart</servlet-name>
    <servlet-class>org.jfree.chart.servlet.DisplayChart</servlet-class>
  </servlet>
   <servlet-mapping>
        <servlet-name>DisplayChart</servlet-name>
        <url-pattern>/servlet/DisplayChart</url-pattern>
    </servlet-mapping>

次に、jstl を使用して画像を表示する方法を示します。

<img src="<c:url value='/servlet/DisplayChart?'><c:param name='filename' value='${yourFileNameHERE}' /></c:url>" alt=""/>
于 2009-09-22T22:25:39.753 に答える
0

System.getProperty("java.io.tmpdir");から返されたディレクトリ パスに書き込みます。

于 2009-08-28T15:27:12.793 に答える