struts2(8)------图形验证码

struts2(8)

1、图形验证码


所有颜色都有一个取值范围:   0-255

值越小,颜色越深,值越大颜色越浅


token-------------令牌 (作用,防止表单重复提交)


























invalid.token









<actionerror/>


zh-cn  :   zh表示,语言编码  
   cn表示,区域编号

en-us  :  en---英语
          us---美国


国际化资源文件的格式:

文件名_语言编码_区域编码.properties

mess_zh_CN.properties
mess_en_US.properties

messages.invalid.token

<constant name="struts.custom.i18n.resources" value="com.ssh.i18n.mess"/>



包名+文件名




struts2中的图形报表----------------JFreeChart


主要作用:以图形化的方式来呈现数据
struts2利用JFreeChart实现饼图:

1、创建web工程
2、导入struts2的框架,以及四个jar
a、struts2-jfreeChart-plugin.jar
b、jcommon.jar
c、JFreeChart.jar
d、数据库连接驱动包
3、编写控制类器  ShwAction以及基类BaseAction
4、在基类中,声明属性:   protected  JFreeChart chart,并且生成get,set方法
5、在ShwAction类中,编写方法,生成饼图
6、编写一个实体类,提供数据(这一步本应该查询数据库)
a、编写一个方法,用于返回"饼图"需要的数据结构 DefaultPieDataset
b、实例化DefaultPieDataset dp= new DefaultPieDataset();
c、把数据装载到dp中   dp.setValue("华硕", 140);
7、在ShwAction中,实例化Data类,调用方法,得到需要显示的数据结构
a、调用Data类的方法,得到返回的DefaultPieDataset
b、调用ChartFactory.createPieChart()产生chart

chart = ChartFactory.createPieChart(五个参数);
8、在struts.xml进行导航配置

a、index.jsp发出生请求的时候,可以进入到ShwAction类中的方法
b、在struts.xml文件配置,配置一种数据类型,名称为chart

---------------------------------------------------------------------------------
解决乱码:
9、创建一个字体,支持中文----标题乱码

Font f1 = new Font("隶书",Font.Bold,40);
TextTitle t = new TextTitle("一季度销售报表",f1);
chart.setTitle(t);
10、 //解决颜色说明中的乱码
LegendTitle lt = chart.getLegend();//得到颜色说明区域
Font f2 = new Font("隶书",Font.BOLD,20);
lt.setItemFont(f2);//设置这个区域中的字体格式

11、//解决饼图中乱码
PiePlot pie = (PiePlot) chart.getPlot();//得到图表中的饼图
pie.setLabelFont(f2);

12、 // 把数据显示在饼图中--设置显示的格式
StandardPieSectionLabelGenerator sp = 
new StandardPieSectionLabelGenerator("{0} {1}万元  {2}");
pie.setLabelGenerator(sp);//设置饼图中,显示哪些数据

调用方式:
<img alt="" οnclick="over(this)" οndblclick="out(this)"
src="shw!showPie.action" width="100px" height="80px" />


-------------------------------------------------------------------------------

在Data类中,编写条形图(柱状图)的数据结构



public DefaultCategoryDataset  getBar(){
DefaultCategoryDataset dc = new DefaultCategoryDataset();
dc.addValue(123,"Lenovo", "一月份");

return dc;

}

1 DefaultCategoryDataset dc = data.getBar();//取得数据

2 chart = ChartFactory.createBarChart("上半年销售情况",
          "月份","销售金额",dc, PlotOrientation.VERTICAL, true,false,false);





































  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值