Friday 25 November 2016

I have my own domain now. you can learn about programming languages both in tamil &english. you can also learn english language through tamil
website Address:
karthikeyantutorials.com

Wednesday 23 November 2016

கிரிட் வியூவும் டேட்டா சோர்ஸ் கண்ட்ரோல்களும்.(ASP.NET)




கிரிட்  வியூ கண்ட்ரோல்(GRID VIEW)
இது டேட்டா பேஸிலிருந்து கிடைக்கப்பட்ட டேட்டாவை அட்டவணை வடிவத்தில் வெளியிடப் பயன்படுகின்றது. டேட்டா கிரிட் (DATAGRID) கண்ட்ரோலும்  டேட்டாவை அட்டவணை வடிவத்தில் வெளியிடப் பயன்பட்டு வந்தது. VISUAL STUDIO 2008 –லிருந்து இது தானாகவே இருக்காது. டேட்டா கிரிட் கன்ட்ரோல் வேண்டுமெனில் பின் வரும் வழி முறைகளை பின் பற்றவும்.
1.   டூல் பாக்ஸில் வலது கிளிக் செய்து “Choose item”) என்பதை தேர்ந்தெடுக்கவும்.
2.   “Choose Toolbox Items” என்கின்ற டயலாக் பாக்ஸ் வெளிப்படும்.
3.   அதிலிருந்து System.web என்கின்ற அசெம்பிளியில் உள்ள டேட்டா கிரிட்டை தேர்ந்தெடுக்கவும்.
4.   முடிவாக o.k கொடுக்கவும். இப்போது டேட்டா கிரிட் டூல் பாக்ஸில் வெளிப்படும்.

எனினும் எடிட்,அப்டேட் போன்றவற்றை டேட்டா கிரிட்டில் நிரல் வரிகள் மூலமாகவே செய்ய முடியும்.கிரிட் வியூவில் அப்படி கிடையாது.

டேட்டா சோர்ஸ் கண்ட்ரோல்கள்

இவை டேட்டா பேஸிலிருந்து டேட்டாவை retrieve செய்ய பயன்படுகின்றது. அவற்றை அப்படியே எந்த வித நிரல் வரிகளின்றி
டேட்டா பவுண்ட் கன்ட்ரோல்களில் வெளிப்படுத்தலாம்.

முக்கியமான டேட்டா சோர்ஸ்கள்
1.   Sqldatasource- இந்த கன்ட்ரோல் sql database, oledb, odbc, oracle data base போன்றவற்றிலிருந்து டேட்டாவை பெறப்பயன்படுகின்றது.
2.   Objectdatasource-இந்த BUSINESS DATA OBJECTS (FOR EXAMPLE CLASS LIBRARY)மூலம் டேட்டாவை பெறுகின்றது.
3.   Accessdatasource-மைக்ரோ சாஃப்ட் அக்சஸிலிருந்து டேட்டாவை பெறப்பயன்படுகின்றது.
4.   Xmldatasource-xml ஃபைல்களிருந்து டேட்டாவை பெறப்பயபடுகின்றது.
5.   Linqdatasource-இது linq மூலம் டேட்டாவை பெறப் பயன்படுகின்றது.

Sqldatasource-
Sql server –ல் இருந்து டேட்டாவை பெறுதல்:

முதலில் வெப் ஃபார்மில் sqldatasource control,gridview control முதலியவற்றை இணைக்கவும். பார்க்க படம்-1

Configure Data source-யை கிளிக் செய்யவும்.

 New connection என்பதை க்ளிக் செய்யவும்.

டேட்டா சோர்ஸில் Microsoft sqlserver(sqlclient) என்பதையும் server name என்பதில் உங்கள் sqlserver –ன் பெயரையும் கொடுக்கவும்.(பெயர் தெரியவில்லையென்றால் sqlserver management studio –வின் connect dialog box-ல் உள்ள server name-யையும் கொடுக்கவும்.)
கடைசியாக select or enter a database name என்பதில் database
 பெயரை கொடுக்கவும்.பின்பு o.k கிளிக் செய்யவும்.அடுத்து வரும் ஸ்கிரினில் அப்படியே next கொடுக்கவும்.
