Java Mail SMTP发送邮件实例 Sending Email with SMTP using Java Mail

Categories: Java; Tagged with: ; @ September 13th, 2012 18:09

The JavaMail API provides a platform-independent and protocol-independent framework to build mail and messaging applications. The JavaMail API is available as an optional package for use with Java SE platform and is also included in the Java EE platform.

Download JavaMailAPI: http://www.oracle.com/technetwork/java/javamail/index.html

import java.util.Properties;

import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.PasswordAuthentication;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;


public class JavaMailTest {
	
	public static void main(String[] args) throws AddressException, MessagingException {
			String host = "smtp server addr.";
		    final String from = "[email protected]";
		    final String password = "password";
		    String to = "abc@_example.com";

		    // Get system properties
		    Properties props = System.getProperties();
		    // Setup mail server
		    props.setProperty("mail.smtp.host", host);
		    props.setProperty("mail.smtp.auth", "true");
		    props.setProperty("mail.smtp.port", "25");

		    // Get session
		    Session session = Session.getInstance(props,
		  		  new javax.mail.Authenticator() {
				protected PasswordAuthentication getPasswordAuthentication() {
					return new PasswordAuthentication(from, password);
				}
			  });

		    // Prepare message
		    MimeMessage message = new MimeMessage(session);
		    message.setFrom(new InternetAddress(from));
		    message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
		    message.setSubject("Hello JavaMail");
		    message.setText("Test Email from JavaMail");
		    
		    // Send message
		    Transport.send(message);
	}

}

SSIS: Export data to CSV with column names 导出数据到CSV并包含标题

Categories: Database; Tagged with: ; @ September 7th, 2012 15:38

When exporting data to “csv” using SSIS, I found there was no column name in the output file. And the solution is quite simple and inelegant,

refer to the following screen capture:

clip_image002

Using function in SQL Server 在SQL Server中使用函数

Categories: Database; Tagged with: ; @ September 7th, 2012 15:06

Create SQL function:

USE DavidTest;
GO
IF OBJECT_ID ('dbo.fn_isUserActive') IS NOT NULL
    DROP FUNCTION dbo.fn_isUserActive;
GO
CREATE FUNCTION dbo.fn_isUserActive (@userID int)
RETURNS int
WITH EXECUTE AS CALLER
AS
BEGIN
    DECLARE @userStatus int;
    DECLARE @isActive int;
    SELECT @userStatus = ID FROM DavidTest.dbo.DavidUser WHERE ID=@userID ;

    if(@userStatus is not null AND @userStatus = 3)
    BEGIN
        SET @isActive = 1;
    END
    ELSE
        SET @isActive = 0;
RETURN @isActive;
END;
GO

 

Using the function:

SELECT dbo.fn_isUserActive(3);

SELECT * FROM dbo.DavidUser u where dbo.fn_isUserActive(u.ID) > 0;

SSIS: Can not execute dataflow in Visual Studio

Categories: Database; Tagged with: ; @ September 6th, 2012 19:24

This happened when we just edit the dtsx file.
If you want execute the flow in VS directly, create one Integration services project first, then you can copy your dtsx and pase it into the “SSIS Packages” in the Solution Explorer:

then you can execute the ssis dataflow directly in VS.

SQL Server: Execute SQL Agent job from T-SQL

Categories: Database; Tagged with: ; @ September 5th, 2012 19:02

Run SQL Agent job by this:

EXEC msdb.dbo.sp_start_job 'testJob';

Seems sp_start_job is asynchronous, here is a test:


-- Invoke SQL Agent job from T-SQL
PRINT CONVERT(VARCHAR(24),GETDATE(),113)
EXEC msdb.dbo.sp_start_job 'testJob';
PRINT CONVERT(VARCHAR(24),GETDATE(),113)

The results:
05 Sep 2012 18:55:11:747
Job ‘testJob’ started successfully.
05 Sep 2012 18:55:11:753

in testJob, we have one setp which is used for record the runtime:

PRINT CONVERT(VARCHAR(24),GETDATE(),113)
This job will output to one file, and in this file we can get the runtime date:

Job ‘testJob’ : Step 3, ‘recodTime’ : Began Executing 2012-09-05 18:55:12
05 Sep 2012 18:55:12:110 [SQLSTATE 01000]

MoreInfo:
1. EXECUTE (Transact-SQL) http://msdn.microsoft.com/en-us/library/ms188332.aspx
2. Different ways to execute a SQL Agent job: http://www.mssqltips.com/sqlservertip/1730/different-ways-to-execute-a-sql-agent-job/
3. sp_start_job Runs Asynchronously: http://www.daveturpin.com/2009/11/sp_start_job-runs-asynchronously/

Newer Posts <-> Older Posts



// Proudly powered by Apache, PHP, MySQL, WordPress, Bootstrap, etc,.