Hi all, my work is almost same as Rajpal is doing. i have to implement a discussion forum like this at javaranch. i don't want to use any database becoz i believe that jdbc-odbc can not suppot large amount of connection request. but if required i can go for MySql. that is for sure that i will be using jsp/servlets for it. can anybody suggest me,what should be my steps to complete this assigned work within 20days. Is there any site where we can find skeleton code for this type of work. On http://jspin.com i found two links for jive and eForum. but i am unable to install them completely.
The first thing to consider is to decide on the absolute minimum of features which will be acceptable to the customer in the finished product, and prioritize them. 20 days is very short for a project of this nature if you are unsure of what you need to produce. The second thing to consider is what is the estimated usage of the initial delivery of this project. Will it (and be honest) get a lot of users and a lot of messages (like JavaRanch) or will it be something which only a few people "play" with. If it is big and busy, you are far better off using a database. Don't bother with JDBC-ODBC; get a good, fast database with a proper JDBC driver. MySQL may be a good choice, especially if you have it installed already. If your bulletin board is to be small and only occasionally used, you can use something like a Properties object to store your messages, and save it out to disk from time to time in case the server crashes. Next, choose and install a servlet container with the simplest installation and most helpful facilities. Tomcat ( http://jakarta.apache.com/ ), although the standard, can be hard to install, many people find Resin ( http://www.caucho.com/ ) easier. Install it and make sure it works and you know how to install and update web applications. Then start to build your application. Choose a very simple test case first and make that work, then keep adding to it (refactoring at each stage to make sure it is as simple as possible to add each new feature). Stop when you run out of time or have done all the features you need. To summarize. Be harsh: reject anything which is not absolutely necessary, leave that for future versions. Be realistic: don't build in complicated solutions for problems which may never occur. Be focussed: solve one test case at a time, don't be tempted to do several, you'll never know which bit the bugs are in. Use the most efficient tools, but don't get hung up on installing and configuring them. Finally, good luck!
Thanks Frank for your response. actually it is a part of a e-commerce project(3 months).and i am already using tomcat for jsp/servlet container. 20 days is just estimated time & it may extend, if required. But i don't have any idea of Properties object. this forum will be having around 10000 hits per month.so what do u suggest, shall i go for database with jdbc driver. right now i have started writing jsp for it using simple flat file. and to extract data from text file i am using File, FileReader, BufferedReader object. reading line by line , and then parting it into different tokens using StringTokenizer. But i believe it will become too completed reading data from a flat file.
Before you get too deep in the code, you really need to decide what "operations" are needed. Do you need forums and threads like JavaRanch, or is a different model more appropriate? If you are using forums and threads, can the same thread appear in more than one forum or is a thread associated with a forum forever? Similarly for messages - can a message appear in more than one place? Do you need the ability to edit messages after they are written? How much (if any) information do you want to capture about your users? Do you need to protect some or all forums? Do you ned a compulsory log-in before viewing, or anyone can view but posting requires a login? and so on. and so on.... If you can post a list of these sort of decisions we can help point you in the right direction as to the internal architecture. I can say that any form of parsing of flat files for every request is likely to be a fairly bad choice. 10000 hits/month translates to (at a guess) somewhere around one hit every 15 seconds. Do you know if most of these will be reads, or if there will be a lot of writes?