the trailboss abuses his CodeRanch power for his other stuff (power corrupts. absolute power corrupts absolutely is kinda neat!)
permaculture light bulbs permaculture electric heat permaculture cast iron permaculture wood burning stove permaculture solar food dehydrators
The moose likes Meaningless Drivel and the fly likes Java Project but not Web Project... Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


Win a copy of Soft Skills this week in the Jobs Discussion forum!
JavaRanch » Java Forums » Other » Meaningless Drivel
Bookmark "Java Project but not Web Project..." Watch "Java Project but not Web Project..." New topic
Author

Java Project but not Web Project...

ankur rathi
Ranch Hand

Joined: Oct 11, 2004
Posts: 3830
Hi,

Please suggest me a Java Project, should not be a web project. College level, 2 months duration.

Thanks.
Kj Reddy
Ranch Hand

Joined: Sep 20, 2003
Posts: 1704
Originally posted by rathi ji:
Hi,

Please suggest me a Java Project, should not be a web project. College level, 2 months duration.

Thanks.


You can try converting any web project into swing based desktop application
ankur rathi
Ranch Hand

Joined: Oct 11, 2004
Posts: 3830
Originally posted by KJ Reddy:


You can try converting any web project into swing based desktop application


Yes, but it should be useful also. I mean, if a project is well suited for web then no advantage of making it a desktop project.

Please suggest some other way...

Zip Ped
Ranch Hand

Joined: Jul 26, 2005
Posts: 336
You can make a three tier application using Swings, RMI and JDBC. Create a database, use a Swing client where the Label values of the widgets can be configured according to a properties file (or an XML file and use a SAX parser). Use RMI as the middle tier to call the JDBC classes.

Initially the application can be specific to a particular business such as a Stock market and then once it's built, try to make the application generic so that it can be used be used for basic Cruds operation. That should take about 2 months or more for a student.
Karu Raj
Ranch Hand

Joined: Aug 31, 2005
Posts: 481
hi Kailash Thiyagarajan

i know java and jsp and servlets.

but i want some application using this which i can use it as learning

please let me know how and where can i find it ....
Zip Ped
Ranch Hand

Joined: Jul 26, 2005
Posts: 336
hi Karthik,

I would suggest you create a sample database(Google it if u want some sample databases). Use the JDBC API to access the data in the Model(POJO).
Call the values from your Controller(Servlet) and pass it on to the View(JSP).

So it goes like this : JSP ----(submit)---> Controller----(create a Model object)-------> Model ------>Calls the JDBC API(Try to use JDBC DBC bridge in the beginning and later on u can upgrade to a Type 4 driver) ------(calls to database)------->DB-----(return values to the Model)------->Model------(pass values to the controller)----->Controller----(directs values to the JSP)-----> Display ur JSP..... ...

and viola .... you got an MVC architecture.

This is a very abstract description....and now its upto u to think of the Classes, calls etc....
ankur rathi
Ranch Hand

Joined: Oct 11, 2004
Posts: 3830
Originally posted by Kailash Thiyagarajan:
You can make a three tier application using Swings, RMI and JDBC. Create a database, use a Swing client where the Label values of the widgets can be configured according to a properties file (or an XML file and use a SAX parser). Use RMI as the middle tier to call the JDBC classes.

Initially the application can be specific to a particular business such as a Stock market and then once it's built, try to make the application generic so that it can be used be used for basic Cruds operation. That should take about 2 months or more for a student.


Good advice. But I haven't worked on RMI and I feel, duration is short to learn RMI and then develop. Could you please suggest something which doesn't include RMI and EJB...

Any good project related to Networking (Socket Programming), Multi-Threading...

Thanks a lot.


[ February 14, 2006: Message edited by: rathi ji ]
Pradeep bhatt
Ranch Hand

Joined: Feb 27, 2002
Posts: 8919

Originally posted by rathi ji:


Good advice. But I haven't worked on RMI and I feel, duration is short to learn RMI and then develop. Could you please suggest something which doesn't include RMI and EJB...

Any good project related to Networking (Socket Programming), Multi-Threading...

Thanks a lot.



[ February 14, 2006: Message edited by: rathi ji ]