அடுத்து வரும் விண்டோவில் டேபிள் பெயரை கொடுக்கவும்.பின்பு நமக்கு எந்தெந்த  column தேவைபடுகின்றது என்பதையும் குறிப்பிடவும்.


Next கொடுத்து பின் வரும் விண்டோவில் test query என்பதை கிளிக் செய்தால் டேட்டா அட்டவனையாக வெளிவரும்.பின்பு finish கொடுக்கவும்.
அடுத்து க்ரிட் வியூவை கிளிக் செய்து டேட்டா சோர்ஸில் sqldatasource1 என்பதை தேர்ந்தெடுக்கவும்.

இப்போது நிரலை இயக்கினால் பின் வரும் வெளியீடு கிடைக்கும்.
பின் குறிப்பு:
பின் குறிப்பு:
நாம் இதற்கு முன்பே sqlserver-ல் school என்கின்ற database மற்றும் smark என்கின்ற table ஒன்றையும் உருவாக்கியுள்ளோம் என்று எடுத்துக் கொள்க.
Accessdatasource
Ms-access-ல் school.accdb என்கின்ற டேட்டா பேஸையும் பின்பு mark என்கின்ற table ஒன்றையும் உருவாக்கி கொள்க. பின்பு அந்த டேட்டாபேஸை asp.net project ஒன்றில் App_data என்கின்ற ஃபோல்டரில் இணைத்துக் கொள்க. பின்பு web form –ல் Accessdatasource ஒன்றையும் gridview ஒன்றையும் இணைத்துக் கொள்க.
Access data source-ன் configure data source-ல் school.accdb டேட்டா பேஸையும்  mark என்கின்ற table –யையும் தேந்தெடுக் கொள்க.
க்ரிட் வியூவின் choose data source என்பதில் accessdatasource1 என்பதையும் தேர்ந்தெடுத்துக் கொள்ளவும்.
இப்போது நிரலை இயக்கினால் பின் வரும் வெளியீடு வரும்


Object data source
Sqldatasource என்கின்ற மூலம் நாம் டேட்டாவை அனுகும் போது பேக் எண்ட் ஆன டேட்டா பேஸில் எதாவது மாற்ற்ம் செய்தால் ஃப்ரன்ட் எண்டில் update செய்வதில் சில மாற்றங்களை ஏற்படுத்தும் எனவே ரியல் டைமில் layer based access  பயன்படுத்தப் படுகின்றது.
மூன்று லேயர்கள்:
1.presentation layer: Asp.net வெப் பக்கங்களில் design பக்கத்தில் நாம் சேர்க்கும் கன்ட்ரோல்களும் கோடிங் பக்கத்தில் நாம் எழுதும் நிரலாக்க வரிகளும் ஆகும்
2.business logic layer: இது class library project  பக்கத்தில் உபயோகிக்கும் டேட்டா ஆப்ஜெக்டுகளான students, products போன்றவை ஆகும்
3.Data access layer: இது class library project-ல் பின் வரும் நாம் செய்யும் CRUD(create,retrieve,update,delete) வேலைகளுக்கு பொறுப்புடையதாகும்.
பொதுவாக நாம் முதலில் Presentaion layer ஆனதை அனுகிறோம் அது business logic layer ஆனதை அணுகுகிறது. அது data access layer யை அனுகுகிறது. இந்த லேயர் ஆனது CRUD வேலைகளை செய்கின்றது.
Asp.net-ல் solution explorer-ல் ப்ராஜெக்ட் பெயரை வலது கிளிக் செய்து add new items என்பதில் கிளிக் செய்து class என்பதை தேர்ந்தெடுக்கிறோம் பின்பு
அதன் பெயரை மாற்றுகின்றோம். இங்கு schoolaccess.cs என்று கொடுத்துள்ளோம்(user defined name). இப்பொழுது solution expolorer-ல் schoolaccess.cs என்பதை காணலாம்.

