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.
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
posted
0
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: 3829
posted
0
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 ]
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.
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: 3829
posted
0
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: 3829
posted
0
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
posted
0
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".
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.
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
posted
0
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*...
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
posted
0
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
posted
0
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.
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
posted
0
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: 3829
posted
0
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....