Write a chat application that sends encrypted messages.I involves UI, networking, encryption algorithm and multithreading.


Groovy
Vishnu Prakash
Ranch Hand

Joined: Nov 15, 2004
Posts: 1026

But I haven't worked on RMI and I feel, duration is short to learn RMI and then develop.


Learn RMI if you are planning to develop a distributed application.

For 2 months college project desktop based MVC would be the best choice.


Servlet Spec 2.4/ Jsp Spec 2.0/ JSTL Spec 1.1 - JSTL Tag Documentation
Axel Janssen
Ranch Hand

Joined: Jan 08, 2001
Posts: 2164
I have found this guys book a very interesting source for developing open source desktop app. Maybe you get some usefull inspiration from the book or the whole blog.
http://www.clientjava.com/books/
ankur rathi
Ranch Hand

Joined: Oct 11, 2004
Posts: 3830
Originally posted by Vishnu Prakash:


Learn RMI if you are planning to develop a distributed application.

For 2 months college project desktop based MVC would be the best choice.


Can you please elaborate bit more desktop based MVC projects. If possible give me some examples.

Thanks a lot.

ankur rathi
Ranch Hand

Joined: Oct 11, 2004
Posts: 3830
Originally posted by Pradip Bhat:


Write a chat application that sends encrypted messages.I involves UI, networking, encryption algorithm and multithreading.


Thats a good idea and best for learning. But if I will develope it without web then one has to install client before he/she use it and so I guess, people will not use it, if we see it commercially...

But still it is one option, please suggest me others too...

Thanks a lot.
Vishnu Prakash
Ranch Hand

Joined: Nov 15, 2004
Posts: 1026

Can you please elaborate bit more desktop based MVC projects. If possible give me some examples.


Model(M)- POJO (Plain Old Java Object)
view(V) - AWT/SWING
Control(C) - POJO (Plain Old Java Object)

Similar to Web MVC. Write all the database interaction and error handling code in Model, use Control to invoke Model fetch the result store/retireve in collections(map/list) for manipulation and send it to View. By adding one more layer of object (Controller) you are facilitating "seperation of concern".

This is just my thought.
S Venkatesh
Ranch Hand

Joined: Jun 27, 2005
Posts: 464

I think you can go for a gaming project.
Svend Rost
Ranch Hand

Joined: Oct 23, 2002
Posts: 904
Hi Rathi,

Do you have any ideas yourself? and does the project have any requirements
with respect to technologies?

Ok, my idea..

JavaRanch's Stage Coach System:
-------------------------------
Techonologies: Threads, GUI (Swing pref.) and Sockets
Design Patterns: MVC, Observer/Observable

The Ranch's has a number of monitors which displays some
information about the X next stagecoaches to arrive at the Ranch. The
Monitors get their information from a Server.

Use Swing (or AWT) and the MVC pattern for the monitors. Each monitor is
an observer which listens to the Server. You'll use Socket communication
between the Server and the Monitors.


So? how about that...

/Svend Rost
[ February 15, 2006: Message edited by: Svend Rost ]
ankur rathi
Ranch Hand

Joined: Oct 11, 2004
Posts: 3830
Originally posted by Svend Rost:
Hi Rathi,

Do you have any ideas yourself? and does the project have any requirements
with respect to technologies?

Ok, my idea..

JavaRanch's Stage Coach System:
-------------------------------
Techonologies: Threads, GUI (Swing pref.) and Sockets
Design Patterns: MVC, Observer/Observable

The Ranch's has a number of monitors which displays some
information about the X next stagecoaches to arrive at the Ranch. The
Monitors get their information from a Server.

Use Swing (or AWT) and the MVC pattern for the monitors. Each monitor is
an observer which enlists to the Server. You'll use Socket communication
between the Server and the Monitors.


So? how about that...

/Svend Rost

[ February 15, 2006: Message edited by: Svend Rost ]


Yes, I am thinking about File Download Accelerator. It will (can) improve the file download (transfer) speed.

At source, I will split the file and send different parts of file through different ports, and then at destination, I will again merge the parts...

Actually, this is just an idea got from one of my friend... not sure, how useful it is, feasible or not?