முதலில் web.config ஃபைலை திறந்து பின் வரிகளை சேர்க்கவும்.
<configuration>
  <connectionStrings>
    <add name="cs" connectionString="Data Source=MUTHU-PC\SQLEXPRESS;Initial Catalog=school;Integrated Security=SSPI" />
  </connectionStrings>
இப்பொழுது cs என்கின்ற connection string ஆனது sql செர்வரில் நாம் ஏற்கனவே உருவாக்கியுள்ள school என்கின்ற டேட்டா பேஸை குறிப்பிடுகின்றது.
இதை open செய்து பின் வரும் நிரல் வரிகளை சேர்க்கின்றோம்.
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Configuration;
using System.Data;
using System.Data.SqlClient;

namespace WebApplication3
{
    public class Student    {
        public int Id { get; set; }
        public string SName { get; set; }
        public string mark { get; set; }
    }
    public class schoolaccess
    {
       public static List<Student> GetAllStudents()
        {
            List<Student> listStudents = new List<Student>();

            string CS = ConfigurationManager.ConnectionStrings["CS"].ConnectionString;
            using (SqlConnection con = new SqlConnection(CS))
            {
                SqlCommand cmd = new SqlCommand("select * from  mark1", con);
                con.Open();
                SqlDataReader rdr = cmd.ExecuteReader();
                while (rdr.Read())
                {
                    Student student = new Student();
                    student.Id = Convert.ToInt32(rdr["sno"]);
                    student.SName = rdr["sname"].ToString();
                    student.mark = rdr["mark"].ToString();

                    listStudents.Add(student);
                }
            }

            return listStudents;
        }
    }
}

   
இந்த வரிகளில் முதலில் உள்ள student class-ல் மூன்று property சேர்க்கப்பட்டுள்ளது .இவை
School என்கின்ற டேட்டா பேஸின் mark1 என்கின்ற டேபிளின் column பெயருடன் மேப் பண்ணுவது போல் உருவாக்கப்பட்டுள்ளது.
பின்பு schoolaccess என்கின்ற கிளாஸ் உருவாக்கப்பட்டுள்ளது இதில் GetAllStudents() என்கின்ற மெத்தட் சேர்க்கப்பட்டுள்ளது.இதன் ரிடர்ன் டைப்பாக List<Student>
என்று கொடுக்கப்பட்டுள்ளது.பின் listStudents  என்கின்ற ஆப்ஜெக்ட் உருவாக்கப்பட்டுள்ளது. பின்பு mark1 என்பதின் டேட்டா retrieve செய்யப்படுகின்ற்து
SqlDataReader என்பதன் ஆப்ஜெக்ட் ஆன rdr என்பது அந்த டேட்டாவை read செய்ய பயன்படுகின்றது. பின்பு while loop-ல் student என்கின்ற ஆப்ஜெக்ட் Student என்கின்ற கிளாஸிற்கு உருவாக்கப்பட்டுள்ளது.டேட்டா ஆனது ரீட் செய்யப்பட்டு அதன் ப்ராப்ப்ர்டி ஆன Id ,Sname, mark ஆகியவற்றிற்கு மதிப்பிருத்தப்படுகின்றது. பின் liststudent-ல் என்கின்ற லிஸ்ட் ஆப்ஜெட்டிற்கு add செய்யப்படுகின்றது. பின்பு லூப்பின் முடிவில் listStudents ரிடர்ன் செய்யப்படுகின்றது.
இப்பொழுது asl.net வெப் ஃபார்மில் object data source ஒன்றும் கிரிட் வியூ ஒன்றும் இனைக்கப்பட்டுள்ளது.
பின்பு objectdatasource-ன் configure Data source ஆனது செலக்ட் செய்யப்படுகின்றது.

பின்பு இந்த விண்டோ வரும்.
இதில் உள்ள choose your business object என்பதில் WebApplication3.schoolaccess என்பது தெரிவு செய்யப் படுகின்றது.(இது லிஸ்டில் இல்லையெனில் project ஆனதை build செய்து கொள்ளவும்.) பின்பு next கொடுக்கப்பட்டு பின் வரும் விண்டோவில் GetAllStudents() மெத்தட் தெரிவு செய்யப்படுகின்றது.
பின்பு finish கொடுக்கவும்.



