Solved

Creating SMS application Java Platform with Oracle DB.

Posted on 2004-04-19
47
3,331 Views
Last Modified: 2013-11-23
 I am using J2SE 1.4.1_05 and an Oracle 9i Database.
  I want to create an application that can send and receive sms using computer. And all the messages(inbox,outbox),phonebook, and other info is stored in oracle 9i database.
  But I don't have a comprehensive guide on how to do this. So anyone could please give me a link, a document or any idea on how can i accomplish this application.
  Tnx!

0
Comment
Question by:jheff
  • 24
  • 12
  • 5
  • +3
47 Comments
 
LVL 15

Assisted Solution

by:Javatm
Javatm earned 40 total points
Comment Utility
Hi;

Its quite complicated you need to know a lot of things like the approach of cellphones.

The first step is to investigate how to create a sms :
http://www.dreamfabric.com/sms/

You need to have a SMS Gateway or SMS Server :
http://www.visualtron.com/

Here are also several guides which can help :
http://www.oreillynet.com/pub/a/wireless/2003/10/10/sms.html

Here is an old question which is the same as your question :
http://www.experts-exchange.com/Q_20333413.html

Hope that helps . . .
Javatm



 
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
tnx 4 all these resources, il try 2 have a study on it!

But most of these resources talks about creating sms application alone. I'll be building this app using oracle developer, just putting all the java codes in it.

R u also using oracle?
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
I see ur profile, ur from PCU. I am also a filipino, from PLM, BS ECE grad last year. Nice miting u hir!
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
Heres the whole profile of my project:

     I am using a PC that is used as a database server running on Oracle 9i DB. I am planning to create an SMS application that sends and received messages that will be stored in this DB. I plan to use the Java platform to communicate to execute the commands that can manipulate the mobile device connected to the PC.
    Please help me in doing this. Thanks!

    THIS QUESTION IS DISTRIBUTED IN THREE(3) AREAS, JAVA,ORACLE,WIRELESS(GSM). SO THIS QUESTION HAS A TOTAL OF 500 POINTS AND I AM WILLING TO MAKE IT HIGHER UP TO 800 POINTS FOR THE ONE WHO CAN HELP ME ACCOMPLISH THIS! THANKS AGAIN.

:)
0
 
LVL 2

Expert Comment

by:anupvijay
Comment Utility
Hi Jheff,
How do you plan to communicate with the phone ?
I mean the widely used method is using AT commands. But I believe there are also phone specific softwares which
allow you to do the same.

AT commands can be issued via Serial communications or IR, again depending on the phone that is used.
So the communication issue should just boil down to opening serial ports and writing AT commands to it
using java libraries (sorry, can't help in java much).

What I fail to understand is that why you are using a high end DB like Oracle 9i. I mean the SMS, phonebook etc
are such small lightweight data repositories. So why not use simple text files or something simpler ?

Please let us know if you need more inputs.

Cheers.

0
 
LVL 1

Author Comment

by:jheff
Comment Utility
 I use data cable(serial communication) to connect the mobile station to the PC. I am having a study on what to use, either the AT commands or some java package that can do the same. My problem with AT commands is i dont know how to use it, or how can i integrate it with other programming languages like the PL/SQL(i will using this for DB communication), unlike java. But I am also not a java expert.
  Regarding with using Oracle 9i DB, my application is not just designed for sending and receiving messages. We have our database system running in Oracle 9i, the sms application is just an additional feature, where our clients can just inquire for some information in the database thru SMS. That's why I decided to use the oracle developer in creating the GUI for this appliaction, because it is already connected to oracle. What I will try to do (hopefully) is just to load a java procedure(or AT commands if possible) inside the oracle. So when I run the application developed from oracle, the commands for sending/receiving sms will also be executed. This is just my idea. Because I think, creating a stand alone sms application can give me more problem connecting to Oracle 9i DB.
  Well I am still new in all these area, so anyone please help me!
  Thanks!

-jheff  
0
 
LVL 2

Expert Comment

by:anupvijay
Comment Utility
Just trying to get an insight into your project here.....

Tell me if i understand it correctly.

You will receive an SMS on a phone connected to a PC. The SMS could be from anyone.
Then based on the contents of this SMS you need to do some DB operations in oracle.
Then the results of this operation has to be sent back as SMS to the person (from whom u recvd the SMS initially).

Is this what you want to do ? If I understand it correctly then it will be easier for me to help.

Cheers.
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
 yah that's right! Something like that, but its not all the time that you need to reply to the message.
  -the messages will be saved in the DB
  -there will also be some outbox message that will be sent automatically during a certain time.
  -viewing of received and sent messages will be taken care by the oracle program.
 
 
0
 
LVL 2

Expert Comment

by:anupvijay
Comment Utility
Does the Oracle devloper allow MS OLE object (or activex objects) to be embedded and used ?
I am ZERO in Oracle Devloper. :-)
0
 
