Wednesday 2 March 2016

My Experience on java training

My Trainee Experience on JAVA in IBM Private Ltd under the Manipal Global Education Services .
                     
  At first day,i felt like a kid in the java language and i planned to learn java from basics to advanced topics. but to learn java in practical approach  rather than the theoretical  approach, i have to concentrate more on the topics very deeply.
for the god grace, i got the good trainer in my java training batch and he gave more importance to Hand's on,So i felt very lucky and said thanks to god.
Coming to my colic's in the batch,all are more talent than me because they all are trained in java in past.
So I increased my hard-work levels 50% than the my colic's and increased concentration on listening towards the Classes.
In my Training i met different kind of persons and different kind of attitude's,lot of  studious persons
and kind-hearten people.
Coming to the Schedule on my Training Stream,it is Scheduled to 45 days which contains the major topics in development phase like SERVLETS,JSP,JDBC and SPRING Framework.
first one week, they teaches the programming fundamentals,RDBMS,HTML/CSS,JAVA SCRIPT which is useful to the front-end and somewhat back-end purposes. Later,We moved in to the JAVA started with OOPS concepts.
In second week,we have the first assessment on core java.all are busy to preparing to the exam,but i am Planning to write the exam without preparation Because i wish to know how much knowledge i have on java.this exam helps to me a lot to know my knowledge.
Finally,I got 22/40 because time limit for that questions in very low.So that I answered only 28 Questions and got the 22 only.  On that I planned from next Exam On-wards I want to maintain time management in Exams.In next exam i got the 41/50 and i learned a lot of topics in that short span of time. Day-to-Day My performance is increasing in coding and my practice also increased. 
           At finally,Now I am Java developer or java warrior as a fresher with good knowledge on java.from today On wards my career started as "Software Engineer Trainee" .
  

Wednesday 4 March 2015

Diff between String,StringBuffer & Stringbuilder

String




String is immutable  ( once created can not be changed )object  . The object created as a String is stored in the  Constant String Pool  . 
Every immutable object in Java is thread safe ,that implies String is also thread safe . String can not be used by two threads simultaneously.
String  once assigned can not be changed.
String  demo = " hello " ;
// The above object is stored in constant string pool and its value can not be modified.

demo="Bye" ;     //new "Bye" string is created in constant pool and referenced by the demo variable            
 // "hello" string still exists in string constant pool and its value is not overrided but we lost reference to the  "hello"string  

StringBuffer


StringBuffer is mutable means one can change the value of the object . The object created through StringBuffer is stored in the heap . StringBuffer  has the same methods as the StringBuilder , but each method in StringBuffer is synchronizedthat is StringBuffer is thread safe . 
Due to this it does not allow  two threads to simultaneously access the same method . Each method can be accessed by one thread at a time .
But being thread safe has disadvantages too as the performance of the StringBuffer hits due to thread safe property . Thus  StringBuilder is faster than the StringBuffer when calling the same methods of each class.
StringBuffer value can be changed , it means it can be assigned to the new value . Nowadays its a most common interview question ,the differences between the above classes .
String Buffer can be converted to the string by using 
toString() method.
StringBuffer demo1 = new StringBuffer("Hello") ;
// The above object stored in heap and its value can be changed .
// Above statement is right as it modifies the value which is allowed in the StringBuffer

StringBuilder


StringBuilder  is same as the StringBuffer , that is it stores the object in heap and it can also be modified . The main difference between the StringBuffer and StringBuilder is that StringBuilder is also not thread safe. 
StringBuilder is fast as it is not thread safe .  

StringBuilder demo2= new StringBuilder("Hello");
// The above object too is stored in the heap and its value can be modified
demo2=new StringBuilder("Bye"); 
// Above statement is right as it modifies the value which is allowed in the StringBuilder.
 complete overview on above three.
----------------------------------------------------------------------------------
                                    String                    StringBuffer         StringBuilder