About your idea, I am not sure I understood it or not... did you mean that, each client will access server for different-different kinds of information and will display it i.e. one client will display the number of online user, other will display number of total user etc...and all the client will get this information from server... I am not sure, but it looks like *web project*...

Can't make game in Java because don't know graphics in Java.

How is my idea??

Thanks a lot.


Svend Rost
Ranch Hand

Joined: Oct 23, 2002
Posts: 904
Originally posted by rathi ji:


Yes, I am thinking about File Download Accelerator. It will (can) improve the file download (transfer) speed.
...

Im sure it's possible, but I wouldn't recommend that project if it's
a "uni project" for a Programming/System development class. To
techinal.

Originally posted by rathi ji:

About your idea, I am not sure I understood it or not...


The server (an observable) will publish events to the minotors(observers).
The data (events) that the server publishes will be received by all
oberservers, and in the simple case each monitor will show the same
information (i.e. the same table of arriving stagecoaches).

Originally posted by rathi ji:

did you mean that, each client will access server for different-different kinds of information and will display it i.e. one client will display the number of online user, other will display number of total user etc...and all the client will get this information from server... I am not sure, but it looks like *web project*...

Does the above have anything with my project suggestion to do? Umm..
assuming you, by client, mean monitor/oberserver then they won't access
the server for information as they are observers (read: http://www.exciton.cs.rice.edu/JavaResources/DesignPatterns/ObserverObservable.htm)

It looks like a web project? It's not, you can make the project in J2SE
and install the "monitor software" on a number of different machines, and
let them get a connection (socket) to a server which will publish data to
the monitors, which then will display the data.

/Svend Rost
Zip Ped
Ranch Hand

Joined: Jul 26, 2005
Posts: 336
RMI is easy to learn. I think it should probably take a day or two to learn the concept and maybe 3 or 4 days to develop the source code(if you do not encounter Socket Connection exceptions..those are really painful..then you would need a All permissions file). Keep it real simple, like passing values back and forth between two objects. If you want to go for multithreading make the Project a real time project. You would need to learn Poller classes...another learning curve :roll:

I am not quite sure, but how about making a driver? Maybe a device driver like the one we create in assemply level language.
Zip Ped
Ranch Hand

Joined: Jul 26, 2005
Posts: 336
Another Idea...You can create an editor tool in java...like a graphics editor. Very similar to the Auto shapes in MS word.

It involves mostly Swings. Maybe if you google it, you might some more information.
ankur rathi
Ranch Hand

Joined: Oct 11, 2004
Posts: 3830
Originally posted by Svend Rost:

Does the above have anything with my project suggestion to do? Umm..
assuming you, by client, mean monitor/oberserver then they won't access
the server for information as they are observers (read: http://www.exciton.cs.rice.edu/JavaResources/DesignPatterns/ObserverObservable.htm)

It looks like a web project? It's not, you can make the project in J2SE
and install the "monitor software" on a number of different machines, and
let them get a connection (socket) to a server which will publish data to
the monitors, which then will display the data.

/Svend Rost


Sorry Svend,
I completely ingored observer word, yes, now I understood it very well...

But I think, it is implementation of observer pattern in a *swing & networking* way... looks small... may be I am wrong here.

But thanks a lot for suggestion.
Svend Rost
Ranch Hand

Joined: Oct 23, 2002
Posts: 904
Originally posted by rathi ji:

But I think, it is implementation of observer pattern in a *swing & networking* way... looks small... may be I am wrong here.


Dont know if it's small - depends on your expirience A decent java
programmer can do the above in one day, a student with no expirience
in Swing and network programming might have to use longer time.

If it's for Uni, then I think in general it's better to choose a small
project, rather than a big one. You can always add functionality.
ankur rathi
Ranch Hand

Joined: Oct 11, 2004
Posts: 3830
Originally posted by Svend Rost:


Dont know if it's small - depends on your expirience A decent java
programmer can do the above in one day, a student with no expirience
in Swing and network programming might have to use longer time.

If it's for Uni, then I think in general it's better to choose a small
project, rather than a big one. You can always add functionality.


For me, it is surely not 1 day.

I have around 10 full days for project. Please suggest according to this....

Thanks.

 
permaculture playing cards
 
subject: Java Project but not Web Project...