LVL 2

Expert Comment

by:anupvijay
Comment Utility
Let us attempt it step by step.

Your first job is to receive SMS from the phone which is connected to the PC thru a COM port. right ?
So you need to find out whether Oracle developer with the help of some ready to use component can communicate
with the phone thru serial port.
I have read of a MSCOMMLib.MSComm.1 which is an object allowing you to communicate with serial port.

But you need to do some r & d on it as to whether it works with Developer or not.

Cheers.
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
i am not sure about that, but i am sure java can do that.

Just disregard the problem about oracle, il think about it later. I just want first to develop a set of java code (or AT command) that can send and receive sms from a mobile station connected to PC. After completing the codes needed for sms application, i know a way where i can load the java procedure inside oracle, where oracle will recognize it as his own language. :-)

I have sample code written in java that can send/receive sms, but i dont know how to start the application. :-(

0
 
LVL 1

Author Comment

by:jheff
Comment Utility
anupvijay,

have you used java in this kind of application. I have seen a program uses AT command inside a java program, if you know this? I 've seen this but i dont know how to use it. :-(
0
 
LVL 2

Expert Comment

by:anupvijay
Comment Utility
You mean you have a sample code to open/write/read from com port in java ?
Go ahead then......Compile it and try running it.

AT commands are not a big deal. They are just strings that need to be written to the COM port which is
connected to the phone and the phone will respond to it.

So for sending and receiving SMS there are pre - defined set of AT commands to do it.
See this link
http://www.gsm-modem.de/gsm-modem-faq.html

So your steps should be
Open COM port, Form an AT command, Write the string to the port, read response from COM port.
May be this link will help you in the communication part.
http://java.sun.com/products/javacomm/javadocs/index.html

Keep posting.
Cheers
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
il take a look at it. :-)
0
 
LVL 2

Assisted Solution

by:anupvijay
anupvijay earned 80 total points
Comment Utility
From the link I earlier posted. try connecting the phone to the PC and change the string to just "AT" and the response
you should get is "OK".
All the best


/*
 * @(#)SimpleWrite.java      1.12 98/06/25 SMI
 *
 * Copyright 2003 Sun Microsystems, Inc. All rights reserved.
 * SUN PROPRIETARY/CONFIDENTIAL. Use is subject to license terms.
 *
 * Sun grants you ("Licensee") a non-exclusive, royalty free, license
 * to use, modify and redistribute this software in source and binary
 * code form, provided that i) this copyright notice and license appear
 * on all copies of the software; and ii) Licensee does not utilize the
 * software in a manner which is disparaging to Sun.
 *
 * This software is provided "AS IS," without a warranty of any kind.
 * ALL EXPRESS OR IMPLIED CONDITIONS, REPRESENTATIONS AND WARRANTIES,
 * INCLUDING ANY IMPLIED WARRANTY OF MERCHANTABILITY, FITNESS FOR A
 * PARTICULAR PURPOSE OR NON-INFRINGEMENT, ARE HEREBY EXCLUDED. SUN AND
 * ITS LICENSORS SHALL NOT BE LIABLE FOR ANY DAMAGES SUFFERED BY
 * LICENSEE AS A RESULT OF USING, MODIFYING OR DISTRIBUTING THE
 * SOFTWARE OR ITS DERIVATIVES. IN NO EVENT WILL SUN OR ITS LICENSORS
 * BE LIABLE FOR ANY LOST REVENUE, PROFIT OR DATA, OR FOR DIRECT,
 * INDIRECT, SPECIAL, CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES,
 * HOWEVER CAUSED AND REGARDLESS OF THE THEORY OF LIABILITY, ARISING
 * OUT OF THE USE OF OR INABILITY TO USE SOFTWARE, EVEN IF SUN HAS BEEN
 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
 *
 * This software is not designed or intended for use in on-line control
 * of aircraft, air traffic, aircraft navigation or aircraft
 * communications; or in the design, construction, operation or
 * maintenance of any nuclear facility. Licensee represents and
 * warrants that it will not use or redistribute the Software for such
 * purposes.
 */