----------------------------------------------------------------------------------                 
Storage Area | Constant String Pool           Heap                       Heap 
Modifiable     |  No (immutable)            Yes( mutable )          Yes( mutable )
Thread Safe   |           Yes                                  Yes                              No
 Performance |         Fast                                Very slow                    Fast


demo1=new StringBuffer("Bye");

Tuesday 20 January 2015

Abstarct of Examination system

                                                                                                                                                              All systems in today’s world is being computerized, since there is no wonder that even the management of the examinations and  their related functions is being  computerized. Examination is core activity of any educational institution. In Colleges the examinations are carried in the semester method that takes place once in a six months.ThusExamination Management System automates the activities carried around the Examination processes. Examination Management System is software developed for the students who give exams in colleges and institutes. It facilitates to access the examination information of a particular student in a particular class. The information is sorted by the operators, which will be provided by the teacher for a particular class.

Purpose:-                                                        
                       The purpose of developing examination management system is to computerize the traditional way of taking exams.  Another purpose for developing this software is to generate the report automatically about the   seating arrangement and invigilator allocation  during exams at the end of the session or in the between of the session.
Existing  System:-
                       Current system is manual so all the record keeping is done manually.   So we cannot determine the sitting arrangement of student if updation is not done. So keeping in mind the above problems the new system will automate the manual system and will generate the sitting plan.  This system is efficient, fast and accurate in comparison to the manual system.The data objects of the system encompass the records of the students which include Semester wise and branch wise sitting arrangement during  the conduct of external exams.
 
DISADVANTAGES OF PRESENT WORKING SYSTEM:-
 
‡ Not User Friendly:-
                         The existing system is not user friendly because the retrieval of data is very slow and data is not maintained efficiently.
‡ Difficulty in report generation:-
                                                             We require more calculations to generate the report so it is generated at the end of the session. And the student not able to know in which class they will sit for exam.
 
‡ Manual control:-
                         All calculations for generating report are done manually which may lead to errors.
 
‡ Lots of paperwork:-
                                     Existing system requires lots of paper work. Loss of  even a single record can lead to difficult situation because all the papers are needed to generate the reports.
 
‡ Time consuming:-
                         Every work is done manually so we cannot generate report in the middle of the session or as per the requirement because it is very time consuming.
Proposed System:-
        Seating Arrangement details takes care of the seating  problem of the students those are being to write the examination.  This contains two separate modules, one for acknowledging the  details of the students being to write the exam and the other is to assign the students to the respective halls is a semiautomated  system. A separate option is given here such that a particular student’s Hall and examination for an approaching date can be viewed.
        students are allocated to each room based on     
        Constraint on set number
        Number of students per room
        Selection of department
        faculty are  allocated to each room based on
        Invigilation count
        Work burden.
        Experience.
 
  CHARECTERISTICS OF THE  PROPOSED SYSTEM:-
 
 User Friendly:-
                         The proposed system is user friendly because the retrieval  and storing of data is fast and data is maintained efficiently.
atractive GUI interface:-
                              Moreover thegraphical user interface is provided in the  proposed system, which provides user to deal with the system very easily.
 Reports are easily generated:-
                                                 Reports can be easily generated in the proposed system so user can generate the report as per the requirement (monthly) or in the middle of the session.
 Very less paper work: -
                                    The proposed system requires very less paper work. All the data is feted into the computer immediately and reports can be generated through computers. Moreover work becomes very easy because   there is no need to keep data on papers.
 Computer operator control:-
                                                 Computer operator control will be there so no chance of errors. Moreover storing and retrieving of information is easy. So work can be done speedily and in time.
Advantages:-
         less effort.
         Data Consistency.
         Better data Accessbility.
         less Man Power.
 
                                                                                                                                                            

Saturday 6 December 2014

MYSQL


  Introduction:

                      MySQL is the most popular open source SQL database management system is developed, distributed, and supported by MySQL AB. MySQL AB is a commercial company, founded by the MySQL developers.
                A database is a collection of data that is organized so that its contents can be easily accessed, managed and updated. MySQL is a data storage area. In this storage area, there are small sections called Tables.
                A Relational Database Management System (RDBMS) may be a DBMS in which data is stored in the form of tables and the relationship among the data is also stored in the form of tables.
        The data in MySQL is stored in database objects called tables. A table is a collection of related data entries and it consists of columns and rows. The MySQL database has become the world's most popular
