﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-我爱JAVA-随笔分类-J2EE</title><link>http://www.blogjava.net/flustar/category/18560.html</link><description /><language>zh-cn</language><lastBuildDate>Fri, 02 Mar 2007 06:33:52 GMT</lastBuildDate><pubDate>Fri, 02 Mar 2007 06:33:52 GMT</pubDate><ttl>60</ttl><item><title>用java实现彩色验证码</title><link>http://www.blogjava.net/flustar/archive/2006/12/20/89043.html</link><dc:creator>flustar</dc:creator><author>flustar</author><pubDate>Wed, 20 Dec 2006 07:06:00 GMT</pubDate><guid>http://www.blogjava.net/flustar/archive/2006/12/20/89043.html</guid><wfw:comment>http://www.blogjava.net/flustar/comments/89043.html</wfw:comment><comments>http://www.blogjava.net/flustar/archive/2006/12/20/89043.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/flustar/comments/commentRss/89043.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/flustar/services/trackbacks/89043.html</trackback:ping><description><![CDATA[
		<p>
				<font color="#000000">&lt;%@ page language="java" contentType="image/jpeg"<br />    pageEncoding="gb2312"%<strong>&gt;</strong><br />&lt;%@ page import="java.awt.*,java.awt.image.*,java.util.*,javax.imageio.*"%&gt; </font>
		</p>
		<p>
				<font color="#000000">&lt;%!<br />   Color getRandColor(int fc,int bc){<br /> Random rand=new Random();<br /> if(fc&gt;255) fc=255;<br /> if(bc&gt;255) bc=255;<br /> int r=fc+rand.nextInt(bc-fc);<br /> int g=fc+rand.nextInt(bc-fc);<br /> int b=fc+rand.nextInt(bc-fc);<br /> return new Color(r,g,b);<br />}<br />%&gt; <br />&lt;%<br />  //设置页面不缓存<br />  response.setHeader("Pragma","No-cache");<br />  response.setHeader("Cache-Control","no-cache");<br />  response.setDateHeader("Expires",0);<br />  <br />  //在内存中创建图像<br />  int width=60,height=20;<br />  BufferedImage image=new BufferedImage(width,height,BufferedImage.TYPE_INT_BGR);<br />  <br />  //获取图像<br />  Graphics g=image.getGraphics();<br />  //生成随机类<br />  Random rand=new Random();<br />  //设定背景颜色<br />  g.setColor(getRandColor(200,250));<br />  g.fillRect(0,0,width,height);<br />  //设定字体<br />  g.setFont(new Font("Times New Roman",Font.PLAIN,18));<br />//随机产生155条干扰线，使图象中的认证码不易被其它程序探测到<br /> g.setColor(getRandColor(160,200));<br /> for(int i=0;i&lt;155;i++){<br />  int x=rand.nextInt(width);<br />  int y=rand.nextInt(height);<br />  int x1=rand.nextInt(12);<br />  int y1=rand.nextInt(12);<br />  g.drawLine(x,y,x+x1,y+y1);<br />  <br /> }<br /> //取随机产生的4位验证码<br /> String sRand="";<br /> for(int i=0;i&lt;4;i++){<br />  String strRand=String.valueOf(rand.nextInt(10));<br />  sRand+=strRand;<br />  //将验证码显示到图像中<br />  g.setColor(new Color(20+rand.nextInt(110),20+rand.nextInt(110),20+rand.nextInt(110)));<br />  g.drawString(strRand,13*i+6,16); </font>
		</p>
		<p>
				<font color="#000000"> }<br /> //将验证码放入session<br />  session.setAttribute("rand",sRand);<br /> <br /> g.dispose();<br />//输出图象到页面<br /> ImageIO.write(image, "JPEG", response.getOutputStream()); </font>
		</p>
		<p>
				<font color="#000000">
				</font> </p>
		<p>
				<font color="#000000">%&gt; </font>
		</p>