import java.io.*;
import java.util.*;
import javax.comm.*;

/**
 * Class declaration
 *
 *
 * @author
 * @version 1.10, 08/04/00
 */
public class SimpleWrite {
    static Enumeration            portList;
    static CommPortIdentifier portId;
    static String            messageString = "Hello, world!";
    static SerialPort            serialPort;
    static OutputStream       outputStream;
    static boolean            outputBufferEmptyFlag = false;
    /**
     * Method declaration
     *
     *
     * @param args
     *
     * @see
     */
    public static void main(String[] args) {
      boolean portFound = false;
      String  defaultPort = "/dev/term/a";

      if (args.length > 0) {
          defaultPort = args[0];
      }

      portList = CommPortIdentifier.getPortIdentifiers();

      while (portList.hasMoreElements()) {
          portId = (CommPortIdentifier) portList.nextElement();

          if (portId.getPortType() == CommPortIdentifier.PORT_SERIAL) {

            if (portId.getName().equals(defaultPort)) {
                System.out.println("Found port " + defaultPort);

                portFound = true;

                try {
                  serialPort =
                      (SerialPort) portId.open("SimpleWrite", 2000);
                } catch (PortInUseException e) {
                  System.out.println("Port in use.");

                  continue;
                }

                try {
                  outputStream = serialPort.getOutputStream();
                } catch (IOException e) {}

                try {
                  serialPort.setSerialPortParams(9600,
                                           SerialPort.DATABITS_8,
                                           SerialPort.STOPBITS_1,
                                           SerialPort.PARITY_NONE);
                } catch (UnsupportedCommOperationException e) {}
      

                try {
                      serialPort.notifyOnOutputEmpty(true);
                } catch (Exception e) {
                  System.out.println("Error setting event notification");
                  System.out.println(e.toString());
                  System.exit(-1);
                }
               
               
                System.out.println(
                      "Writing \""+messageString+"\" to "
                  +serialPort.getName());

                try {
                  outputStream.write(messageString.getBytes());
                } catch (IOException e) {}

                try {
                   Thread.sleep(2000);  // Be sure data is xferred before closing
                } catch (Exception e) {}
                serialPort.close();
                System.exit(1);
            }
          }
      }

      if (!portFound) {
          System.out.println("port " + defaultPort + " not found.");
      }
    }


}
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
the code uv posted above is from the downloaded javacomm-32.zip. iv also downloaded it, and included it inside the j2sdk1.4.1_05 home, but i cant compile it? It give me an error of "javax.comm does not exist". It seems that compiler cannot see what i have downloaded. Can you help me on this. please.
:-(
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
do have a yahoo account? r u yahoo messenger?
0
 
LVL 2

Expert Comment

by:anupvijay
Comment Utility
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
thanks for that link.
i've able to compile my code, but when i run it, it gave me an error: "exception in thread main..."

this is my code just to test the port:

import java.io.*;
import java.util.*;
import javax.comm.*;

public class Ports {
     public Ports() {
         CommPortIdentifier cpi = null;

         Enumeration enum = CommPortIdentifier.getPortIdentifiers();

         while (enum.hasMoreElements()) {
             try {
                 cpi = (CommPortIdentifier) enum.nextElement();
             } catch (NoSuchElementException n) {}
             System.out.println(cpi.getName());
         }
     }
     public static void main(String[] args) { new Ports(); }
}
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
Do you know the "Smart Amazing Phone"?

in case ur familiar with that, does it support the AT command, or will this java code work on that phone?

:-)
0
 
LVL 2