பின்பு கிரிட்வியூவின் choose data source என்பதை செலெக்ட் செய்து objectdatasource1-என்பதை தெரிந்தெடுக்கவும்.
பின்பு நிரலை f5 பட்டன் ப்ரஸ் செய்து  இயக்கவும். பின் வரும் வெளியீடு வரும்.

Xmldatasource பற்றி பிரிதொரு கட்டுரையில் விரிவாக காண்போம்.
                                  -முத்து கார்த்திகேயன்.மதுரை

Tuesday 15 November 2016

ஜாவா 3ம் பாடம்.





Variable:
மாறி என்று தமிழில் அழைக்கப்படும் variable ஆனது நினைவக இடங்களுக்கு நாம் இடும் பெயர் ஆகும்.இதில் பல்வேறு விதமான மதிப்புகளை சேமிக்கலாம். சேமித்து வைத்துள்ள மதிப்புகளை manipulate செய்யலாம்.
 
Import java.util.Scanner;
Public class Addition
{
Public static void main(String[] args)
{
Scanner input=new Scanner(System.in);
int no1;
int no2;
int total;
total=no1+no2;
System.out.println(“enter first integer”);
no1=input.nextInt();
System.out.println(“enter second integer”);
no2=input.nextInt();
total=no1+no2;
System.out.printf(“sum is %d\n” ,total);
}
}
Output:
enter first integer:10
enter second integer 15
sum is 25.
ஜாவாவானது வளமான library class களை கொண்டுள்ளது. அதில் ஒரு library class தான் Scanner ஆகும்.
Import ஆனது இந்த நிரலில் Scanner class locate செய்யப் பயன்படுத்த்ப்படுகின்றது.scanner class ஆனது java.util என்ற packageல் உள்ளது.
Scanner input=new Scanner(System.in);
Scanner class க்கு input என்னும் object உருவாக்கப்படுகின்றது.இதில் new எனும் keyword ஆனது Scanner object உருவாக்கி அதன் மூலம் keyboard வழியாக உள்ளீடு செய்யப்படுவன வற்றை ரீட் செய்ய பயன்படுகின்றது.
int no1;
int no2;
int total ;
Integer தரவினத்தில் மூன்று மாறிகள்(variables) அறிவிக்கப் பட்டுள்ளது.
இன்ட் என்பது no1,no2,total மாறிகளில்முழு எண்கள் மட்டும் பெறும் படி எற்பாடு செய்ய பயன் படுகின்றது.
மற்ற முக்கியமான தரவினங்கள்
1.       Float-தசம எண்கள்
2.       Char-single character input
3.       String-ழுத்துக்களின் தொகுப்பு.
4.       Double-துல்லிதமான தசம எண்கள்.
no1=input.nextint();
Scanner classன் input object ஆனது keyboard  வழியாக நாம் உள்ளிடும் எண்களை பெற்றுக் கொண்டு no1ல் மதிப்பிருத்துகின்றது.
அதே போல்
no2=input.nextInt();
no2ல் மதிப்பிருத்தப் பயன்படுகின்றது.
no1+ no2 கூட்டப்பட்டு total என்ற மாறியில் மதிப்பிருத்தும்.
பின் total வெள்யீடு செய்யப் படுகின்றது.

 

Class, objects, methods and instance variables:

