Mô hình Client/Server Thực tế mô hình Client/Server là sự mở rộng tự nhiên và tiện lợi cho việctruyền thông lên các máy tính cá nhân mô hình này cho phép xây dựng các chơngtrình Client/S
Trang 1Mục lục
Lời nói đầu 6
Chơng 1 9
Giới thiệu về Mô hình Web server- Web client 9
1.1 Thuật ngữ Client, Server 9
1.2 Mô hình Client/Server 9
1.3 ứng dụng mô hình Client/Server 12
1.4 Mô hình Web Client- Web Server 13
Chơng 2 16
Giới thiệu về Matlab server pages 16
2.1.Matlab Server Pages (MSP) là gì? 16
2.2 Cơ bản về Matlab 16
2.3 Kiến trúc của MSP 19
2.4 Kỹ thuật MSP 20
2.4.1 Kỹ thuật JavaServer Pages(JSP) 20
2.4.2 Kỹ thuật JSP Standard Tag Library (JSTL) 21
2.4.3 Kỹ thuật JavaServer Faces (JSF) 21
2.4.4 Kỹ thuật Java DataBase Connectivity(JDBC) 22
2.4.5 Kỹ thuật Remote Method Invocation (RMI) 22
2.4.6 Kỹ thuật Java 4 Web Services 22
2.5 Th viện thẻ trong Matlab 23
2.5.1 Thẻ Clean 23
2.5.2 Thẻ Command 23
2.5.3 Thẻ Engine 23
2.5.4 Thẻ GetArray 23
2.5.5 Thẻ GetVector 24
2.5.6 Thẻ GetScalar 24
2.5.7 Thẻ GetCharArray 24
2.5.8 Thẻ GetParam 24
2.5.9 Thẻ MultiCommand 25
2.5.10 Thẻ PlotData 25
2.5.11 Thẻ Thumbnail 25
2.5.12 Thẻ WriteData 26
2.6.Dịch vụ web Matlab 26
2.6.1 engineOpen() 26
2.6.2 engineClose() 26
2.6.3 eval() 26
2.6.4 getArray() 26
2.6.5 getVector() 26
2.6.6 getScalar() 26
2.6.7 putArray() 26
2.6.8 putVector() 27
2.6.9 putScalar() 27
2.6.10 getImage() 27
2.7 Tải về và cài đặt MSP 27
2.8 Một số ví dụ sử dụng MSP 32
2.8.1 Xử lý dữ liệu kiểu số thực 32
2.8.2 Xử lý dữ liệu kiểu số phức 35
2.8.3 Xử lý dữ liệu kiểu ma trận thực 38
2.8.4 Xử lý dữ liệu kiểu ma trận số phức 41
2.8.5 Vẽ đồ thị 46
Chơng 3 50
Kết quả thực hiện 50
3.1 Thực hiện chuyển đổi giữa hai dạng biểu diễn của số phức 50
3.1.1 Chuyển đổi đại số-ơle 50
Trang 23.1.2 Chuyển đổi ơle- đại số 51
3.2 Giải mạch điện RLC nối tiếp 52
3.3 Giải mạch điện 3 nhánh song song 54
3.4 Tính các thông số ma trận đặc trng A và B của mạng 2 cửa hình T và pi .57 3.4.1 Mạng hình T 57
3.4.2 Mạng hình Pi 60
3.5 Giải mạch điện ba pha 62
3.6 Tính ảnh Laplace ngợc 65
Chơng 4 68
Kết luận 68
Tài liệu tham khảo 69
Phụ lục 70
Một số thẻ trong Matlab 70
Trang 3Danh môc c¸c ký hiÖu, c¸c ch÷ viÕt t¾t
MSP : Matlab Server Pages
RMI : Remote Method Invocation
JSP : Java Server Pages
JSTL : Java Standard Tag Library
SQL : Structured Query Language
JSF : Java Server Pages
J2EE : Java 2 Platform Enterprise Edition
UI : User Interface
JDBC : Java DataBase Connectivity
API : Application Programming Interface
DBMS : DataBase Management System
WSDL : Web Service Defination Language
BPEL : Business Process Execution Language
MLSF : Multi Lingual String Format
WS-I : Web Services Interoperability
Trang 4Danh mục các hình vẽ
Hình 1.1 Mô hình Client/Server 9
Hình 2.1 Cấu trúc mở rộng của Matlab cùng với các toolboxes và blocksets 17
Hình 2.2 Tổng quan về Matlab 18
Hình 2.3 Kiến trúc 3 tầng của MSP 19
Hình 2.4 Biểu tợng cài đặt MSP 27
Hình 2.5 Giao diện khởi động cài đặt MSP 28
Hình 2.6 Giao diện thông tin về MSP 28
Hình 2.7 Giao diện thông tin về bản quyền của MSP 29
Hình 2.8 Giao diện lựa chọn đờng dẫn cài đặt MSP 29
Hình 2.9 Giao diện xác nhận tạo th mục cài đặt MSP 29
Hình 2.10 Giao diện cho phép cài đặt MSP tại th mục đã chọn 30
Hình 2.11 Giao diện quá trình cài đặt MSP 30
Hình 2.12 Giao diện thông báo hoàn thành cài đặt MSP 30
Hình 2.13 Giao diện kết thúc quá trình cài đặt 31
Hình 2.14 Biểu tợng cài đặt Java 31
Hình 2.15 Biểu tợng đăng ký MATLAB nh là COM Server 31
Hình 2.16 Biểu tợng chỉnh sửa các đặc tính của MSP 31
Hình 2.17 Đờng dẫn của các th mục chứa mã lệnh và hình ảnh 32
Hình 2.18 Biểu tợng khởi động MSP 32
Hình 2.19 Giao diện thực hiện phép tính cộng, trừ, nhân, chia 2 số thực 32
Hình 2.20 Giao diện sau khi nhập số liệu 33
Hình 2.21 Giao diện sau khi có kết quả 33
Hình 2.22 Giao diện thực hiện phép tính cộng, trừ, nhân, chia 2 số phức 35
Hình 2.23 Giao diện sau khi nhập số liệu 35
Hình 2.24 Giao diện sau khi có kết quả 36
Hình 2.25 Giao diện bài toán xử lý dữ liệu kiểu ma trận thực 38
Hình 2.26 Giao diện sau khi nhập số liệu 39
Hình 2.27 Giao diện sau khi có kết quả 39
Hình 2.28 Giao diện thực hiện bài toán xử lý dữ liệu của ma trận số phức 41
Hình 2.29 Giao diện sau khi nhập số liệu 42
Hình 2.30 Giao diện sau khi có kết quả 42
Hình 2.31 Giao diện thực hiện vẽ đồ thị hàm số 46
Hình 2.32 Giao diện sau khi nhập số liệu 47
Hình 2.33 Giao diện sau khi có kết quả 47
Hình 3.1 Giao diện thực hiện chuyển đổi số phức dạng đại số sang dạng ơle 50
Hình 3.2 Giao diện sau khi nhập số liệu 50
Hình 3.3 Giao diện sau khi có kết quả 51
Hình 3.4 Giao diện thực hiện chuyển đổi số phức dạng ơle dang dạng đại số 51
Hình 3.5 Giao diện sau khi nhập số liệu 52
Hình 3.6 Giao diện sau khi có kết quả 52
Hình 3.7 Giao diện thực hiện giải mạch điện RLC nối tiếp 53
Hình 3.8 Giao diện sau khi nhập số liệu 53
Hình 3.9 Giao diện sau khi có kết quả 54
Hình 3.10 Giao diện thực hiện giải mạch điện 03 nhánh song song 55
Hình 3.11 Giao diện sau khi nhập số liệu 55
Hình 3.12 Giao diện sau khi có kết quả 56
Hình 3.13 Giao diện tính các thông số ma trận đặc trng A và B của mạng 2 cửa hình T 57
Hình 3.14 Giao diện sau khi nhập số liệu 58
Hình 3.15 Giao diện sau khi có kết quả 59
Hình 3.16 Giao diện tính các thông số ma trận đặc trng A và B của mạng 2 cửa hình Pi 60
Hình 3.17 Giao diện sau khi nhập số liệu 61
Hình 3.18 Giao diện sau khi có kết quả 62
Hình 3.19 Giao diện thực hiện giải mạch điện ba pha 63
Hình 3.20 Giao diện sau khi nhập số liệu 64
Hình 3.21 Giao diện sau khi có kết qủa 65
Trang 5Hình 3.22 Giao diện thực hiện biến đổi Laplace ngợc 66 Hình 3.22 Giao diện sau khi nhập số liệu 66 Hình 3.23 Giao diện sau có kết quả 67
Trang 6Lời nói đầu
Internet không còn là khái niệm xa lạ với ngời Việt Nam Đối với ngời sử dụngInternet ở mức độ trung bình có thể tìm kiếm một lợng thông tin khổng lồ thôngqua việc tìm kiếm, chia sẻ dữ liệu, thông tin trên Internet Internet liên kết mọi ngờivới nhau để học hỏi kinh nghiệm, phát triển kiến thức Internet đã xóa bỏ khoảngcách về địa lý cũng nh về thời gian
Một trong số các dịch vụ của Internet nhằm giúp cho việc trao đổi thông tin trởnên thuận tiện và dễ dàng đó chính là World Wide Web(WWW) WWW gọi tắt làWeb - là mạng lới nguồn thông tin cho phép mọi ngời có thể khai thác thông tinqua một số công cụ hoặc là chơng trình hoạt động dới các giao thức mạng
Web trở nên phổ biến vì Web cung cấp cho ngời sử dụng khả năng truy cập dễdàng từ đó ngời sử dụng có thể khai thác các thông tin đa dạng trên Internet baogồm văn bản, hình ảnh, âm thanh… Web đợc coi là đa phơng tiện của mạngInternet
Để xem và đọc các thông tin trên web sử dụng trình duyệt Web, thông dụngnhất là sử dụng trình duyệt Microsoft Internet Exolorer (IE) Tùy thuộc vào yêu cầu
cụ thể mà thông tin đợc định dạng dới dạng thể hiện khác nhau
Đối với một trang web thờng có các thành phần sau: hình ảnh, biểu ngữ,counter, logo, search form, nevigator, header, footer, multimedia, forum
Trên đây là các thành phần thờng có ở các trang web thông thờng Tuy nhiên
đối với các trang web đợc sử dụng để giải quyết các bài toán kỹ thuật ví dụ nh giảicác bài toán Lý thuyết mạch đòi hỏi khối lợng tính toán lớn do đó thời gian tải củatrang thờng nhiều Vì vậy cần phải giảm thiểu những thành phần có thể làm chậmviệc tải trang web nh các hình ảnh động, âm thanh, video
Bạn có thể sử dụng ngôn ngữ lập trình dạng nh Java-(một trong số các ngônngữ để thiết kế trang web động có thể phù hợp với yêu cầu thiết kế trang web đểgiải bài toán Lý thuyết mạch) Nhng sẽ mất rất nhiều thời gian để triển khai côngviệc, đặc biệt để phát hiện và sửa lỗi Trong quá tìm kiếm ngôn ngữ thay thế Java cóthể thấy Matlab Server Pages(MSP) là giải pháp thích hợp Khi sử dụng MSP chỉ cần
sử tạo hai trang HTML trong đó một trang HTML để nhận dữ liệu đầu vào của bàitoán và một trang HTML để hiện thị kết quả ra Trong trang HTML này để có thểgiao tiếp(gọi) Matlab thực hiện tính toán bằng cách sử dụng các thẻ Matlab Các thẻnày đợc sử dụng giống nh sử dụng các thẻ HTML do đó rất thuận tiện cho ngời sửdụng Hơn nữa vì MSP gọi Matlab thực hiện tính toán vì vậy kết quả bài toán đáng
tin cậy Với nhận xét nh trên để giải quyết yêu cầu của luận văn với tiêu đề Xây dựng trang web hỗ trợ giải bài tập lý thuyết mạch bằng công cụ Matlab sẽ sử
dụng công cụ MSP để tạo trang web Đây là đề tài có tính ứng dụng cao bởi vì với sựphát triển của Internet nh hiện nay và những lợi ích của nó đối với ngời sử dụng làmcho số ngời dùng tăng vọt Đặc biệt đối với học sinh, sinh viên các trờng cao đẳng,
đại học Thông qua Internet ngời học có thể tìm thấy lợng thông tin hữu ích phục vụ
đắc lực cho quá trình học tập và nghiên cứu của mình
Nội dung của luận văn bao gồm các chơng:
Trang 7Chơng 1: Giới thiệu về Web server- Web client: Giới thiệu tổng quan về môhình server, client; mô hình web server, web client và ứng dụng của chúng
Chơng 2: Giới thiệu về Matlab Server Pages: Giới thiệu tổng quan về MattlabServer Pages(MSP), các đặc điểm của MSP, th viện thẻ, cách thức tải về và cài đặtMSP và một số ví dụng minh hoạ
Chơng 3: Kết quả thực hiện: Là một số kết quả triển khai sử dụng MSP baogồm xây dựng các bài toán tính chuyển đổi giữa hai dạng biểu diễn của số phức; giảimạch điện RLC nối tiếp; mạch ba nhánh song song; Tính các thông số Aik, Bik củamạng hai cửa hình T và Pi; mạch ba pha; tính ảnh Laplace ngợc
Chơng 4: Kết luận: Đã sử dụng MSP giải đợc một số bài toán lý thuyết mạch
và hớng phát triển của đề tài
Trang 8Chơng 1
Giới thiệu về MÔ Hình Web server- Web client
1.1 Thuật ngữ Client, Server
Thuật ngữ Server đợc dùng cho những chơng trình thi hành nh một dịch vụ trêntoàn mạng Các chơng trình Server này chấp nhận tất cả các yêu cầu hợp lệ đến từmọi nơi trên mạng, sau đó thi hành dịch vụ trên Server và trả kết quả về máy yêucầu
Một chơng trình đợc coi là Client khi nó gửi các yêu cầu tới máy có chơngtrình Server và chờ đợi câu trả lời từ Server Chơng trình Server và Client nói chuyện
với nhau bằng các thông điệp (message) thông qua một cổng truyền thông liên tác IPC (Interprocess Communication) Để một chơng trình Server và một chơng trình
Client có thể giao tiếp đợc với nhau thì giữa chúng phải có một chuẩn để giao tiếp,
chuẩn này đợc gọi là giao thức (Protocol) Nếu một chơng trình Client nào muốn
yêu cầu lấy thông tin từ Server thì nó phải tuân theo giao thức Server đa ra Với sựphát triển mạng nh hiện nay có rất nhiều giao thức chuẩn trên mạng ra đời Các giaothức chuẩn (ở tầng mạng và tầng vận chuyển) đợc sử dụng rộng rãi nh hiện nay nh:Giao thức TCP/IP, giao thức SNA của IBM, OSI, ISDN, X2.5 hoặc giao thức LAN toLAN NetBios
Một máy tính chứa chơng trình Server đợc coi là một máy chủ hay máy phục
vụ (Server) và máy chứa chơng trình Client đợc coi là máy khách(Client) Mô hình
trên mạng mà các máy chủ và máy khách giao tiếp với nhau theo một hoặc nhiềudịch vụ đợc coi là mô hình Client /Server
1.2 Mô hình Client/Server
Thực tế mô hình Client/Server là sự mở rộng tự nhiên và tiện lợi cho việctruyền thông lên các máy tính cá nhân mô hình này cho phép xây dựng các chơngtrình Client/Server một cách dễ dàng và sử dụng chúng để liên tác với nhau đạt hiệuquả hơn Mô hình Client/Server nh sau:
Client/Server
Đây là mô hình tổng quát nhất, trên thực tế thì một Server có thể đợc nối tớinhiều Server khác nhằm làm việc hiệu quả và nhanh chóng hơn Khi nhận đợc mộtyêu cầu từ Client, Server này có thể gửi tiếp yêu cầu vừa nhận đợc cho một Serverkhác Ví dụ nh Database Server vì bản thân nó không thể xử lý yêu cầu này đợc Máy Server có thể thi hành các nhiệm vụ đơn giản hoặc phức tạp Ví dụ nh mộtmáy chủ trả lời thời gian hiện tại trong ngày khi một máy Client yêu cầu lấy thôngtin về thời gian, nó sẽ phải gửi yêu cầu lấy thông tin về thời gian theo một một tiêuchuẩn do một Server đặt ra, mức yêu cầu đợc chấp nhận thì máy Server sẽ trả về mộtthông tin mà Client yêu cầu Có rất nhiều dịch vụ trên mạng nhng nó hoạt động theo
ServerGửi yêu cầu
Trả về trang Web
Trang 9nguyên lý là nhận các yêu cầu từ Client sau đó xử lý và trả lại các yêu cầu choClient yêu cầu
Thông thờng chơng trình Client/ Server đợc thi hành trên hai máy khác nhaucho dù lúc nào Server cũng ở trạng thái sẵn sàng chờ nhận yêu cầu từ Client nhng
trên thực tế một tiến trình liên tục qua lại (interaction) giữa Client với Server lại bắt
đầu ở phía Client khi mà Client gửi tín hiệu yêu cầu tới Server
Các chơng trình Server thờng đều thi hành ở mức ứng dụng (tầng ứng dụng củamạng) Sự thuận lợi của phơng pháp này là nó có thể làm việc trên bất cứ một mạngmáy tính nào hỗ trợ giao thức truyền thông chuẩn mà cụ thể ở đây là giao thức TCP/
IP Với các giao thức chuẩn này cũng giúp cho các nhà sản xuất có thể tích hợpnhiều sản phẩm khác nhau của họ lên mạng mà không gặp khó khăn gì Với cácchuẩn này thì các chơng trình Server cho một ứng dụng nào đó có thể thi hành trênmột hệ thống chia sẻ thời gian với nhiều chơng trình và dịch vụ khác hoặc nó có thểchạy trên chính một máy tính cá nhân bình thờng Có thể có nhiều Server cùnh làmmột dịch vụ, chúng có thể nằm trên nhiều máy tính hoặc một máy tính
Với mô hình trên thì mô hình Client/Server chỉ mang đặc điểm của phần mềmkhông liên quan đến phần cứng mặc dù trên thực tế yêu cầu cho một máy Server làcao hơn rất nhiều so với máy Client Lý do là máy Server phải quản lý rất nhiều cácyêu cầu từ các Client khác nhau trên mạng máy tính
Đánh giá về mô hình Client/Server
Có thể nói rằng với mô hình Client/Server thì dờng nh mọi thứ đều nằm trên bàn ngời sử dụng, nó có thể truy cập dữ liệu từ xa (bao gồm các công việc nh gửi và nhận file, tìm kiếm thông tin )
Mô hình Client/Server cung cấp một nền tảng lý tởng cho phép tích hợp các kỹ thuật hiện đại nh mô hình thiết kế hớng đối tợng, hệ chuyên gia, hệ thông tin địa lý(GIS)
Một trong những vấn đề nảy sinh trong mô hình này đó là tính an toàn và bảo mật thông tin trên mạng Do phải trao đổi dữ liệu giữa hai máy ở hai khu vực khác nhau cho nên dễ dàng xẩy ra hiện tợng thông tin truyền trên mạng bị lộ
Trong mô hình Client/Server ngời ta còn định nghĩa cụ thể cho một máy Client
là một máy trạm mà chỉ đợc sử dụng bởi một ngời dùng thể hiện tính độc lập của nó.Máy Client có thể sử dụng các hệ điều hành bình thờng nh Win9x, Dos OS/2 Bảnthân mỗi một Client cũng đợc tích hợp nhiều chức năng trên hệ điều hành mà nóchạy Nhng khi đợc nối vào một mạng LAN/WAN theo mô hình Client/Server thì nócòn có thể sử dụng thêm các chức năng do hệ điều hành mạng đó cung cấp với nhiềudịch vụ khác nhau(cụ thể là các dịch vụ đó do các Server trên mạng này cung cấp) ví
dụ nó có thể yêu cầu lấy dữ liệu từ một Server hay gửi dữ liệu lên Server đó ) Thực
tế trong các phần ứng dụng của mô hình Client/Server các chức năng hoạt độngchính là sự kết hợp giữa Client/Server với sự chia sẻ tài nguyên, dữ liệu trên cả haimáy
Vai trò của Client trong mô hình Client/Server:
Client đợc coi là ngời sử dụng các dịch vụ trên mạng do một hoặc nhiều máychủ cung cấp và Server đợc coi nh là ngời cung cấp dịch vụ để trả lời các yêu cầu
Trang 10của Client điều quan trọng là phải hiểu đợc vai trò hoạt động của nó trong một môhình cụ thể một máy Client trong mô hình này lại là Server trong một mô hình khác.
Ví dụ nh một máy trạm làm việc nh một Client thờng trong mạng LAN nhng đồng
thời nó có thể đóng vai trò nh một máy in chủ (Printer Server) cung cấp dịch vụ in
ấn từ xa cho nhiều Client khác Việc sử dụng Client đợc hiểu nh là bề nổi của cácdịch vụ trên mạng, nếu có thông tin vào hoặc ra thì chúng sẽ đợc hiển thị trên máyClient
Server còn đợc định nghĩa nh một máy tính nhiều ngời sử dụng (Multi user
computer) Vì một Server phải quản lý nhiều yêu cầu từ các Client trên mạng cho
nên nó hoạt động sẽ tốt hơn nếu hệ điều hành của nó là đa nhiệm với các tính nănghoạt động độc lập song song với nhau nh hệ điều hành UNIX, WindowsNT Servercung cấp và điều khiển các tiến trình truy cập vào tài nguyên của hệ thống Các ứngdụng chạy trên Server phải đợc tách rời nhau để một lỗi của ứng dụng này khônglàm hỏng ứng dụng khác Tính đa nhiệm đảm bảo một tiến trình không sử dụng toàn
bộ tài nguyên của hệ thống
Vai trò của Server nh là một nhà cung cấp dịch vụ cho các Client yêu cầu tớikhi cần, các dịch vụ cơ sở dữ liệu in ấn, truyền file, hệ thống Các ứng dụng Servercung cấp các dịch vụ máy tính chức năng để hỗ trợ cho các hoạt động trên các máyClient có hiệu quả tốt hơn Sự hỗ trợ của các dịch vụ này có thể là toàn bộ hoặc chỉmột phần thông qua IPC, để đảm bảo tính an toàn trên mạng cho nên Server này còn
có vai trò nh là một nhà quản lý toàn bộ quyền truy nhập dữ liệu của máy Client, nóicác khác nó là vai trò quản lý mạng Có rất nhiều cách thực hiện nhằm quản trịmạng có hiệu quả, một trong những cách đang đợc sử dụng nhiều nhất hiện nay là
dùng tên Login và mật khẩu (Password)
1.3 ứng dụng mô hình Client/Server
WWW (World Wide Web): Có nhiều ngời đã nghe đến thuật ngữ này nhng lại
không hiểu nó là cái gì, thậm chí có ngời đã sử dụng nó nhng cũng không địnhnghĩa chính xác đợc WWW là cái gì ? WWW là tập hợp các văn bản tài liệu
(document) có mối liên kết (Link) với nhau trên mạng Internet Bởi vì WWW đang
phát triển rất mạnh mẽ và đợc quảng bá khắp nơi nên ngời sử dụng thờng nhầm lẫnWWW là Internet nhng thực tế nó chỉ là một dịch vụ của Internet
Ngày nay Web là một dịch vụ lớn nhất của Internet sử dụng giao thức truyền
văn bản siêu liên kết HTTP (Hypertext Transfer Protocol) để hiển thị các siêu văn
bản (còn gọi là trang Web) và hình ảnh trên một màn hình đồ hoạ Thuật ngữ siêuvăn bản đợc hiểu nh việc trình bầy các văn bản bình thờng có mối liên kết với nhau.Ngời sử dụng chỉ việc bấm chuột vào một phần của văn bản thì một văn bản khác cómối liên kết đó sẽ hiện lên, có thể thay Web mới này ở một nơi hoàn toàn khác vớitrang Web liên kết đến nó Mỗi một mối liên kết đến một trang siêu văn bản đợc gọi
là địa chỉ của trang văn bản đó, địa chỉ này có tên là URL(Uniform Resource
Locators) gọi là bộ định danh tài nguyên Để tạo ra một trang Web ngời ta sử dụng
một ngôn ngữ gọi là ngôn ngữ đánh dấu siêu văn bản HTML (HyperText Makeup
Language) vì vậy ngời ta còn gọi các trang Web là trang HTML
Nh vậy với dịch vụ này trên mạng, ngời sử dụng máy tính có thể truy cập vàomạng để lấy các thông tin khác nhau dựa trên văn bản, hình ảnh thậm chí cả âm
Trang 11thanh (thông tin đa phơng tiện-Multimedia) Giao diện giữa ngời và máy ngày càngtrở nên thân thiện, nhờ các biểu tợng và dùng các thiết bị ngoại vi nh chuột, bútquang Ngời dùng mạng không cần có trình độ cao về tin học, với một chút vốntiếng Anh đủ để hiểu những gì máy tính thông báo cũng có thể dùng nó nh một công
cụ đắc lực
Công nghệ Web cho phép xử lý các trang dữ liệu đa phơng tiện và truy nhậptrên mạng diện rộng đặc biệt là Internet Thực chất Web là hội tụ của Internet Cácphần mềm lớn thi nhau thể hiện bộ duyệt Web nh Mosaic, NetCape, InternetExplorer, WinWeb, Midas WWW rất tiện lợi cho ngời dùng bình thờng, không phảivất vả mới hiểu đợc các thủ tục của Internet và dễ dàng truy cập vào thông tin trênhàng ngàn máy chủ đặt ở khắp nơi trên thế giới một cách nhanh chóng và hiệu quả
Có công nghệ Web thực chất chúng ta đã bớc vào một thập kỷ mà mọi thông tin cóthể có ngay trên bàn làm việc của mình
Nh vậy dịch vụ WWW trên mạng có một ứng dụng rất to lớn trong thời đạithông tin nh hiện nay
Web đã thay đổi cách biểu diễn thông thờng bằng văn bản toàn kiểu chữnhàm chán sang kiểu thông tin sinh động có hình ảnh, âm thanh Với một bộ duyệt
có trang bị tiện ích đồ hoạ ta dễ dàng xử lý thông tin đa phơng tiện khác
Cho phép tìm kiếm thông tin một cách nhanh chóng, phổ biến các tài liệukhoa học và trao đổi thông tin trên mạng
Dịch vụ kinh doanh đầu t trên mạng qua Web Với sự phát triển vợt bậc củakhả năng truyền thông qua mạng và các công nghệ Web tiên tiến, việc ta có thể ungdung ngồi nhà mà du ngoạn từ cửa hàng này sang hàng khác trong không gian ảokhông còn là cảnh phim viễn tởng mà đã trở thành hiện thực Ngày nay hầu nh bất
kỳ thứ hàng hoá nào cũng có thể đặt mua qua Internet
1.4 Mô hình Web Client- Web Server
Mô hình Client/Server ứng dụng vào trang Web đợc gọi là mô hình WebClient- Web Server Giao thức chuẩn đợc sử dụng để giao tiếp giữa Web Server và
Web Client là HTTP (HyperText Transfer Protocol).
Web Client (Web Browser): Các trình duyệt có vai trò nh là Client trong mô
hình Client/Server, khi cần xem một trang Web cụ thể nào thì trình duyệt Web sẽgửi yêu cầu lên cho Web Server để lấy nội dung trang Web đó
Web Server: Khi nhận đợc yêu cầu từ một Client/Server, Web Server sẽ trả vềnội dung file cho trình duyệt Web Server cho phép chuyển giao dữ liệu bao gồmvăn bản, đồ hoạ và thậm chí cả âm thanh, video tới ngời sử dụng Ngời sử dụng chỉcần trình duyệt xét Web để liên kết các máy chủ qua mạng IP nội bộ yêu cầu củangời sử dụng đợc đáp ứng bằng cách nhấn chuột vào các chủ đề hoặc minh hoạ mẫutheo khuôn dạng HTML Những trang dữ liệu theo yêu cầu sẽ đợc gọi xuống từ máychủ nào đó theo giao thức HTTP rồi hiển thị trên máy cá nhân
Hoạt động của mô hình Web Client- Web Server
Tất cả các gói tin nhận và trả lời giữa Web Server và Client đều tuân theo giaothức chuẩn HTTP Mô hình hoạt động nh sau:
Trang 12 Ban đầu trình duyệt trên máy Client có một văn bản HTML và hiển thị lênmàn hình với đầy đủ các mối liên kết
Khi ngời sử dụng chọn một mối liên kết nào đó trong văn bản trên thì trìnhduyệt sẽ sử dụng giao thức HTTP gửi một yêu cầu lên mạng cho Web Server để truycập tới một trang Web mới hay muốn đợc phục vụ một dịch vụ nào đó đợc chỉ ra bởimối liên kết đó
Sau khi nhận đợc thông tin từ trình duyệt nó có thể tự xử lý thông tin hoặcgửi cho các bộ phận khác có khả năng xử lý (Database Server, CGI ) rồi chờ kếtquả để gửi về cho trình duyệt Client
Trình duyệt nhận và định dạng dữ liệu theo chuẩn của trang Web để hiển thịlên màn hình
Quá trình cứ tiếp diễn nh vậy đợc gọi là duyệt Web trên mạng
Mở rộng khả năng của Web Server
Web Server là một phần mềm đóng vai trò phục vụ khi đợc hình thành, nó nạpvào bộ nhớ và đợi các yêu cầu từ nơi khác đến Các yêu cầu có thể từ trình duyệthoặc từ Web Server khác đến Các yêu cầu thờng là đòi hỏi về một t liệu hay mộtthông tin nào đó Khi nhận yêu cầu, nó phân tích để xác định xem t liệu, thông tin
mà ngời dùng yêu cầu là gì Sau đó gửi trả kết quả lại nơi yêu cầu Các phần mềmWeb Server chủ yếu:
Apache dùng cho UNIX
HS dùng cho Window NT
HTTP dùng cho UNIX
Web Quest dùng cho Window NT, Window 95
Oracle Web Server thích hợp cho nhiều nền tảng
Personal Web Server dùng cho Win 95
Bản thân Web Server không có khả năng truy nhập cơ sở dữ liệu (CSDL) Vấn
đề đặt ra là cần mở rộng khả năng của Web Server để nó có thể xử lý các yêu cầutruy nhập vào một CSDL nào đó, lấy các thông tin từ đó ra và sau đó trả các thôngtin này về cho trình duyệt - nơi đã gửi yêu cầu Cách mở rộng khả năng này là taphải viết một chơng trình giao tiếp đợc cả với Web Server và cả CSDL Chơng trìnhnày sẽ lấy các yêu cầu, xử lý chúng và đa ra kết quả là các file HTML Một chơngtrình nh vậy gọi là “cổng” (Gateway) giữa Web Server và CSDL
Một Gateway có thể truy nhập nguồn thông tin không theo dạng chuẩn củaWeb(HTML) tức là các thông tin nằm ngoài Web Server và chuyển đổi nó thành cácthông tin có thể hiển thị nên màn hình của trình duyệt Thực tế Gateway chỉ là mộtchơng trình đợc gọi bởi Web Server Thông thờng chúng đợc giữ trong một th mục
đặc biệt và vị trí của th mục này đợc cấu hình trong Web Server Các chơng trìnhnày phải có tính thực thi đợc Khi Web Server gọi một file vào một Gateway thì nó
sẽ đợc thực hiện Sau khi xử lý xong Web Server nhận kết quả trả về và định dạngtheo chuẩn HTTP để gửi cho trình duyệt
Có một số hớng để viết một chơng trình nh vậy:
Trang 13- Common Gateway Interface(CGI)
- Microsoft Internet Server Pages(ASP)
Trang 14Chơng 2
Giới thiệu về Matlab server pages
2.1.Matlab Server Pages (MSP) là gì?
Matlab Server Pages(MSP) là ngôn ngữ lập trình web kỹ thuật nguồn mở sửdụng nền tảng là Matlab chấp nhận kiến trúc 3 tầng (tầng Web- Tầng kinh doanh th-
ơng mại- tầng cơ sở dữ liệu) bao gồm tính toán đợc phân bố và xử lý song song qua
đờng gọi các thủ tục và các dịch vụ web từ xa
Vài đặc điểm của MSP:
Matlab Tag library (th viện thẻ Matlab): Phát triển các trang web kỹthuật đơn giản nh việc sử dụng các thẻ HTML
Matlab RMI Tag Library(th viện thẻ RMI của Matlab): Sử dụng Matlab
từ xa giống nh đang chạy trên máy nội bộ
MSP Expression Language Support (hỗ trợ ngôn ngữ biểu diễn): Dànhcho việc kết nối dữ liệu và tính toán dễ dàng
Malab Web Service: Sử dụng Malab nh là dịch vụ web
đặc biệt của Matlab nhằm mở rộng môi trờng Malab để giải quyết các lớp vấn đề
đặc biệt trong vùng ứng dụng này Hình 2.1 là cấu trúc mở rộng của Matlab cùngvới các toolboxes và blocksets
Các toolboxes bao gồm: Toán học cao cấp, tối u hóa, phân tích dữ liệu và thống kê, các hệ thống tài chính.
Các khối blocksets: thiết kế, phân tích, xử lý tín hiệu và hình ảnh, đo kiểm tra, tạo ra các mã lệnh.
Trang 15Language of Technical Computing
TOOLBOXES
Advanced Maths, Optimization, Statistics & Data
Analysis, Financial Systems etc.
EXTERNAL INTERFACES
BLOCKSETSDesign & Analysis, Signal & Image Processing, Test & Measurement, Code Generation etc.
Hình 2.1 Cấu trúc mở rộng của Matlab cùng với các toolboxes và blocksets.
Hình 2.1 là cấu trúc mở rộng của Matlab cùng với các toolboxes và blocsets.Matlab cung cấp một vài đặc điểm để tài liệu hóa và chia sẻ công việc Matlab cóthể tơng tác bằng mã nguồn với các ngôn ngữ, các ứng dụng khác và phân bố cácthuật toán, các ứng dụng Matlab
Các đặc điểm chính:
Ngôn ngữ bậc cao cho việc tính toán kỹ thuật
Môi trờng phát triển cho việc quản lý mã, file và dữ liệu
Các công cụ có tính tơng tác cho việc khảo sát, thiết kế và giải quyết các vấn
đề lặp lại
Các hàm toán học cho đại số tuyến tính, thống kê, phân tích Fourier, lọc, tối
-u hóa, tích phân số
Các hàm đồ họa 2-D, 3-D cho việc hiển thị dữ liệu
Công cụ cho việc xây dựng giao diện ngời sử dụng bằng đồ họa
Các hàm cho việc tích hợp các thuật toán cơ bản của Matlab với các ứngdụng và ngôn ngữ bên ngoài nh C,C++, Fortran, Java, COM, Microsoft Excel
Matlab đợc sử dụng rộng rãi trong lĩnh vực kỹ thuật điện- điện tử nhằm tạo ranguyên mẫu, tạo ra mã, thiết kế hệ thống điều khiển nhúng thời gian thực, thu thậpdữ liệu, hiển thị dữ liệu, các chủ đề công nghệ tiên tiến nh (mạng Nơron, điều khiểnmờ)
Trang 16Ngày nay các công ty đòi hỏi các ứng dụng N-Tier(nhiều tầng), điều đó cónghĩa rằng ngời sử dụng muốn điều khiển Matlab nh một phơng tiện tính toán từ cácngôn ngữ lập trình thông dụng khác (ví dụ Java, C++ ,C#).
Ngời sử dụng có giao diện ngời sử dụng (qua một trình duyệt web hoặc là mộtfile độc lập) để chạy quy trình Những giao diện này gửi lệnh tới máy chủ ứng dụng(application server), nơi mà chạy Matlab và nếu có dữ liệu hoặc chơng trình conkhác, chúng sẽ gọi thủ tục trên server khác giống nh Server cơ sở dữ liệu Matlabcung cấp các chơng trình con COM_(mô hình đối tợng thành phần), DDE (trao đổidữ liệu động) và C để gọi Matlab từ ngôn ngữ khác Matlab còn hỗ trợ cho việc gọiMatlab từ C và C++, nhng không có cho Java và C#
Việc hỗ trợ COM và DDE chỉ dành cho hệ điều hành Microsoft Windows Sửdụng chơng trình con C là phơng pháp đợc hỗ trợ dành cho ngôn ngữ C/ C++ và C#.Nếu bạn muốn sử dụng chơng trình con C trong Java phải sử dụng Java NativeInterface(JNI) Ngôn ngữ C và C++ không đợc định dạng tốt và lựa chọn nhanh choviệc phát triển các ứng dụng nhiều tầng (ví dụ phơng thức gọi từ xa (Remote MethodInvocation)(RMI) và dịch vụ web) C# thích hợp cho việc giải quyết vấn đề trênnhng lại không có nền tảng độc lập để thực hành Mặt khác Matlab có sản phẩm gọi
là “MATLAB COM Buider” để tạo ra DLLs từ các chơng trình của Matlab đợc sửdụng trong C/C++/C# Mục đích chính là để giảm thời gian phát triển và quản lý mãmột cách dễ dàng
Trang 17Nh vậy ngời sử dụng Matlab muốn có một nền tảng để phát triển ứng dụngnhiều tầng một cách nhanh chóng Matlab Server Pages(MSP) là ứng dụng độc lậpnền tảng mã nguồn mở dựa trên Java MSP đề cập đến nền tảng phát triển các ứngdụng dựa trên trang web bao gồm việc kết nối cơ sở dữ liệu, phơng thức gọi từ xa,tính toán đợc phân bố và các dịch vụ web
2.3 Kiến trúc của MSP
Hình 2.3 Kiến trúc 3 tầng của MSP
Hình 2.3 là hình ảnh về kiến trúc 3 tầng của MSP
- Lớp 1: web application (Máy chủ ứng dụng)
Matlab đợc cài đặt trên máy chủ ứng dụng Có các lớp chính của MSP trên máytính này để trao đổi dữ liệu trên RMI cùng với máy chủ web Các lớp chính có mộtvài phơng pháp để điều khiển các thẻ JSP tùy chọn trên máy chủ web
Lớp này điều khiển tất cả các hoạt động RMI, việc kết nối cơ sở dữ liệu, tínhtoán phân bố và các dịch vụ web
- Lớp 2: Web server ( máy chủ web)
Máy chủ web hoạt động nh là máy khách RMI để kết nối tới máy chủ ứngdụng Máy chủ web có lớp trung gian RMI tới các lớp chính MSP ở máy chủ ứngdụng Lớp trung gian này bao gồm tất cả các hệ thống trong các lớp này Vì vậy cácứng dụng trong máy chủ này có thể sử dụng các hàm chức năng của MSP nh là đangchạy cục bộ Lâp trình viên có thể triển khai các ứng dụng trên máy chủ này với các
cú pháp đơn giản Ví dụ:
Trang 18- Lớp 3: Database Server (máy chủ cơ sở dữ liệu)
Máy chủ web kết nối tới lớp này để trao đổi dữ liệu sử dụng th viện JSTL, SQL
và th viện thẻ MSP
- Lớp 4: User Interface (giao diện ngời sử dụng)
Ngời sử dụng có thể kết nối tới máy chủ web thông qua trình duyệt web hoặc
sử dụng dịch vụ web
Th viện các thẻ yêu cầu: Th viện thẻ Matlab và th viện thẻ RMI Matlab
2.4.2 Kỹ thuật JSP Standard Tag Library (JSTL)
a Mô tả
Th viện các thẻ chuẩn JSP(JSTL) vợt quá các thẻ chuẩn JSP, cung cấp các thẻtùy ý mà đóng gói các hàm cốt lõi thông dụng tới nhiều ứng dụng web JSTL có hỗtrợ cho các nhiệm vụ thuộc cấu trúc nh là các thẻ tơng tác và các thẻ điều kiện, cácthẻ dành cho thao tác các tài liệu XML, các thẻ đợc quốc tế hóa, các thẻ SQL và cáchàm đợc sử dụng thông dụng
b Thực hiện
Hỗ trợ cho:
Ngôn ngữ biểu diễn
Trang 19JSF đơn giản hóa sự phát triển giao diện ngời sử dụng cho các ứng dụng J2EE
sử dụng JSP Nó là khung cho việc xây dựng giao diện ngời sử dụng cho các ứngdụng web, bao gồm:
Một bộ Apls cho việc trình bày các thành phần UI và quản lý các trạngthái của chúng, bắt giữ các sự kiện và xác nhận tính hợp lệ của đầu vào, điều hớngtrang hạn chế nội dung và hỗ trợ việc quốc tế hóa khả năng truy cập
Th viện các thẻ tùy ý của JSP dành cho việc diễn tả giao diện JSF trongtrang JSP
b Thực hiện
(MSP sử dụng MyFaces từ Apache phần mềm của Foundation Group)
Hỗ trợ cho:
Matlab Beans: Để định rõ tính logic và luật lệ của công việc
Các thành phần UI tiên tiến nh là nạp Form, sự hợp lệ …trong MSPtrong MSP
2.4.4 Kỹ thuật Java DataBase Connectivity(JDBC)
a Mô tả
JDBC là một API Java mà cho phép các chơng trình Java thực hiện các lệnhSQL Điều này cho phép các chơng trình Java tơng tác với bất kỳ cơ sở dữ liệu phùhợp với SQL Từ đó gần đây tất cả các hệ thống quản lý cơ sở dữ liệu liên quan(DBMSs) đều hỗ trợ SQL, và bởi vì bản thân Java chạy trên hầu hết các nền tảng,JDBC làm nó có khả năng viết một ứng dụng đơn lẻ mà có thể chạy trên nền tảngkhác và tơng tác với DBMSs khác
b Thực hiện
Làm việc với JSTL và bộ điều khiển JDBC để lu giữ dữ liệu từ Matlab tới cơ sởdữ liệu (DB) và nhận dữ liệu từ DB tới Matlab
Sử dụng JSTL và th viện thẻ SQL và các gói bản chất MSP để yêu cầu quá trình
2.4.5 Kỹ thuật Remote Method Invocation (RMI)
a Mô tả
Java RMI cho phép lập trình viên tạo ra công nghệ dựa trên nền tảng Java đợcphân bổ tới các ứng dụng dựa trên nền tảng công nghệ Java Phơng thức của các đốitợng Java từ xa có thể đợc yêu cầu từ máy ảo Java khác, có khả năng trên máy chủkhác RMI sử dụng việc nối tiếp hóa các đối tợng để thu thập và loại bỏ các thông
số mà không cắt bỏ kiểu, hỗ trợ hiện tợng đa hình định hớng đối tợng đúng
Trang 20b Thực hiện
Th viện các thẻ tùy chọn:
Th viện thẻ RMI Matlab
Cho phép lập trình viên web phát triển các trang web sử dụng Matlab từ xagiống nh là nó đang chạy nội bộ
2.4.6 Kỹ thuật Java 4 Web Services
a Mô tả
Dịch vụ web là ứng dụng táo bạo sử dựa trên web mà sử dụng mở, chuẩn dựatrên XML và giao thức vận chuyển để trao đổi dữ liệu với việc gọi các ứng dụngkhách Nền tảng java 2, ấn bản (J2EE) cung cấp Apls và các công cụ mà bạn cần đểtạo ra và triển khai các dịch vụ web và ứng dụng khách tơng thích
Nền tảng Java 2 cung cấp Apls và các công cụ cần thiết để thiết kế, phát triển,kiểm tra nhanh, triển khai các dịch vụ web và ứng dụng khách mà t ơng thích hoàntoàn với dịch vụ web và ứng dụng khách chạy trên bất kỳ một nền tảng nào Sự tơngthích hoàn toàn này là có khả năng bởi vì dữ liệu ứng dụng đợc dịch đằng sau ngữcảnh thành dòng dữ liệu dựa trên nền tảng XML đợc tiêu chuẩn hóa
;thực hiện lệnh gán chuỗi 'Hello World' cho biến a
<Matlab:Command cmd="b='Hello World'"/>
;dừng Matlab
Trang 212.5.4 ThÎ GetArray
- M« t¶: NhËn m¶ng d÷ liÖu 2D Matlab
- Th«ng sè: name - tªn cña biÕn Matlab
Lu biÕn Matlab tíi biÕn m¶ng líp Java goOnline
- Th«ng sè: name - tªn cña biÕn Matlab
Lu biÕn Matlab tíi biÕn vect¬ líp Java goOnline
- Th«ng sè: name - tªn cña biÕn Matlab
Lu biÕn Matlab tíi biÕn vect¬ líp Java goOnline
- Th«ng sè: name - tªn cña biÕn Matlab
Lu biÕn Matlab tíi biÕn m¶ng ký tù líp Java goOnline
Trang 22Filename : lu giữ tên file
handle : điều khiển hình
width : chiều dài hình ảnh
height : chiều cao hình ảnh
width :chiều rộng mới của hình
height :chiều cao mới của hình
name: Tên biến trong Matlab
- Ví dụ: <Matlab:WriteData name= " a " />
2.6.Dịch vụ web Matlab
2.6.1 engineOpen()
- Mô tả: Khởi động Matlab
Trang 23- M« t¶: NhËn m¶ng d÷ liÖu 2D cña Matlab
- Tham sè: Tªn biÕn cña Matlab lµ chuçi
- VÝ dô: double[][] a = MatlabService.getArray(“a”)
2.6.5 getVector()
- M« t¶: NhËn m¶ng d÷ liÖu 1D cña Matlab
- Tham sè: Tªn biÕn cña Matlab lµ chuçi
- VÝ dô: double[] b = MatlabService.getVector(“b”)
2.6.6 getScalar()
- M« t¶: NhËn m¶ng d÷ liÖu cña Matlab
- Tham sè: Tªn biÕn cña Matlab lµ chuçi
- VÝ dô: double c = MatlabService.getScalar(“c”)
2.6.7 putArray()
- M« t¶: §a m¶ng d÷ liÖu 2D tíi Matlab
- Tham sè: Tªn cña biÕn Matlab lµ chuçi, gi¸ trÞ lµ m¶ng d÷ liÖu
- VÝ dô: double[][] a = {{1,2},{3,4}}
MatlabService.putArray(“a”,a)
2.6.8 putVector()
- M« t¶: §a m¶ng d÷ liÖu 1D tíi Matlab
- Tham sè: Tªn cña biÕn Matlab lµ chuçi, gi¸ trÞ lµ m¶ng d÷ liÖu
- VÝ dô: double[] b = {1,2}
MatlabService.putVector(“b”,b)
2.6.9 putScalar()
- M« t¶: §a d÷ liÖu tíi Matlab
- Tham sè: Tªn cña biÕn Matlab lµ chuçi, gi¸ trÞ lµ m¶ng d÷ liÖu
- VÝ dô: double c = 1
MatlabService.putScalar(“c”,c)
2.6.10 getImage()
- M« t¶: NhËn h×nh ¶nh cña Matlab
Trang 24- Tham số: Lệnh, chiều rộng, chiều cao, tên là chuỗi
- Ví dụ: String Base64Image =
Quá trình cài đặt nh sau:
Bấm đúp chuột trái vào MSP.exe để bắt đầu quá trình cài đặt
Hình 2.4 Biểu tợng cài đặt MSP
Màn hình chào mừng cài đặt MSP hiện ra Khi cài đặt bạn chú ý đóng tất cảcác chơng trình khác đang chạy trên windows Bấm Next để tiếp tục
Hình 2.5 Giao diện khởi động cài đặt MSP
MATLAB Server pages(MSP) cho phép bạn sử dụng các lệnh Matlab trongtrang JSP Ban đầu ngời sử dụng không cần biết về JSP Có sẵn những thẻ Matlabvới cú pháp đơn giản để sử dụng Sau đó ngời sử dụng tạo các tác động bên trong
JSP giống nh là chia sẻ dữ liệu giữa Java và Matlab Click Next.
Trang 25Hình 2.6 Giao diện thông tin về MSP
Thông tin về bản quyền của sản phầm đợc thể hiện Đây là phần mềm miễnphí, không có bất kỳ cảnh báo nào Để tiếp tục bấm chuột vào “I agree with theabove terms and conditions” và Next
Hình 2.7 Giao diện thông tin về bản quyền của MSP
Chọn th mục để cài đặt có thể sử dụng đờng dẫn mặc định là C:\MATLABServerPages sau đó nhấn Next
Trang 26Hình 2.8 Giao diện lựa chọn đờng dẫn cài đặt MSP
Th mục cài đặt cha tồn tại để cài đặt bấm Yes sau đó bấm Next
Hình 2.9 Giao diện xác nhận tạo th mục cài đặt MSP
MSP đã sẵn sàng cho quá trình cài đặt Bấm phím Start
Hình 2.10 Giao diện cho phép cài đặt MSP tại th mục đã chọn
MSP tự động thực hiện quá trình cài đặt
Trang 27Hình 2.11 Giao diện quá trình cài đặt MSP
Sau khi cài đặt sửa và chạy “MSP-Register MATLAB as COM Server” Nếu sửdụng từ xa di chuyển tới server nơi cài đặt Matlab và chạy “Matlab-regserver” BấmNext
Hình 2.12 Giao diện thông báo hoàn thành cài đặt MSP
Bấm Exit để kết thúc cài đặt
Hình 2.13 Giao diện kết thúc quá trình cài đặt
Trang 28Để có thể sử dụng đợc MSP bạn cần cài đặt thêm Java gói j2sdk-1_4_2_08.Quá trình cài đặt Java nh sau Nhấp đôi chuột trái vào biểu tợng setup và tiến hànhcài đặt bình thờng.
Hình 2.14 Biểu tợng cài đặt Java
Sau khi cài đặt phải đăng ký Matlab nh là COM server bằng cách vào shortcutMSP-Register MATLAB as COM Server để đăng ký
Hình 2.15 Biểu tợng đăng ký MATLAB nh là COM Server
Sửa lại đờng dẫn của Matlab
Định dạng đặc tính MSP nhấp đôi chuột trái vào biểu tợng sau
Hình 2.16 Biểu tợng chỉnh sửa các đặc tính của MSP
Sửa lại đờng dẫn của hai th mục chứa mã lệnh và hình ảnh là Code_directory
và Image_directory
Hình 2.17 Đờng dẫn của các th mục chứa mã lệnh và hình ảnh
Định dạng server của MSP bằng cách chuột phải vào biểu tợng MSP-Start upserver và chọn edit Sửa lại đờng dẫn của Java
Hình 2.18 Biểu tợng khởi động MSP
Khởi động MSP nhấp đôi chuột trái vào biểu tợng MSP-Start up server
Trang 29liệu nhập vào, thực hiện tính toán và hiển thị kết quả tính toán
Giao diện khi cha nhập dữ liệu nh sau:
Hình 2.19 Giao diện thực hiện phép tính cộng, trừ, nhân, chia 2 số thực
Nhập 2 số thực a,b sau đó nhấn nút Submit
Hình 2.20 Giao diện sau khi nhập số liệu
Kết quả của phép tính cộng, trừ, nhân, chia hai số thực a và b hiển thị trên trang
web có tên vidu12.mlsp.
Trang 30H×nh 2.21 Giao diÖn sau khi cã kÕt qu¶
<form action="vidu12.mlsp" method="post">
<p>Nhap so thuc a:<input type="text" size="5" maxlength="5" name="st1"></p>
<p>Nhap so thuc b:<input type="text" size="5" maxlength="5" name="st2"></p>
<p><input type="submit" name="Submit" value="Submit"></p>
Trang 31<title>Tinh toan doi voi so thuc</title>
</head>
<body bgcolor="#FFFFFF">
<table align="left" width="30%"/>
<tr><td align=center>
<p><font color="#000000" size="3" face="Arial"><i>
Thuc hien phep cong, tru, nhan, chia hai so thuc</i></font></p>
<Matlab:WriteData name="sa"/><br><Matlab:WriteData name="sb"/></td></tr>
<tr><td><i><b>Ket qua phep tinh +,-,*,/ 2 so thuc</i></b><br>
<Matlab:WriteData name="stong"/><br><Matlab:WriteData name="shieu"/><br>
Bài toán đặt ra là thực hiện phép cộng, trừ, nhân, chia hai số phức Tiến hành
xây dựng hai trang web Trang thứ nhất(vidu21.mlsp) gồm các 2 hộp văn bản để
nhập hai số phức a và b, có thể nhập dới dạng đại số hoặc dạng ơle Sau khi nhập dữ
nhấn nút submit để gửi biểu mẫu yêu cầu tính toán Trang web thứ hai(vidu22.mlsp)
thực hiện nhiệm vụ nhận dữ liệu nhập vào, thực hiện tính toán và hiển thị kết quảtính toán
Giao diện ban đầu khi cha nhập dữ liệu:
Trang 32Hình 2.22 Giao diện thực hiện phép tính cộng, trừ, nhân, chia 2 số phức
Giao diện khi nhập dữ liệu:
Hình 2.23 Giao diện sau khi nhập số liệu
Giao diện sau khi có kết quả: Kết quả trả về là các số phức đợc biểu diễn dới dạng đại số
Trang 33H×nh 2.24 Giao diÖn sau khi cã kÕt qu¶
<p><font color="#000000" size="3" face="Arial"><i>
Thuc hien phep cong, tru, nhan, chia 2 so phuc</i></font></p>
<form action="vidu22.mlsp" method="post">
<p>Nhap so phuc a:
<input type="text" size="20" maxlength="20" name="sp1"></p>
<p>Nhap so phuc b:
<input type="text" size="20" maxlength="20" name="sp2"></p>
<p><input type="submit" name="Submit" value="Submit"></p>
Trang 34<p><font color="#000000" size="3" face="Arial"><i>
Thuc hien phep cong, tru, nhan, chia hai so phuc</i></font></p>
else sa=sprintf('a = %6.2f - %6.2fi',real(a),-imag(a));
end
if imag(b)>=0 sb=sprintf('b = %6.2f + %6.2fi',real(b),imag(b));
else sb=sprintf('b = %6.2f - %6.2fi',real(b),-imag(b));
end tong=a+b;hieu=a-b;tich=a*b;thuong=a/b;
if imag(tong)>=0 stong=sprintf('a+b= %6.2f + %6.2fi',real(tong),imag(tong)); else
stong=sprintf('a+b=%6.2f - %6.2fi',real(tong),-imag(tong)); end
if imag(hieu)>=0 shieu=sprintf('a-b= %6.2f + %6.2fi',real(hieu),imag(hieu)); else
shieu=sprintf('a-b=%6.2f - %6.2fi',real(hieu),-imag(hieu)); end
if imag(tich)>=0 stich=sprintf('a*b= %6.2f + %6.2fi',real(tich),imag(tich)); else
stich=sprintf('a*b=%6.2f - %6.2fi',real(tich),-imag(tich)); end