Assisted Solution

by:anupvijay
anupvijay earned 80 total points
Comment Utility
First, test to see whether the phone supports "AT" at all.....

You can do this using the Hyperterminal Programs-Accessories-Communication.

Open Hyperterminal and connect to the correct COM port and connect the phone and just type "AT"
The phone should respond with "OK" on the hyperterminal screen.

In fact if it works you can try the AT command for SMS also to see whether it supports those also before getting into
the code jungle :-)

Cheers.
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
just giv me more time for testing my phone. :-)
0
 
LVL 15

Expert Comment

by:Javatm
Comment Utility
Hi Jeff;

Sorry I was on a vication I havent got the time, anyways Im back as I see you are also
a filipino where do you work ?

Me I work in a call center. I graduated as a computer science and
I always take time here in this Java Area to help people
like you with problems.

Its nice to meet you here. Anyways ask again if you still have
other questions.

Friend : Javatm
0
What Security Threats Are You Missing?

Enhance your security with threat intelligence from the web. Get trending threat insights on hackers, exploits, and suspicious IP addresses delivered to your inbox with our free Cyber Daily.

 
LVL 2

Expert Comment

by:virtue79
Comment Utility
Hello,

There is another way to send SMS from a PC, that is to use the service of a SMS gateway provider, such as http://www.clickatell.com . It is very easy to use and it can handle a larger amount of traffic than a mobile phone or GSM modem. For example, to send a SMS message, you just need to make a call to an URL like http://someGatewayProvider.com/send?toPhone=12345&smsMsg=testing in Java. The cost per sms sent is not expensive. With such approach, you do not need to struggle with AT programming.

Hope that helps.
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
virtue79,
 thats also a nice way, but i want to have my own sms gateway. is that possible? how? pleaase tell me more? thanks.
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
javatm,
 im working computer professionals, inc. a company engage in IT solution and outsourcing as well. Im working here as oracle programmer/DBA and doing some other application. :-)
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
I've tried to load the java classes to the oracle DB. These java classes are located inside the J2SE home. But when tried to load it inside the oracle DB(using loadjava) it has an error or it is invalid. Because the java classes can't find some packages. Can anyone tell me how to do this correctly? Please!

-thanks
0
 
LVL 15

Expert Comment

by:Javatm
Comment Utility
> Because the java classes can't find some packages.

What are the classes which are missing ? can you tell me ?

Friend : Javatm
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
javatm,
 these are the packages that I think oracle can't find: javax.comm and jsmsengine.
 I just dont know if i need to put all the new packages/classes inside the oracle database? If all the contents of my java home directory must also be inside the oracle DB?
0
 
LVL 2

Assisted Solution

by:virtue79
virtue79 earned 60 total points
Comment Utility
Hello,

> thats also a nice way, but i want to have my own sms gateway. is that possible? how? pleaase tell me more? thanks.

Just connect your sms gateway to the sms gateway provider using a suitable protocol, such as SMPP. I think you have to refer to your sms gateway's user manaul for the configuration.

If you are using Kannel as the sms gateway, you can refer to http://www.kannel.org/download/1.2.1/userguide-1.2.1/userguide.html#SMS-GATEWAY for the details.

Hope that helps.
0
 
LVL 2

Expert Comment

by:anupvijay
Comment Utility
I think jheff it is something to do with your path settings. I am not an expert in java or oracle...but intuition tells me that
there should be some kind of class path setting for java packages in oracle.
Try and find it out....or somebody else might help you.
Cheers.
0
 
LVL 15

Assisted Solution

by:Javatm
Javatm earned 40 total points
Comment Utility
Have you tried to use this ? :
http://www.tdel.net/jsmsengine/
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
Javatm,
 yes i've tried that, i've downloaded the jsmsengine API(jsmsengine_1_2_3.zip) and i tried to include the "jsmsengine.jar" in my j2sdk home library, but i am not sure if thats all i need to do with the jsmsengine. Please tell me what are those things that I need to get from jsmsengine API(jsmsengine_1_2_3.zip) that I need to place also to j2sdk library. thanks!
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
Can this SMS application be a multi-user, for example: a cellphone is connected in PC acting as a server, then some PC acting as client can connect to this server, all the clients can use this SMS application, but only one cellphone is connected to the server.

