web.xml 我也配置了,但是 上网看了很多代码,就是没看懂如何能靠servlet的方法 获得后台的图像,在前台jsp中该写什么东西啊?在线坐等高手!
public class ChartDemoServlet extends HttpServlet {
public void service(ServletRequest req, ServletResponse res)
throws ServletException, IOException
{
res.setContentType("image/jpeg");
DefaultPieDataset data = getDataSet();
JFreeChart chart = ChartFactory.createPieChart3D(
"水果产量图",
data,
true,
false,
false
);
ChartUtilities.writeChartAsJPEG(res.getOutputStream(),
100,chart,400,300,null);
}
/**
* 获取一个演示用的简单数据集对象
* @return
*/
private static DefaultPieDataset getDataSet() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("苹果",100);
dataset.setValue("梨子",200);
dataset.setValue("葡萄",300);
dataset.setValue("香蕉",400);
dataset.setValue("荔枝",500);
return dataset;
}
}
public class ChartDemoServlet extends HttpServlet {
public void service(ServletRequest req, ServletResponse res)
throws ServletException, IOException
{
res.setContentType("image/jpeg");
DefaultPieDataset data = getDataSet();
JFreeChart chart = ChartFactory.createPieChart3D(
"水果产量图",
data,
true,
false,
false
);
ChartUtilities.writeChartAsJPEG(res.getOutputStream(),
100,chart,400,300,null);
}
/**
* 获取一个演示用的简单数据集对象
* @return
*/
private static DefaultPieDataset getDataSet() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("苹果",100);
dataset.setValue("梨子",200);
dataset.setValue("葡萄",300);
dataset.setValue("香蕉",400);
dataset.setValue("荔枝",500);
return dataset;
}
}
100,chart,400,300,null);
quality must be in between 0.0f to 1.0f
package test;import java.awt.Font;
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.http.HttpServlet;import org.jfree.chart.ChartFactory;
import org.jfree.chart.ChartUtilities;
import org.jfree.chart.JFreeChart;
import org.jfree.chart.plot.PiePlot;
import org.jfree.data.general.DefaultPieDataset;public class ChartDemoServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
public void service(ServletRequest req, ServletResponse res)
throws ServletException, IOException
{
res.setContentType("image/jpeg");
DefaultPieDataset data = getDataSet();
JFreeChart chart = ChartFactory.createPieChart3D(
"水果产量图",
data,
true,
false,
false
);
chart.getTitle().setFont(new Font("黑体", Font.BOLD, 20));
PiePlot piePlot = (PiePlot) chart.getPlot();
piePlot.setLabelFont(new Font("宋体", Font.BOLD, 10));
chart.getLegend().setItemFont(new Font("宋体", Font.BOLD, 10)); ChartUtilities.writeChartAsJPEG(res.getOutputStream(),
0.5f,chart,400,300,null);
}
/**
* 获取一个演示用的简单数据集对象
* @return
*/
private static DefaultPieDataset getDataSet() {
DefaultPieDataset dataset = new DefaultPieDataset();
dataset.setValue("苹果",100);
dataset.setValue("梨子",200);
dataset.setValue("葡萄",300);
dataset.setValue("香蕉",400);
dataset.setValue("荔枝",500);
return dataset;
}
}完整代码
<div id="graph" style="float: center">
<form id="graphForm" action="generateStockGraph" style="float: center">
<h2>股票投资组合图</h2>
<img id="graphStockNames" src="" />
<script>
function show(){
var names="";
<%out.println(sb.toString()); %>
return names;
}
function createGraph(){
var names=show();
var graphStockNames=document.getElementById("graphStockNames");
graphStockNames.src="generateStockGraph.action?param="+names;
}
//show();
createGraph();
setInterval(show,10000);
</script>
</form>
</div>
function createGraph(){
var names=show();
var graphStockNames=document.getElementById("graphStockNames");
graphStockNames.src="generateStockGraph.action?param="+names;
}
例如还是我的代码<img src="cmd" width="300" height="300" />
你说的是这个吗?jsp最后还是编译成servlet运行的,只是jsp比servlet更容易编辑html代码而已。servlet是以图片的形式输出的,因此就把它看做一个图片,用img 标签去调用就好。
servlet就是java
就这么回事