锘??xml version="1.0" encoding="utf-8" standalone="yes"?>
涓嬭澆 jspSmartUpload.jar 騫惰В鍘嬫斁鍏?br />涓句緥璺緞E:\WEB-INF\classes\鐨勪笅闈?/font>
涔熷彲浠?br />聽(tīng)灝唈ar鍖呭鍒跺埌銆\WEB-INF\lib銆
鐩綍鍚庨噸鍚湇鍔″櫒錛宩spsmart鍗沖彲姝e父浣跨敤浜?br />1.upload.jsp
<%@ page聽(tīng)
language="java"
contentType="text/html;charset=gb2312"
import = "java.util.*"
import = "java.sql.*"
import = "java.text.*"聽(tīng)
import = "java.io.*"
%>
<form action="uploadimage.jsp" method="post" enctype="multipart/form-data" name="form">
聽(tīng)璇烽夋嫨涓婁紶鐨勫浘鐗?br /><input type="file" name="file">
<input type="submit" name="Submit" value="涓婁紶">
</form>
2.uploadimage.jsp
<%@ page
language="java"
contentType="text/html;charset=gb2312"
import="java.io.*"
import="java.awt.Image"
import="java.awt.image.*"
import="com.sun.image.codec.jpeg.*"
import="java.sql.*"
import="com.jspsmart.upload.*"
import="java.util.*"
%>
<%
try{
聽(tīng)聽(tīng)聽(tīng) com.jspsmart.upload.File myFile = mySmartUpload.getFiles().getFile(0);
聽(tīng)聽(tīng)聽(tīng) if (myFile.isMissing()){%>
聽(tīng)聽(tīng) <SCRIPT language=javascript>
聽(tīng)聽(tīng) alert("璇峰厛閫夋嫨瑕佷笂浼犵殑鏂囦歡");
聽(tīng)聽(tīng) window.location='upload.jsp';
聽(tīng)聽(tīng) </script>
聽(tīng)聽(tīng)聽(tīng) <%}
聽(tīng)聽(tīng)聽(tīng) else{
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //String myFileName=myFile.getFileName(); //鍙栧緱涓婅澆鐨勬枃浠剁殑鏂囦歡鍚?br />聽(tīng)聽(tīng) ext= myFile.getFileExt();聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //鍙栧緱鍚庣紑鍚?br />聽(tīng)聽(tīng) int file_size=myFile.getSize();聽(tīng)聽(tīng)聽(tīng)聽(tīng) //鍙栧緱鏂囦歡鐨勫ぇ灝徛?
聽(tīng)聽(tīng) double pic_size=file_size;
聽(tīng)聽(tīng) String saveurl="";
聽(tīng)聽(tīng) if(file_size<file_size_max){
聽(tīng)聽(tīng)聽(tīng) //鏇存敼鏂囦歡鍚嶏紝鍙栧緱褰撳墠涓婁紶鏃墮棿鐨勬縐掓暟鍊?br />聽(tīng)聽(tīng)聽(tīng) Calendar calendar = Calendar.getInstance();
聽(tīng)聽(tīng)聽(tīng) String filename = String.valueOf(calendar.getTimeInMillis());
聽(tīng)聽(tīng)聽(tīng) saveurl=request.getRealPath("/")+purl;
聽(tīng)聽(tīng)聽(tīng) saveurl+=filename+"."+ext;聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //淇濆瓨璺緞
聽(tīng)聽(tīng)聽(tīng) myFile.saveAs(saveurl,mySmartUpload.SAVE_PHYSICAL);
聽(tīng)聽(tīng)聽(tīng) //out.print(filename);
//-----------------------涓婁紶瀹屾垚錛屽紑濮嬬敓鎴愮緝鐣ュ浘-------------------------聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) java.io.File file = new java.io.File(saveurl);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //璇誨叆鍒氭墠涓婁紶鐨勬枃浠?br />聽(tīng)聽(tīng)聽(tīng) String newurl=request.getRealPath("/")+url+filename+"_min."+ext;聽(tīng) //鏂扮殑緙╃暐鍥句繚瀛樺湴鍧
聽(tīng)聽(tīng)聽(tīng) Image src = javax.imageio.ImageIO.read(file);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //鏋勯營(yíng)mage瀵硅薄
聽(tīng)聽(tīng)聽(tīng) float tagsize=200;
聽(tīng)聽(tīng)聽(tīng) int old_w=src.getWidth(null);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //寰楀埌婧愬浘瀹?br />聽(tīng)聽(tīng)聽(tīng) int old_h=src.getHeight(null);聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) int new_w=0;
聽(tīng)聽(tīng)聽(tīng) int new_h=0;聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //寰楀埌婧愬浘闀?br />聽(tīng)聽(tīng)聽(tīng) int tempsize;
聽(tīng)聽(tīng)聽(tīng) float tempdouble;
聽(tīng)聽(tīng)聽(tīng) if(old_w>old_h){
聽(tīng)聽(tīng)聽(tīng)聽(tīng) tempdouble=old_w/tagsize;
聽(tīng)聽(tīng)聽(tīng) }else{
聽(tīng)聽(tīng)聽(tīng)聽(tīng) tempdouble=old_h/tagsize;
聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng) new_w=Math.round(old_w/tempdouble);
聽(tīng)聽(tīng)聽(tīng) new_h=Math.round(old_h/tempdouble);//璁$畻鏂板浘闀垮
聽(tīng)聽(tīng)聽(tīng) BufferedImage tag = new BufferedImage(new_w,new_h,BufferedImage.TYPE_INT_RGB);
聽(tīng)聽(tīng)聽(tīng) tag.getGraphics().drawImage(src,0,0,new_w,new_h,null);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //緇樺埗緙╁皬鍚庣殑鍥?br />聽(tīng)聽(tīng)聽(tīng) FileOutputStream newimage=new FileOutputStream(newurl);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //杈撳嚭鍒版枃浠舵祦
聽(tīng)聽(tīng)聽(tīng) JPEGImageEncoder encoder = JPEGCodec.createJPEGEncoder(newimage);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) encoder.encode(tag);聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) //榪慗PEG緙栫爜
聽(tīng)聽(tīng)聽(tīng)聽(tīng) newimage.close();聽(tīng)聽(tīng)聽(tīng)
//-------------鐢熸垚緙╃暐鍥懼畬姣曪紙濡傛灉涓嶉渶瑕佸彲鍒犻櫎榪欐錛?--------------
聽(tīng)}
聽(tīng)聽(tīng) else{
聽(tīng)聽(tīng)聽(tīng) out.print("<SCRIPT language='javascript'>");
聽(tīng)聽(tīng)聽(tīng) out.print("alert('涓婁紶鏂囦歡澶у皬涓嶈兘瓚呰繃"+(file_size_max/1000)+"K');");
聽(tīng)聽(tīng)聽(tīng) out.print("window.location='upload.jsp;'");
聽(tīng)聽(tīng)聽(tīng) out.print("</SCRIPT>");
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 聽(tīng) }
聽(tīng) }
}catch (Exception e){
e.toString();
}
%>聽(tīng)
聽(tīng)聽(tīng)聽(tīng)
// 鍦ㄥ唴瀛樹(shù)腑鍒涘緩鍥捐薄
int width=60, height=20;
BufferedImage image = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB);
// 鑾峰彇鍥懼艦涓婁笅鏂?br />Graphics g = image.getGraphics();
//鐢熸垚闅忔満綾?br />Random random = new Random();
// 璁懼畾鑳屾櫙鑹?br />g.setColor(getRandColor(200,250));
g.fillRect(0, 0, width, height);
//璁懼畾瀛椾綋
g.setFont(new Font("Times New Roman",Font.PLAIN,18));
//鐢昏竟妗?br />//g.setColor(new Color());
//g.drawRect(0,0,width-1,height-1);
// 闅忔満浜х敓155鏉″共鎵扮嚎錛屼嬌鍥捐薄涓殑璁よ瘉鐮佷笉鏄撹鍏跺畠紼嬪簭鎺㈡祴鍒?br />g.setColor(getRandColor(160,200));
for (int i=0;i<155;i++)
{
聽(tīng)int x = random.nextInt(width);
聽(tīng)int y = random.nextInt(height);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) int xl = random.nextInt(12);
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) int yl = random.nextInt(12);
聽(tīng)g.drawLine(x,y,x+xl,y+yl);
}
// 鍙栭殢鏈轟駭鐢熺殑璁よ瘉鐮?4浣嶆暟瀛?
String sRand="";
for (int i=0;i<4;i++){
聽(tīng)聽(tīng)聽(tīng) String rand=String.valueOf(random.nextInt(10));
聽(tīng)聽(tīng)聽(tīng) sRand+=rand;
聽(tīng)聽(tīng)聽(tīng) // 灝嗚璇佺爜鏄劇ず鍒板浘璞′腑
聽(tīng)聽(tīng)聽(tīng) g.setColor(new Color(20+random.nextInt(110),20+random.nextInt(110),20+random.nextInt(110)));//璋冪敤鍑芥暟鍑烘潵鐨勯鑹茬浉鍚岋紝鍙兘鏄洜涓虹瀛愬お鎺ヨ繎錛屾墍浠ュ彧鑳界洿鎺ョ敓鎴?br />聽(tīng)聽(tīng)聽(tīng) g.drawString(rand,13*i+6,16);
}
// 灝嗚璇佺爜瀛樺叆SESSION
session.setAttribute("rand",sRand);
// 鍥捐薄鐢熸晥
g.dispose();
// 杈撳嚭鍥捐薄鍒伴〉闈?br />ImageIO.write(image, "JPEG", response.getOutputStream());
%>
//璋冪敤欏甸潰
2.Test.jsp
<form name="form" method="post" action="Pass.jsp">
<input聽(tīng) name=rand type=text id="rand"聽(tīng) size="6" maxlength="4">
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) <img src="image.jsp" width="60" height="20">
<input name="ok" type="submit" value=" 娉?鍐?">
</form>
//楠岃瘉欏甸潰
3.Pass.jsp
<%@ page聽(tīng)
language="java"
contentType="text/html;charset=gb2312"
import = "java.util.*"
import = "java.sql.*"
import = "java.text.*"聽(tīng)
import = "java.io.*"
%>
聽(tīng)<%request.setCharacterEncoding("gb2312");%>
<%String rand = (String)session.getAttribute("rand");
聽(tīng)聽(tīng)聽(tīng)聽(tīng) String input = request.getParameter("rand");
聽(tīng)聽(tīng)if (rand.equals(input))聽(tīng){
聽(tīng)聽(tīng) out.println("ok!");
聽(tīng) }else{
out.println("wrong!");
}
%>
聽(tīng)
1.email.htm
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>鎾板啓閭歡</title>
</head>
<body>
<form name="form1" method="post" action="send.jsp">
<table width="75" border="0" align="center" cellspacing="1" bgcolor="#006600" class="black">
<tr bgcolor="#FFFFFF">
<td width="24%">鏀朵俊浜哄湴鍧:</td>
<td width="76%">
<input name="to" type="text" id="to"></td>
</tr>
<tr bgcolor="#FFFFFF">
<td>涓婚:</td>
<td>
<input name="title" type="text" id="title"></td>
</tr>
<tr>
<td height="107" colspan="2" bgcolor="#FFFFFF">
<textarea name="content" cols="50" rows="5" id="content"></textarea></td>
</tr>
<tr align="center">
<td colspan="2" bgcolor="#FFFFFF">
<input type="submit" name="Submit" value="鍙戦?>
<input type="reset" name="Submit2" value="閲嶇疆">
</td>
</tr>
</table>
</form>
</body>
</html>
2.send.jsp
<%@ page contentType="text/html;charset=GB2312" %>
<%request.setCharacterEncoding("gb2312");%>
<%@ page import="java.util.*,javax.mail.*"%>
<%@ page import="javax.mail.internet.*"%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>鍙戦佹垚鍔?lt;/title>
</head>
<body>
<%
try{
String tto=request.getParameter("to");
String ttitle=request.getParameter("title");
String tcontent=request.getParameter("content");
Properties props=new Properties();
props.put("mail.smtp.host","smtp.163.com");//鍙戜歡浜轟嬌鐢ㄥ彂閭歡鐨勭數(shù)瀛愪俊綆辨湇鍔″櫒
props.put("mail.smtp.auth","true"); //榪欐牱鎵嶈兘閫氳繃楠岃瘉
Session s=Session.getInstance(props);
s.setDebug(true);
MimeMessage message=new MimeMessage(s);
//緇欐秷鎭璞¤緗彂浠朵漢/鏀朵歡浜?涓婚/鍙戜俊鏃墮棿
InternetAddress from=new InternetAddress("litianyi520@163.com");聽(tīng) //鍙戦偖浠剁殑鍑哄彂鍦幫紙鍙戜歡浜虹殑淇$錛?br />message.setFrom(from);
InternetAddress to=new InternetAddress(tto);//鍙戦偖浠剁殑鐩殑鍦幫紙鏀朵歡浜轟俊綆憋級(jí)
message.setRecipient(Message.RecipientType.TO,to);
message.setSubject(ttitle);
message.setSentDate(new Date());
//緇欐秷鎭璞¤緗唴瀹?br />BodyPart mdp=new MimeBodyPart();//鏂板緩涓涓瓨鏀句俊浠跺唴瀹圭殑BodyPart瀵硅薄
mdp.setContent(tcontent,"text/html;charset=gb2312");//緇橞odyPart瀵硅薄璁劇疆鍐呭鍜屾牸寮?緙栫爜鏂瑰紡
Multipart mm=new MimeMultipart();//鏂板緩涓涓狹imeMultipart瀵硅薄鐢ㄦ潵瀛樻斁BodyPart瀵?br />//璞?浜嬪疄涓婂彲浠ュ瓨鏀懼涓?
mm.addBodyPart(mdp);//灝咮odyPart鍔犲叆鍒癕imeMultipart瀵硅薄涓?鍙互鍔犲叆澶氫釜BodyPart)
message.setContent(mm);//鎶妋m浣滀負(fù)娑堟伅瀵硅薄鐨勫唴瀹?/p>
message.saveChanges();
Transport transport=s.getTransport("smtp");
transport.connect("smtp.163.com","username","password");//鍙戦偖浠朵漢甯愭埛瀵嗙爜
transport.sendMessage(message,message.getAllRecipients());
transport.close();
%>
<div align="center">
<p><font color="#FF6600">鍙戦佹垚鍔?</font></p>
</div>
<%
}catch(MessagingException e){
out.println(e.toString());
}
%>
</body>
</html>
//寰楀埌鍙戣〃鐨勬枃绔犳繪暟
聽(tīng)String sql3="select count(*) from msg";
聽(tīng) ResultSet rs3=RegisterBean.executeQuery(sql3);
聽(tīng) rs3.next();
聽(tīng) RowCount =rs3.getInt(1);
聽(tīng) PageCount = (RowCount+PageSize-1)/PageSize;聽(tīng) //璁扮畻鎬婚〉鏁?
聽(tīng) if(Page>PageCount) Page = PageCount; 聽(tīng)//璋冩暣寰呮樉紺虹殑欏電爜
聽(tīng) //璁劇疆鑾峰彇鏁版嵁SQL璇彞
聽(tīng)String sql4="select title,msgid from msg";
聽(tīng) ResultSet rs4=RegisterBean.executeQuery(sql4);聽(tīng) //鎴戠敤鐨凧AVABEAN,涓嶇敤澶氳浜?jiǎn)鍚?br />聽(tīng)聽(tīng) i = (Page-1) * PageSize; 聽(tīng)//灝嗚褰曟寚閽堝畾浣嶅埌寰呮樉紺洪〉鐨勭涓鏉¤褰曚笂
聽(tīng) for(j=0;j<i;j++) rs4.next();
聽(tīng) i = 0;
聽(tīng) //鍒嗛〉鏄劇ず錛屾瘡欏典簲鏉℃枃绔犱俊鎭?br />聽(tīng) while(i<PageSize && rs4.next()){
聽(tīng)聽(tīng) String title=rs4.getString("title");
聽(tīng)聽(tīng) //String categoryname=rs4.getString("categoryname");
聽(tīng)聽(tīng) int msgid=rs4.getInt("msgid");
%>
<%=title%><br>
<% i++; } %>
<a href="a.jsp?page=1">棣栭〉</a>
鍏?lt;%=RowCount%>鏉′俊鎭?br /><%=Page%>/<%=PageCount%>欏?
<%if(Page>1)
{
%>
<a href="a.jsp?page=<%=Page-1%>">涓婁竴欏?lt;/a>
<%}%>聽(tīng)
<%if(Page<PageCount)
{%>
<a href="a.jsp?page=<%=Page+1%>">涓嬩竴欏?lt;/a>
<%}%>聽(tīng)
<a href="a.jsp?page=<%=PageCount%>">灝鵑〉</a>
<% rs4.close();%>
聽(tīng)聽(tīng)聽(tīng) var id=id;
聽(tīng)
聽(tīng)聽(tīng)聽(tīng) var i;//濡傛灉i浠?寰幆閭d箞璁板綍涓1琛岀殑淇℃伅灝辯湅涓嶅埌浜?br />聽(tīng)聽(tīng)聽(tīng) for (i=0;i<onecount; i++)聽(tīng) //浠庢暟緇勭殑絎?琛岀畻璧?鏌ユ壘id ,榪欓噷鐨刬d鏄綘澶х被鐨刬d(涓嬮潰鏈夋垜鐨勬暟緇勪緥瀛?
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) if (subcat[i][2] ==id)聽(tīng) //絎竴嬈″驚鐜粠絎?琛?絎?鍒?閭?鍒楁槸澶х被ID
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) {
聽(tīng)聽(tīng)聽(tīng)document.myform.classid.options[document.myform.classid.length] = new Option(subcat[i][1], subcat[i][0]); //瀵煎嚭鏁扮粍,瀵煎嚭灝忕被鍚嶇О鍜屽皬綾籌D
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) }
聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)
聽(tīng)聽(tīng)聽(tīng) }聽(tīng)聽(tīng)聽(tīng)
</script>
<form聽(tīng) name="myform" method="post" action="#">
<select name="categoryid"聽(tīng) style="font-size:14px; width:100px;"聽(tīng) size="8" onChange="changelocation(document.myform.categoryid.options[document.myform.categoryid.selectedIndex].value);">
<%
String sql1="select * from category ";
ResultSet rs1=RegisterBean.executeQuery(sql1);
while(rs1.next())
{
%>聽(tīng)
<option value="<%=rs1.getInt(1)%>"><%=rs1.getString(2)%></option>
<%
}
rs1.close();
%>
</select>
<select name="classid" style="font-size:14px;width:100px" size="8">
</select>
渚嬪瓙
0聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 1聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 2
chassid聽(tīng)聽(tīng) classname聽(tīng)聽(tīng) categoryid
灝忕被ID聽(tīng)聽(tīng)聽(tīng) 灝忕被鍚嶅瓧聽(tīng)聽(tīng)聽(tīng)聽(tīng)聽(tīng) 澶х被ID
聽(tīng)澶囨敞:聽(tīng)鎼炴竻鍑簀avascript濡備綍瀹炵幇寰堥噸瑕?br />