<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">

<!--
Copyright (c) 2009, 2010, 2011, Oracle and/or its affiliates. All rights reserved.
-->

<html>
    <head>
        <title>NetBeans IDE 7.2 Integration with External Tools</title>
        <meta name="NAV_LINK" content="Java EE Documentation">
        <meta name="description" content="NetBeans 7.1 Integration with External Tools Documentation archive">
        <meta http-equiv="content-type" content="text/html; charset=UTF-8">
        <link rel="stylesheet" href="../../../netbeans.css" type="text/css">

    </head>
    <body>
        <a name="top"></a>
        <h1>NetBeans IDE 7.2 Integration with External Tools</h1>
        
        <p>This page lists documentation that describes how to configure and integrate NetBeans IDE 7.2
            with external tools and services, for example, how to connect to databases,
            manage your source code using version control software,
            and use collaborative features available through Project Kenai.
        </p>
        <p>For additional information about NetBeans 7.2, see <a href="../../../community/releases/72/index.html" title="NetBeans 7.2 Release Information">NetBeans IDE 7.2 Release Information</a> and <a href="../index.html" title="NetBeans IDE 7.2 Documentation">NetBeans IDE 7.2 Documentation</a>.</p>
        <p>For a list of documentation for the current release, see the <a href="../../trails/tools.html">Integration with External Tools in the IDE Learning Trail</a>.</p>


        <h2>All Tutorials and Demos</h2>
        <table width="95%" cellpadding="5">
            <tr class="valign-top">
            <td class="valign-top" style="width: 50%;">

                <!-- +++++++++++++++ left column +++++++++++++++ -->
                <p class="orange bold">Collaborative Development</p>
                <ul>
                   <li><a href="../../docs/ide/team-servers.html">Working With a Team Server in NetBeans IDE</a></li>
                    <li><a href="../../73/ide/kenai-issuetracking.html">Working with Issue Tracking</a></li>
                </ul>

                <p class="orange bold">Source Code Management</p>

                <ul>
				    <li><a href="../../docs/ide/mercurial-queues.html">Mercurial Queues Guide</a></li>
                    <li><a href="../../docs/ide/git.html">Git</a></li>
                    <li><a href="../../docs/ide/mercurial.html">Mercurial</a></li>
                    <li><a href="../../docs/ide/subversion.html">Subversion</a></li>
                    <li><a href="../../docs/ide/clearcase.html">ClearCase</a></li>
                    <li><a href="../../docs/ide/cvs.html">Concurrent Versions System (CVS)</a></li>
                </ul>
                <p class="orange bold">Maven</p>

                 <ul>
                    <li><a href="../../docs/java/maven-hib-java-se.html">Creating a Maven Swing Application Using Hibernate</a></li>
                    <li><a href="http://wiki.netbeans.org/MavenBestPractices">Maven Best Practices</a></li>
                </ul>
                     
                </td>

            <td class="valign-top" style="width: 50%;">
                <!-- +++++++++++++++ right column +++++++++++++++ -->
                
                <p class="orange bold">Screencasts</p>
                <ul>
                   <li><a href="../../73/ide/kenai-issuetracking-screencast.html">Demo: Working with Integrated Issue Tracking</a></li>
                   <li><a href="http://www.youtube.com/watch?v=mQS-CViDHBU">YouTube: FindBugs in NetBeans IDE 7.2</a></li>
                </ul>

               <p class="orange bold">Databases</p>
                <ul>
				  <li><a href="../../docs/ide/oracle-db.html">Connecting to Oracle Database from NetBeans IDE</a></li>
                  <li><a href="install-and-configure-mysql-server.html">Setting Up the MySQL Database Server in the Windows Operating System</a> </li>
                  <li><a href="../../docs/ide/java-db.html">Working with the Java DB (Derby) Database</a></li>
                  <li><a href="../../docs/ide/mysql.html">Connecting to a MySQL Database</a></li>
                  <li><a href="../../docs/web/mysql-webapp.html">Creating a Simple Web Application Using a MySQL Database</a></li>
                </ul>

                


                <p class="orange bold">Optimization</p>
                <ul>
                    <li><a href="../../docs/java/profile-loadgenerator.html">Using a Load Generator in NetBeans IDE</a></li>
                </ul>

            </td>
            </tr>

        </table>

        <!-- ++++++++++++ Other Resources and Training table ++++++++++++ -->
        <table cellspacing="3" width="95%">
            <tr class="valign-top">
                <td class="valign-top" style="width: 50%;">
                    <h2>Other Resources<a name="other"></a></h2>
                    <ul>
                        <li><a href="http://wiki.netbeans.org/NetBeansUserFAQ#Version_Control_Systems" target="_blank">Version Control FAQs</a></li>
                        <li><a href="http://wiki.netbeans.org/NetBeansUserFAQ#Database_Connectivity" target="_blank">Database Connectivity FAQs</a></li>
                        <li><a href="http://www.mysql.com/why-mysql/java/" target="_blank">MySQL and Java - Resources</a></li>
                    </ul>
                </td>
                <td class="valign-top" style="width: 50%;">
                    <h2>Community-Contributed Docs</h2>
                    <ul>
                        <li><a href="http://wiki.netbeans.org/TutorialUsingSVNLocalRepository">Using a Subversion (SVN) Local Repository</a></li>
                        <li><a href="http://wiki.netbeans.org/AccessMssql">Accessing MS Access / MS SQL from NetBeans</a></li>
                    </ul>
                    
                </td>
            </tr>
        </table>
        <p>If you are using NetBeans IDE 7.1, please see the <a href="../../71/ide/index.html">NetBeans IDE 7.1 Integration with External Tools Index</a>.</p>
        <!-- -------------------------------------------------------------------------->
        <hr>
    </body>
</html>