open source database because of its consistent fast performance, high reliability and ease of use.

 Advantages:
o   MySQL is Cross-Platform.
o   MySQL is fast and free.
o   Reliable and easy to use.
o   Multi-Threaded multi-user and robust SQL Database server.

 Disadvantages:
o Missing Sub-selects.
o MySQL doesn't yet support the Oracle SQL extension.
o Does not support Stored Procedures and Triggers.
o MySQL doesn't support views, but this is on the TODO.
Account Management Statements:
 CREATE USER:

                         The CREATE USER statement creates new MySQL accounts.
Syntax:-

                    CREATE USER user [IDENTIFIED BY [PASSWORD] 'password']
           [, user [IDENTIFIED BY [PASSWORD] 'password']] ...

Example:

CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';

 DROPUP USER:

                      The DROP USER statement removes one or more MySQL accounts and their privileges.
Syntax:-

                      DROP USER user [, user] ....
GRANT :
                   The GRANT statement enables system administrators to grant privileges to MySQL user accounts.

Syntax:--
                 GRANT
                 priv_type [(column_list)]
                 [, priv_type [(column_list)]] ...
     ON [object_type] priv_level
      TO user [IDENTIFIED BY [PASSWORD] 'password']
      [, user [IDENTIFIED BY [PASSWORD] 'password']] ...
      [REQUIRE {NONE | ssl_option [[AND] ssl_option] ...}]
      [WITH with_option ...].

Example:-
                  GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' WITH GRANT OPTION;
RENAME USER :
                                  The RENAME USER statement renames existing MySQL accounts.
Syntax:-

                   RENAME USER old user TO new user[, old user TO new user] ...
Example:-

                 RENAME USER 'jeffrey'@'localhost' TO 'jeff'@'127.0.0.1';

REVOKE:     
                   The REVOKE statement enables system administrators to revoke privileges from MySQL accounts.

Syntax:-

REVOKE
priv_type [(column_list)]
[, priv_type [(column_list)]] ...
ON [object_type] priv_level
FROM user [, user] ...
REVOKE ALL PRIVILEGES, GRANT OPTION
FROM user [, user] ...
Example:-

                  RENAME USER 'jeffrey'@'localhost' TO 'jeff'@'127.0.0.1';

SET PASSWORD :
                        The SET PASSWORD statement assigns a password to an existing MySQL user.
Syntax:--

SET PASSWORD [FOR user] =
{
PASSWORD('some password')
| OLD_PASSWORD('some password')
| 'encrypted password'
}
Example:-

                    SET PASSWORD FOR 'bob'@'%.loc.gov' = PASSWORD('newpass');
USING SEQUENCE:-
                              A sequence is a database object that generates numbers in sequential order. Applications most often use these numbers when they require a unique value in a table such as primary key values.

The  following list describes the characteristics of sequences.

o Sequences are available to all users of the database
o Sequences are created using SQL statements (see below)
o Sequences have a minimum and maximum value (the defaults are minimum=0 and             maximum=263-1); they can be dropped, but not reset
Once a sequence returns a value, the sequence can never return that same value
o While sequence values are not tied to any particular table, a sequence is usually used to               generate values for only one table
o Sequences increment by an amount specified when created (the default is 1).

Creating a Sequence:-
                                   To create sequences, execute a CREATE SEQUENCE statement in the same way as an UPDATE or INSERT statement. The sequence information is stored in a data dictionary file.
The format for a CREATE SEQUENCE statement is as follows:-

