Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Java Mail·¢ËÍ´øÓÐͼƬµÄhtml¸ñʽµÄÓʼþ

 Java Mail·¢ËÍ´øÓÐͼƬµÄhtml¸ñʽµÄÓʼþ£¬Õë¶ÔÓÚÏÔʾͼƬ£¬Ò»°ãÓÐÁ½ÖÖ·½·¨¡£
1. ͼƬ´æÔÚÓÚ·þÎñÆ÷ÉÏ£¬ÎÒÃÇÖ»ÐèÒª°ÑͼƬÔÚ·þÎñÆ÷µÄµÄÁ´½Ó·Å½øÈ¥¼´¿É¡£
ÕâÖÖ·¢Ê½±È½Ï¼òµ¥£¬µ«ÊÇÕâÖÖ·½·¨ÓÐЩȱÏÝ£º
ͼƬ²»Ö§³ÖÀëÏßä¯ÀÀ£»
ÿ´Îä¯ÀÀÓʼþÐèÒª·ÃÎÊweb·þÎñ£¬Ôö¼Ó·þÎñÆ÷¸ºµ££»
ÈôͼƬÒÔ¶þ½øÖƵķ½Ê½´æÔÚÓÚÊý¾Ý¿â»òÊǶ¯Ì¬Éú³ÉµÄ£¬ÔòÎÞ·¨ÓÐЧµÄ½â¾ö¡£
2. °ÑͼƬÒÔ¸½¼þµÄ·½Ê½·¢ËͳöÈ¥£¬ÕâÖÖ·½Ê½·Ç³£ÊÊÓÃÓÚͼƬ´æÔÚÓÚÊý¾Ý¿âÖеÄÇé¿ö¡£
±¾ÎÄÒ²Ö÷ÒªÌÖÂÛÕâÖÖÇé¿ö¡£
¶ÔÓÚJava MailµÄ»ù´¡ÖªÊ¶£¬Çë¿´http://www.yesky.com/SoftChannel/72348977504190464/20020713/1620276.shtml£¬
±¾ÎIJ»×÷½éÉÜÁË¡£
˵µ½ÓʼþÖеĸ½¼þ£¬ÎÒ²»µÃ²»ËµÒ»ËµMiniMultipartÀ࣬ÌṩÁËÔÚÓʼþÖмÓÈ븽¼ÓµÄʵÏÖ·½·¨¡£
Ò»¸ö¶à²¿·ÖÓʼþÊÇÒ»¸öÄÚÈÝÀàÐÍ£¨content-type£©±»ÉèÖÃΪMiniMultipartµÄMessage¶ÔÏó¡£
MiniMultipartÀàÊÇÒ»¸öÈÝÆ÷À࣬°üº¬MimeBodyPartÀàÐ͵ĶÔÏó¡£
ÎÒÃÇ¿ÉÒÔÓÃÒ»¸öMimeBodyPart°üº¬htmlÔ´´úÂ룬ÆäËûµÄMimeBodyPart°üº¬¶þ½øÖƵÄͼƬ¸½¼þ¡£
µ«ÊÇÕâÀïÓиöÒâÍâÇé¿ö£¬ÎÒÃÇÏÈ¿´MimeBodyPartµÄ³õʼ»¯´úÂ룺
MimeBodyPart mdp = new MimeBodyPart(); //н¨Ò»¸ö´æ·Å¸½¼þµÄBodyPart
DataHandler dh = new DataHandler(...);
mdp.setDataHandler(dh); //¸øBodyPart¶ÔÏóÉèÖÃÄÚÈÝΪdh
ÆäÖе±DataHandler³õʼ»¯Ê±ÐèÒªDataSourceµÄ×ÓÀà
/** from JDK Doc */
public DataHandler(DataSource ds)
Create a DataHandler instance referencing the specified DataSource.
The data exists in a byte stream form. The DataSource will provide an InputStream to access the data.
Parameters:ds - the DataSource
ÔÚJDK1.4ÖУ¬DataSourceÊǸöInterface,DataSource½öÓÐMimePartDataSource, URLDataSource, FileDataSourceÈý¸ö×ÓÀ࣬
¶øÔÚÕâÈý¸öÀàÖÐûÓÐÒ»¸öÄÜÖ±½ÓÓöþ½øÖÆÁ÷(byte[])´´½¨ÊµÀý¡£µ±È»ÎÒÃÇ¿ÉÒÔ°ÑÄÚ´æÖеĶþ½øÖÆÁ÷дµ½ÎļþÖУ¬ÔÙÈÃFileDataSource¶Á½øÀ´¡£
µ«ÊÇÕâÑù»á¸ø·þÎñÆ÷´øÀ´¶øÍâµÄÓ²Å̶Áд£¬Èô²Ù×÷Ƶ·±£¬»áÔì³É·þÎñÆ÷ÐÔÄÜϽµ¡£ÐÒÔ˵ÄÊÇÎÒÔÙÍøÉÏ·¢ÏÖÁËÕâôһ¸öÀ࣬¿ÉÒÔÖ±½ÓÓöþ½øÖÆÁ÷Ö±½Ó´´½¨ÊµÀý¡£
import java.io.*;
import javax.activation.*;
public class ByteArrayDataSource implements DataSource
{
/*** Data to write. */
private byte[] _data;
/*** Content-Type. */
private String _type;
/* Create a datasource from an


Ïà¹ØÎĵµ£º

javaÈëÃÅ

 Javaѧϰ´ÓÈëÃŵ½¾«Í¨ 
Ò»¡¢ JDK (Java Development Kit) 
JDKÊÇÕû¸öJavaµÄºËÐÄ£¬°üÀ¨ÁËJavaÔËÐл·¾³£¨Java Runtime Envirnment£©£¬Ò»¶ÑJava¹¤¾ßºÍJava»ù´¡µÄÀà¿â(rt.jar)¡£²»ÂÛʲôJavaÓ¦Ó÷þÎñÆ÷ʵÖʶ¼ÊÇÄÚÖÃÁËij¸ö°æ±¾µÄJDK¡£Òò´ËÕÆÎÕJDKÊÇѧºÃJavaµÄµÚÒ»²½¡£×îÖ÷Á÷µÄJ ......

¡¾C++¡¿ÊµÓÃsocket±à³Ì »ñÈ¡ÍøÒ³htmlÐÅÏ¢

 // Socket1.cpp : ¶¨Òå¿ØÖÆ̨ӦÓóÌÐòµÄÈë¿Úµã¡£
//
#include "stdafx.h"
#include<winsock.h>
#include<stdio.h>
#include<string>
#include<iostream>
using namespace std;
#define WSWENS MAKEWORD(2,0)
int _tmain(int argc, _TCHAR* argv[])
{
sockaddr_in sin; ......

Java ³ÌÐòÄÚ´æ·ÖÎö

   java³ÌÐòÄÚ´æÖ÷Òª·ÖΪÁË2¸ö²¿·Ö£¬°üÀ¨ stack segment(Õ»ÄÚ´æ)¡¢heap segment(¶ÑÄÚ´æ)¡£ 
    ÔÚ·ÖÎöJava³ÌÐòÄÚ´æ·ÖÅäÇé¿öʱ£¬ÎÒÃÇ´ÓÏÂÃæÕâ¸ö¾­³£±»Ê¹ÓõÄÀý×Ó¿ªÊ¼°É¡£ 
    ÏÂÃæ³ÌÐò½«´òӡʲôÄØ£¿ 
   
Java´úÂë 
String s1&nbs ......

Java ÀíÂÛÓëʵ¼ù: ÕýȷʹÓà Volatile ±äÁ¿

 
Java™ ÓïÑÔ°üº¬Á½ÖÖÄÚÔÚµÄͬ²½»úÖÆ£ºÍ¬²½¿é£¨»ò·½·¨£©ºÍ volatile ±äÁ¿¡£ÕâÁ½ÖÖ»úÖƵÄÌá³ö¶¼ÊÇΪÁËʵÏÖ´úÂëÏ̵߳ݲȫÐÔ¡£ÆäÖÐ Volatile ±äÁ¿µÄͬ²½ÐԽϲµ«ÓÐʱËü¸ü¼òµ¥²¢ÇÒ¿ªÏú¸üµÍ£©£¬¶øÇÒÆäʹÓÃÒ²¸üÈÝÒ׳ö´í¡£ÔÚÕâÆÚµÄ Java ÀíÂÛÓëʵ¼ù
ÖУ¬Brian Goetz ½«½éÉܼ¸ÖÖÕýȷʹÓà volatile ±äÁ¿µÄģʽ£¬²¢Õ ......

ÈçºÎÓÃJavaƽ̨·ÃÎÊ¿ªÔ´ÔÆ´æ´¢£¿

 
¾¡¹ÜÔƼÆËãÕâÒ»ÊõÓï²¢²»ÐÂÏÊ(AmazonÔÚ2006Äê¾Í¿ªÊ¼ÌṩËüµÄÔÆ·þÎñ)£¬µ«´Ó2008ÄêÆðËü²Å¿ªÊ¼ÕæÕý³ÉΪÁ÷Ðдʣ¬ÕâÆڼ䣬GoogleºÍ
AmazonµÄÔÆ·þÎñÖð½¥»ñµÃÁ˹«ÖڵĹØ×¢¡£ GoogleµÄApp EngineʹÓû§Äܹ»ÔÚGoogle»ù´¡ÉèÊ©ÉϹ¹½¨ºÍÍÐ¹Ü Web Ó¦ÓóÌÐò¡£
¡¡¡¡Á¬Í¬S3£¬AmazonWeb Services»¹°üÀ¨Elastic Cloud Compute
(EC2) ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