ஒரு வண்டியை வேகமாக pedal press செய்து இயக்குகிறோம். ஆனால் அதற்கு முன் அந்த வண்டியை உருவாக்கியிருக்க வேண்டும். அதற்கும் முன் யாராவது அதைப் பற்றி டிசைன் செய்திருக்க வேண்டும்.
அந்த அந்த ட்ராயிங்க் ஆனது பெடல்,ப்ரேக் ,ஸ்டியரிங்க் வீல் அகியவற்றின் implementation  கொண்டிருக்கும்.ஆனால் கடை நிலைப் பயனாளிக்கு இவற்றின் வெளிப்புறம் மட்டுமே காட்டப் பட்டிருக்கும்.பெடலை மிதித்தால் வண்டி இயங்கத் தொடங்கும். .ப்ரேக் வண்டியை நிறுத்துவதற்கும் மற்றும் ஸ்டியரிங்க் வீல் வண்டியை திருப்புவற்கும் பயன்படுகின்றது.ஆனால் இவற்றை இயக்கும் போது வண்டியின் உட்புறம் என்ன நிகழ்கின்றது என்பது கடை நிலைப் பயனாளிக்கு மறைக்கப்படிருக்கும்.
இப்படித் தான் ஒரு classன் வழிமுறையானது வெளியே காட்டப் பட்டிருந்தாலும் அவை எப்படி இயங்குகின்றது என்பது யூசரிடமிருந்து மறைக்கப் பட்டிருக்கும்..
Class என்பது ஒரு டெசைன் தான். எப்படி நீங்கள் ஒரு வண்டியின் design வத்து அதை இயக்க முடியாதோ அதே போல் வெறும் class வைத்து  நீங்கள் ஒன்றும் செய்ய இயலாது.class க்கு object உருவாக்க வேண்டும். அதை வைத்து வழிமுறைகளை கையாள வேண்டும்.
மற்றுமொரு உதாரணமாக BankAccount class எடுத்துக் கொள்வோம். அவை bank balance என்ற பண்பு கொண்டிருக்கும்.அதே நேரத்தில் findBalance என்ற மெத்தடைக் கொடிருக்கும்.இதில் bank balance என்பது instance variable ஆக கொடுக்கப் பட்டிருக்கும்..balance அறிய வேண்டுமென்றால் findBalance என்ற மெத்தடைஅழைக்க  வேண்டும்.
GradeBook என்ற உதாரணத்தை எடுத்துக் கொள்வோம்.
Public class GradeBook
{
Public void displayMessage ()
{
System.out.println(“welcome to the grade book”);
}
}

மேலே உள்ள நிரலில் உள்ளது வெறும் Class design மட்டும் தான். GradeBookClass ஆனது displayMessage ()என்ற மெத்தடைக் கொண்டிருக்கிறது. அது அழைக்கப்படும் போது
welcome to the grade book
என்று வெளியிடும்.ஆனால் இந்த மெத்தடை அழைப்பதற்கு முன் GradeBookClass க்கு object create செய்யப்பட வேண்டும். அதன் மூலமாக  displayMessage மெத்தடை அழைக்க வேண்டும்.

Public class GradeBookTest
{
Public static void main(String[] args)
{
GradeBook book1=new GradeBook();
book1.displayMessage();
}
}

மேலே உல்ல நிரலில் GradeBook classக்கு book1 என்ற object create செய்யப்பட்டுள்ளது அதற்கு பின் displayMessage() மெத்தட் ஆனது அழைக்கப்பட்டுள்ளது. பொதுவாக classன்  வழிமுறையானது(method) பின் வருமாறு அழைக்கப் படுகின்றது.
Syntax:
Objectname.methodname();
 (reference: java how to program ,Deitel publications)
head first java –புத்தகத்திலிருந்து ஒரு சுவையான தகவல்:
ஜாவா 2 இருக்கின்றது. அதற்கு பிறகு ஜாவா 5 தான் இருக்கின்றது 3,4 பதிப்புகள் எங்கே?
ஜாவா1.1 லிருந்து ஜாவா 1.2 க்கு மாறிய போது பெரிய வரவேற்பு இருந்தது.நிறைய மாற்றங்கள் இருந்தது.எனவே ஜாவா2 என அழைக்கப்பட்டது. 1.3,1.4 என வெர்சன் மாறிய பொழுதும் ஜாவா2 என்கின்ற பெயர் மாற்றப்பட வில்லை.1.5 வெர்சன் வந்த பொழுது ஜாவா 5 என மாற்றினால் என்ன என்று தோன்றிற்று .மாற்றினார்கள்.அதன் பின் வரும். jdk 1.6 என்பது java6 எனவும் jdk1.7 என்பது java7 எனவும் அழைக்கப்படுகின்றது.
                                               - -மீண்டும் சந்திப்போம்.
                                           முத்து கார்த்திகேயன்,மதுரை

-