CREATE SEQUENCE sequence_name
[INCREMENT BY #]
[START WITH #]
[MAXVALUE # | NOMAXVALUE]
[MINVALUE # | NOMINVALUE]
[CYCLE | NOCYCLE]

Variable Description:--

INCREMENT BY:- The increment value. This can be a positive or negative number.
START WITH :-The start value for the sequence.
MAXVALUE:- The maximum value that the sequence can generate. If specifying
NOMAXVALUE”- the maximum value is 263-1.
MINVALUE:- The minimum value that the sequence can generate. If specifying
NOMINVALUE:- the minimum value is -263.
CYCLE:- Specify CYCLE to indicate that when the maximum value is reached the
                  sequence starts over again at the start value. Specify NOCYCLE to generate
                  an error upon reaching the maximum value.

Dropping a Sequence:

To drop a sequence, execute a DROP SEQUENCE statement. Use this function when a sequence is
no longer useful, or to reset a sequence to an older number. To reset a sequence, first drop the sequence and
then recreate it.
Drop a sequence following this format:
DROP SEQUENCE my sequence
Using a Sequence:

Use sequences when an application requires a unique identifier. INSERT statements, and
occasionally UPDATE statements, are the most common places to use sequences. Two "functions" are available on sequences:

NEXTVAL: Returns the next value from the sequence.
CURVAL: Returns the value from the last call to NEXTVAL by the current user during the current connection.

EXAMPLE:-
                    CREATE SEQUENCE customer_seq INCREMENT BY 1 START WITH 100

Friday 10 October 2014

SDLC FOR PROJECT


SDLC Overview

  •  It is also called as Software development process.
  • SDLC, is a process used by software industry to design, develop and test high quality software.
  • the SDLC aims to produce a high quality software that meets customer expectations, reaches completion within time and cost estimates.

Definition

  •  The software development life cycle (SDLC) is a framework defining tasks performed at each step in the software development process.

What is sdlc?

                          It consists of a detailed plan describing how to develop, maintain, replace and alter or enhance specific software. The life cycle defines a methodology for improving the quality of software and the overall development process.

 
Various stages in SDLC:- 

                 

  Planning and Requirement Analysis :

·   Requirement analysis is the most important and fundamental stage in SDLC.
·  This information is then used to plan the basic project approach and to conduct         product feasibility study in the economical, operational, and technical areas.
·  Planning for the quality assurance requirements and identification of the risks    associated with  the project is also done in the planning stage.
·  The outcome of the technical feasibility study is to define the various technical  approaches that can be followed to implement the project successfully with minimum risks.

  Defining Requirements :
                  Once the requirement analysis is done the next step is to clearly define and              document the product requirements and get them approved from the customer or             the market analysts.
·     This is done through‘SRS’– Software Requirement Specification document which consists of all the product requirements to be designed and developed during the project life cycle.

 Designing the product architecture :
·         SRS is the reference for product architects to come out with the best architecture for the product to be developed.
·          Based on the requirements specified in SRS, usually more than one design approach for the product architecture is proposed and documented in a DDS - Design Document Specification.
  •    A design approach clearly defines all the architectural modules of the product along with its communication and data flow representation with the external and third party modules .
  Building or Developing the Product :
  •    In this stage of SDLC the actual development starts and the product is built. The programming code is generated as per DDS during this stage
  •  If the design is performed in a detailed and organized manner, code generation can be accomplished without much hassle.
  •  Developers have to follow the coding guidelines defined by their organization and programming tools like compilers, interpreters, debuggers etc are used to generate the code.
  •      Different high level programming languages such as C, C++, Pascal, Java, and PHP are used for coding. The programming language is chosen with respect to the type of software being developed
.  
 Testing the Product:
  •      This stage is usually a subset of all the stages as in the modern SDLC models, the testing activities are mostly involved in all the stages of SDLC.
  •          However this stage refers to the testing only stage of the product where products defects are reported, tracked, fixed and retested, until the product reaches the quality standards defined in the SRS
       Deployment in the Market and Maintenance :
·         Once the product is tested and ready to be deployed it is released formally in the appropriate market.
·         Sometime product deployment happens in stages as per the organizations business strategy. The product may first be released in a limited segment and tested in the real business environment .