What is the best back end to use with a Java or C# front end?

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • Corwin Moyne
    New Member
    • Feb 2012
    • 37

    What is the best back end to use with a Java or C# front end?

    4 years ago I designed an Access database for a company I worked for. It has a back end on the company server and multiple (about 6) front ends. It is in use everyday and works well but is not without problems.

    I have just completed my third year of a Computer Science degree where I learned a lot of new skills. I have been given the opportunity to redesign the system over the summer and I am trying to decide what is the best way forward?

    I want to design a Java front end (maybe C#) but I am unsure which database to use. I have used MySql for recent college projects but how will this perform in a multi-user environment?

    Also if I use Java I will be creating a runnable jar file. Will this work on multiple machines connected to a backend?

    Should I consider another approach?
  • chaarmann
    Recognized Expert Contributor
    • Nov 2007
    • 785

    #2
    Do not rely on commercial, proprietary databases if you want to make your system future-proof. Use Hibernate to access the database. Then you can switch databases easily in the future without rewriting code. (I would consider HSQLDB for testing and demo, but MySql or Oracle for the production environment).

    About the front end: if you write it in java, then you can run it on any operating system (appple OS, Android, Unix, Windows). If you write it in C#, then it runs only on Windows. So your choice to use Java is good. But there are still a few OS-dependent problems, and then each client must install your java program and your java program for sure must implement something like a client-server-architecture for data exchange with other users. So I would propose another solution: Write it as a Browser 2.0 App (use Dojo or another Ajax framework) in HTML5. Then everybody can run it (Also tablet-PC, mobile devices etc.), no matther what OS they have. Then use Apache Tomcat as your backend where you run JSP and Java servlets. Put the database on your backend server or on an additional server.
    This is a high scalable setup that will grow with the future needs and components will be easy to exchange.

    Comment

    • Corwin Moyne
      New Member
      • Feb 2012
      • 37

      #3
      Thanks for the reply. I think your suggestion is good but I have no experience with jsp or tomcat. I do have experience with php and phpmyadmin. I could use that. The reason I wanted to create a desktop application is that is what I do best.

      Comment

      • mHealth
        New Member
        • Jun 2014
        • 13

        #4
        MySQL would be the best choice. MS Access is not a choice since you may have to switch OS in future.

        Comment

        Working...