<img src ="http://www.blogjava.net/flustar/aggbug/89043.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/flustar/" target="_blank">flustar</a> 2006-12-20 15:06 <a href="http://www.blogjava.net/flustar/archive/2006/12/20/89043.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>用JSP实现下拉列表框三级联动效果</title><link>http://www.blogjava.net/flustar/archive/2006/12/20/89041.html</link><dc:creator>flustar</dc:creator><author>flustar</author><pubDate>Wed, 20 Dec 2006 07:03:00 GMT</pubDate><guid>http://www.blogjava.net/flustar/archive/2006/12/20/89041.html</guid><wfw:comment>http://www.blogjava.net/flustar/comments/89041.html</wfw:comment><comments>http://www.blogjava.net/flustar/archive/2006/12/20/89041.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/flustar/comments/commentRss/89041.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/flustar/services/trackbacks/89041.html</trackback:ping><description><![CDATA[
		<p>一、在数据库数据库中建立三个表<br />1.city<br />字段：<br />districtname，locationid，districtid<br />2.province<br />字段：<br />locationid，locationname<br />3.village<br />字段：<br />villageid,villagename,districtid<br />二、代码如下：<br />&lt;%@ page language="java" contentType="text/html; charset=gb2312"<br />    pageEncoding="gb2312"%&gt;<br />&lt;%@ page import="java.sql.* "%&gt;<br />&lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt;<br />&lt;html&gt;<br />&lt;head&gt;<br />&lt;meta http-equiv="Content-Type" content="text/html; charset=gb2312"&gt;<br />&lt;title&gt;jsp实现三级联动的下拉列表框效果&lt;/title&gt;<br />&lt;%<br />   Connection conn=null;<br />   Statement stmt=null;<br />   ResultSet rs=null,rs1=null,rs2=null;<br />   String sql;<br />   int count;<br />   int count2;<br />   String drivername="com.microsoft.jdbc.sqlserver.SQLServerDriver";<br />   String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=SJLD";<br />   try{<br />    Class.forName(drivername);<br />    conn=DriverManager.getConnection(url,"sa","");<br />    stmt=conn.createStatement（）;<br />    sql="select * from city order by locationid asc";<br />    rs=stmt.executeQuery(sql);<br />   }catch(SQLException e){<br />    System.out.println(e.getMessage());<br />   }<br />   <br />%&gt;<br />&lt;script language="javascript"&gt;<br />var onecount;<br />onecount=0;<br />subcat=new Array();<br />&lt;%<br />count=0;<br />while(rs.next()){<br /> %&gt;<br /> subcat[&lt;%=count%&gt;]=new Array("&lt;%=rs.getString("districtname")%&gt;","&lt;%=rs.getInt("locationid")%&gt;","&lt;%=rs.getInt("districtid")%&gt;");<br /> &lt;%<br /> count = count + 1 ; </p>
		<p>}<br />rs.close();<br />rs=null;<br />%&gt;<br />onecount=&lt;%=count%&gt;;<br />function changelocation(locationid){<br />document.myform.smalllocation.length=0;<br />var locationid=locationid;<br />var i;<br />document.myform.smalllocation.options[0]=new Option('==所选城市的地区==',''); <br />for(i=0;i&lt;onecount;i++){<br />if (subcat[i][1] == locationid) <br />{ <br />document.myform.smalllocation.options[document.myform.smalllocation.length] = new Option(subcat[i][0], subcat[i][2]); <br />} <br />} </p>
		<p>   <br />}<br />&lt;/script&gt;<br />&lt;%<br /> sql="select * from village order by districtid asc";<br /> rs2=stmt.executeQuery(sql);<br />%&gt;<br />&lt;script language="javascript"&gt;<br />var onecount2;<br />onecount2=0;<br />subcat2=new Array();<br />&lt;%<br />count2=0;<br />while(rs2.next()){<br /> %&gt;<br /> subcat2[&lt;%=count2%&gt;]=new Array("&lt;%=rs2.getString("villagename")%&gt;","&lt;%=rs2.getInt("districtid")%&gt;","&lt;%=rs2.getInt("villageid")%&gt;");<br /> &lt;%<br /> count2 = count2 + 1 ; </p>
		<p>}<br />rs2.close();<br />rs2=null;<br />%&gt;<br />onecount2=&lt;%=count2%&gt;;<br />function changelocation2(districtid) <br />{ <br />document.myform.village.length = 0; </p>
		<p>var districtid=districtid; <br />var j; <br />document.myform.village.options[0] = new Option('==所选地区的县区==',''); <br />for (j=0;j &lt; onecount2; j++) <br />{ <br />  if (subcat2[j][1] == districtid) <br /> { <br />  document.myform.village.options[document.myform.village.length] = new Option(subcat2[j][0], subcat2[j][2]); <br />  } <br />} </p>
		<p>} <br />&lt;/script&gt; </p>
		<p>&lt;/head&gt;<br />&lt;body&gt;<br />&lt;form name="myform" method="post"&gt; <br />分类：&lt;select name="biglocation" onChange="changelocation(document.myform.biglocation.options[document.myform.biglocation.selectedIndex].value)" size="1"&gt; <br />&lt;option selected&gt;请选择你所在的省份&lt;/option&gt; <br />&lt;% <br />  sql ="select * from province order by locationname asc";<br /> rs1 = stmt.executeQuery(sql);<br /> while(rs1.next()){<br /> %&gt; <br /> &lt;option value="&lt;%=rs1.getInt("locationid")%&gt;"&gt;&lt;%=rs1.getString("locationname")%&gt;&lt;/option&gt; </p>
		<p> &lt;% }<br /> <br /> <br /> rs1.close(); <br /> rs1 = null; <br /> conn.close();<br /> conn =null; </p>
		<p>
				<br />%&gt; <br />&lt;/select&gt;&lt;select name="smalllocation" onChange="changelocation2(document.myform.smalllocation.options[document.myform.smalllocation.selectedIndex].value)"&gt; <br />&lt;option selected value=""&gt;==所有地区==&lt;/option&gt; <br />&lt;/select&gt;&lt;select name="village" size="1"&gt; <br />&lt;option selected&gt;==所有县区==&lt;/option&gt; <br />&lt;/select&gt; <br />&lt;/form&gt; </p>
		<p>&lt;/body&gt;<br />&lt;/html&gt;<br /></p>
<img src ="http://www.blogjava.net/flustar/aggbug/89041.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/flustar/" target="_blank">flustar</a> 2006-12-20 15:03 <a href="http://www.blogjava.net/flustar/archive/2006/12/20/89041.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>