أعتقد أن الجميع على دراية بـ Tomcat، باعتباره خادم ويب جافا مجانيًا وقويًا، فقد تم تفضيله من قبل العديد من عشاق Java. أحدث إصدار من Tomcat5 يدعم servlet2.4 وjsp2.0 اليوم سأستخدم Tomcat5 وMs sqlserver 000 ابدأ رحلة تكوين تجمع اتصال قاعدة البيانات معًا.
التحضير مطلوب
1. إصدار jdk الذي أستخدمه هو 1.4.01
2. Tomcat 5 أستخدم عنوان تنزيل الإصدار 5.0.16: http://jakarta.apache.org/site/binindex.cgi
3. قاعدة بيانات خادم Mssql 2000
4. يمكن تنزيل برنامج تشغيل jdbc الرسمي لخادم Mssql 2000 مجانًا من موقع Microsoft الرسمي.
بعد تثبيت البرنامج أعلاه، أدخل التكوين الفعلي :)
1. ابحث عن دليل تثبيت jdbc، وقم بتغيير ملف msbase، بالإضافة إلى الملفات الثلاثة mssqlserver.jar وmsutil.jar، انسخها إلى $CATALINA_HOME/common/lib/ (يمثل CATALINA_HOME دليل التثبيت الخاص بـ Tomcat5)
2. استخدم محرر النصوص (editplus). ) افتح الملف $CATALINA_HOME/conf/server.xml، وابحث عن المكان الذي تم تكوين السياق فيه، والصق الكود التالي في الملف
<Context path="/DBTest" docBase="D:rautinee Workdb"
debug = "5" reloadable = "true" crossContext = "true">
<Logger className = "org.apache.catalina.logger.FileLogger"
البادئة = "localhost_DBTest_log." لاحقة = ".txt"
الطابع الزمني = "صحيح"/>
<اسم المورد = "jdbc/TestDB"
مصادقة = "حاوية"
اكتب = "javax.sql.DataSource"/>
<ResourceParams name = "jdbc/TestDB">
<المعلمة>
<الاسم>المصنع</الاسم>
<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
</parameter>
<!-- تأكد من الحد الأقصى لعدد اتصالات الديسيبل
قم بتكوين mysqld max_connections كبيرة بما يكفي للتعامل معها
جميع اتصالات قاعدة البيانات الخاصة بك اضبطها على 0 بلا حدود.
-->
<المعلمة>
<الاسم>ماكس أكتيف</الاسم>
<القيمة>100</القيمة>
</parameter>
<!-- الحد الأقصى لعدد اتصالات الديسيبل الخاملة التي سيتم الاحتفاظ بها في التجمع.
اضبط على 0 بلا حدود.
-->
<المعلمة>
<name>maxIdle</name>
<القيمة>30</القيمة>
</parameter>
<!-- الحد الأقصى لوقت الانتظار حتى يصبح اتصال ديسيبل متاحًا
في مللي ثانية، في هذا المثال 10 ثانية يتم طرح استثناء إذا
تم تجاوز هذه المهلة. اضبط على -1 للانتظار إلى أجل غير مسمى.
-->
<المعلمة>
<name>maxWait</name>
<القيمة>10000</القيمة>
</parameter>
<!-- اسم مستخدم وكلمة مرور MSSQLserver dB لاتصالات dB -->
<المعلمة>
<الاسم>اسم المستخدم</الاسم>
<القيمة>سا</القيمة>
</المعلمة>
<المعلمة>
<الاسم>كلمة المرور</الاسم>
<القيمة></القيمة>
</parameter>
<!-- اسم الفئة لبرنامج تشغيل mssqlserver JDBC -->
<المعلمة>
<الاسم>اسم فئة السائق</الاسم>
<value>com.microsoft.jdbc.sqlserver.SQLServerDriver</value>
</parameter>
<!-- عنوان url الخاص باتصال JDBC للاتصال بـ mssqlserver dB.-->
<المعلمة>
<الاسم>عنوان URL</الاسم>
<value>jdbc:microsoft:sqlserver://localhost:1433;databasename=Northwind</value>
</المعلمة>
</ResourceParams>
</Context>
ملاحظة: كلمة مرور sa في قاعدة البيانات المحلية الخاصة بي فارغة. تستخدم قاعدة البيانات Northwind. اسم الدليل الخاص بي هو
DBTest المحتوى الأصلي بالكود التالي
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE تطبيق ويب عام
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
" http://java.sun.com/dtd/web-app_2_3.dtd ">
<تطبيق الويب>
<description>تطبيق اختبار خادم MSSql</description>
<المرجع-المرجع>
<وصف>اتصال قاعدة البيانات</description>
<res-ref-name>jdbc/TestDB</res-ref-name>
<res-type>javax.sql.DataSource</res-type>
<res-auth>حاوية</res-auth>
</resource-ref>
</web-app>
حسنًا، اكتمل التكوين، والخطوة التالية هي كتابة ملفين لاختبار ما إذا كان الاتصال ناجحًا.
لقد استخدمت هنا http://jakarta.apache.org المثال أعلاه
هو أولاًحزمة
ملفات الفول
import javax.naming.*;
استيراد javax.sql.*;
import java.sql.*;
public class DBTest {
String foo = "غير متصل";
شريط كثافة العمليات = -1؛
الحرف الفراغي العام () {
يحاول{
السياق ctx = new PrimaryContext();
إذا (ctx==فارغة)
رمي استثناء جديد ("Boom - لا يوجد سياق")؛
DataSource ds = (DataSource)ctx.lookup("java:comp/env/jdbc/TestDB")
;
اتصال conn = ds.getConnection();
إذا (كون != فارغة) {
foo = "حصلت على اتصال"+conn.toString();
البيان stmt = conn.createStatement();
مجموعة النتائج الأولى =
stmt.executeQuery("اختر * من الطلبات");
إذا (rst.next()) {
foo=rst.getString("معرف العميل");
bar=rst.getInt("معرف الطلب");
}
conn.Close();
}
}
}قبض (استثناء ه) {
printStackTrace();
}
}
public String getFoo() { return foo }
public int getBar() { شريط الإرجاع؛}
}
ثم ملف Index.jsp
<html>
<الرأس>
<title>اختبار قاعدة البيانات</title>
</الرأس>
<الجسم>
<%
foo.DBTest tst = new foo.DBTest();
tst.init();
%>
<h2>نتائج بحث جافا لخادم SQL 2000</h2>
فو <%= tst.getFoo() %><br/>
الشريط <%= tst.getBar() %>
</body>
</html>
'
يتم تجميع موقع www.downcodes.com وتشغيله إذا لم يحدث أي خطأ، فيجب استرداد السجل.
ما يتم عرضه في IE الخاص بي هو
نتائج بحث السيدة SQL Server 2000 جافا
فوفينيت
شريط 10248
حسنًا، تم إعداده بنجاح!
الوثائق المرجعية:
http://jakarta.apache.org/tomcat/tomcat-5.0-doc/jndi-datasource-examples-howto.html يحتوي على برنامج تعليمي حول ربط mysql وOracle8i ويمكن للأصدقاء المهتمين الاطلاع عليه.
البريد الإلكتروني للكاتب هايزاي: [email protected] http://www.tryitsoft.com