Is this possible?
0
 
LVL 2

Assisted Solution

by:anupvijay
anupvijay earned 80 total points
Comment Utility
I think it is possible. Specially because SMS is not a connection oriented service. It is packet type communication.
The only thing is that you at the server side should maintain some kind of a mapping of each different user.
Also if the same user sends multiple SMS the server should be able to distinguish user on a per message basis.

Cheers.
0
 
LVL 2

Assisted Solution

by:virtue79
virtue79 earned 60 total points
Comment Utility
> Can this SMS application be a multi-user, for example: a cellphone is connected in PC acting as a server, then some PC acting as client can connect to this server, all the clients can use this SMS application, but only one cellphone is connected to the server.
>
>Is this possible?

This is possible. Just add some network communication code to your application, using socket or RMI in Java. Do you mean you want some help in Java network programming?
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
virtue79,
  yah i nid some help not only in java programming, also in integrating it with oracle 9i db. I am stuck here in my project.:-( So if anyone could giv me some tutorial in creating sms apps using java and oracle? thanks!
i'l promise i'l increase the points here. :-)
0
 
LVL 2

Accepted Solution

by:
anupvijay earned 80 total points
Comment Utility
Hi Jheff,
I would be glad to help but I am not an expert in java or oracle,I have just used them sometime back.

I can help you in approaching the problem.
I think you are overloaded with information here. Take the problem step by step.
Don't try to get everything working on the first go. I see that you can break up your project into different small projects.
So finish these small projects one by one and then in the end just get it all together. That will be easy for you to learn
and maintain.

I see 3 major things you ought to do
1. Get a java application work with oracle 9i.
2. Get a java application communicate on serial comm.
3. Get the java application talk to phone and send/receive sms
 In the end you just need to put the code together and u will get it all right.

Try to get the step 1 working first. Don't try to get all the packages running with oracle first. Try with some small simple
java program first. Then step by step keep adding new packages/classes and see where the problem is cropping up.

I am sure that once you get this part working the rest of the steps are much simpler.

Hope that helps. Sorry jheff....can't help you with code but can provide you links.
But I found a link as below which might be of help to you. Check it out.
http://forums.oracle.com/forums/thread.jsp?forum=82&thread=232458&message=658313&q=73657269616c20636f6d6d756e69636174696f6e#658313

Alternatively you can also get registered at otn.oracle.com and search the site for some code too.
Cheers.

0
 
LVL 2

Assisted Solution

by:virtue79
virtue79 earned 60 total points
Comment Utility
Hello,

I think anupvijay has given a very good advice. jheff, you should break down your problem into small problems and solve it one by one. In my opinion, you should first finish the sms send/receive class. This class will be responsible for serial port communication with the mobile phone and AT command programming. This class should be similar to the following.

public class SmsSendRecv
{
public void sendCommandToSerialPort(String cmd)
{...}

public void sendSMS(int phoneNum, String msg)
{
// Send sms using ordinary AT commands.
...
sendCommandToSerialPort(cmd);
...
 }

public void recvSMSHandler()
{
// When an incoming SMS is detected, it will be saved to a buffer queue.
...
}

public String[] getSMSRecv()
{  // Return a String array that contains all the received sms in the buffer queue.
... }
}

Javatm and anupvijay have given you many info about AT programming and serial port communication programming. I think this part is not difficult. After you are sure that you can send/receive sms successfully using your phone, you can go on to program the db manager class. This class will be responsible for adding, deleting, updating, and retrieving records to the datebase. This part will require ordinary JDBC programming knowledge. You will use Java's Connection class, Statement class, PreparedStatement class, etc, to do the job. As you are a database programmer, you probably are familiar with all these and so I will not talk about them in detail here. Feel free to ask if you have any problems with JDBC.

Then, you can go on to program the main processing class. This class should be similar to the following.

public class MainProc
{
...

public void processing()
{
...

// Get the received SMS
SmsSendRecv smsSendRecv = new SmsSendRecv();
String[] receivedsms = smsSendRecv.getSMSRecv();

// Check to see what the received SMS messages are about and do the corresponding job. For example, send a reply SMS, add the received SMS to the database, etc.

...
}

...
}

As you said before, you want client PCs to access the server that will be connected with the mobile phone. You will need to program a network communication class. You will need socket programming knowledge. This network communication class will have a similar class structure as the SmsSendRecv class. The difference will be that you are now sending and receiving TCP socket messages instead of sms messages. You will then program a requestHandler method which will check the messages sent from the clients and do the corresponding jobs. For example, if a message "sendsms 12345678 hello" is received from a client, you will call the method sendSMS(12345678, "hello") in SmsSendRecv class.

If I were you, I would follow the above order and solve the problem one by one. I don't know if that's what you want. Hope that helps.

> if anyone could giv me some tutorial in creating sms apps using java and oracle?
Your question is too general. What tutorial do you want? AT programming? serial port programming? Java socket programming? SQL? JDBC? ...

> i'l promise i'l increase the points here
There is no need to do so. Points are not important to me. I just want to help someone when I have time.
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
anupvijay,
  the link you've given me is great!
"(http://forums.oracle.com/forums/thread.jsp?forum=82&thread=232458&message=658313&q=73657269616c20636f6d6d756e69636174696f6e#658313"

thanks for all other comments, that helps me a lot! but im afraid that
i cant close this question this time, cause i need more time. thanks again.


0
 
LVL 2

Expert Comment

by:anupvijay
Comment Utility
Glad to know jheff that you are making progress.......

Keep posting when you are in trouble. We will try our best to help you.
Also post if you are thru with the project........tell us what you have learnt so that others visiting the site can also be
benefited.

Cheers.
0
 
LVL 2

Expert Comment

by:virtue79
Comment Utility
Feel free to ask any other questions you like.
Hope that my comments can be more useful next time.
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
I hav a problem on connecting the phone, i've tried to test it using hyper-terminal and i type
'AT' but i dont see any response, pls help me! urgent!
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
i am using USB(DKU-5)
0
 
LVL 1

Author Comment

by:jheff
Comment Utility
I just want to know if it is possible to use the USB port for AT programming or Java
Port Programming. If possible how?
0
 

Assisted Solution

by:jefferjay
jefferjay earned 160 total points
Comment Utility
This is only possible if the USB connection emulates a COM port.
If so then there is no USB-specific code needed. The virtual COM port should work like a real one

The DKU-5 cable encapsulates a USB-to-Serial convertor so that the phone end works as a standard RS232 UART while the PC end sees a virtual COM port.

So whatever you might do over COM1 should be possble over whatever COM port the DKU-5 driver provides.

Regarding the modem connection (and presumably the modem control lines) that very much depends on what Nokia have implemented in the PC-end driver.

You can try to have a look on the following link...

http://jcp.org/en/jsr/detail?id=80
www-106.ibm.com/developerworks/java/library/ j-usb.html?ca=dgr-lnxw09USBJava
http://javaboutique.internet.com/articles/java_usb_api/oss.software.ibm.com/developerworks/downloads/detail.php?group_id=78&what=pack&id=77
http://javax-usb.org/

0
 
LVL 2

Expert Comment

by:bcarlis
Comment Utility
Where do I get the  MSCOMMLib.MSComm.1 Object and how do I install or set it up?

I'm running Oracle Forms6i....

Bill
0

Featured Post

How your wiki can always stay up-to-date

Quip doubles as a “living” wiki and a project management tool that evolves with your organization. As you finish projects in Quip, the work remains, easily accessible to all team members, new and old.
- Increase transparency
- Onboard new hires faster
- Access from mobile/offline

Join & Write a Comment

An old method to applying the Singleton pattern in your Java code is to check if a static instance, defined in the same class that needs to be instantiated once and only once, is null and then create a new instance; otherwise, the pre-existing insta…
Are you developing a Java application and want to create Excel Spreadsheets? You have come to the right place, this article will describe how you can create Excel Spreadsheets from a Java Application. For the purposes of this article, I will be u…
The viewer will learn how to implement Singleton Design Pattern in Java.
This tutorial covers a practical example of lazy loading technique and early loading technique in a Singleton Design Pattern.

763 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now