Feeds:
Bài viết
Bình luận

Sử dụng Ajax trong JSP

Lâu quá không viết Blog, hôm nay làm một bài Post lên cho Blog khỏi hiu quạnh 😀

Ajax : bản thân mình gọi nó là một món gia vị cho Homepage, mặc dù chưa hẳn là vậy, với Ajax bạn có thể làm được nhiều thứ, sự tiên lợi của nó nằm ở chổ, thay vì phải load lại nguyên một trang web, thì với công nghệ này, web site của bạn mỗi lần Refresh, hay mỗi lần nạp, nó sẽ chỉ load thêm các thành phần mới, những thành phần cũ sẽ không bị load lại, điều này làm tăng đáng kể tốc độ và tính tương tác của website có vẽ dễ chịu hơn.

Ví dụ dưới đây chỉ đơn giản là gán một dòng text vào textbox (có sử dụng Ajax) :

1. Tạo một XMLHttpRequest Object đối với các trình duyệt khác nhau :

Internet Explorer cũ :

xmlHttpRe  =new ActiveXObject(“Msxml2.XMLHTTP”);

Internet Explorer từ 6.0 trở lên :

xmlHttpRe = new ActiveXObject(“Microsoft.XMLHTTP”);

Firefox hoặc các trình duyệt khác :

xmlHttpRe = new XMLHttpRequest();

2. Mở XMLHttpRequest Object, gởi Request cho Server :

function show(){
var getText =””;
if(xmlHttpRe) {
xmlHttpRe.open(“GET”,”svGetText?” + getText);
xmlHttpRe.onreadystatechange  = handleGetText;
xmlHttpRe.send(null);
}
}

Đoạn code trên sẽ sẽ gởi đến Server dòng text, svGetText là tên của một Servlet. Sau khi Server nhận Request từ client, nó sẽ tiến hành xử lý và

gởi Response lại cho Client. Ta code đoạn mã sau (bên phía client) để nhận kết quả trả về từ Server.

function handleGetText() {
if (xmlHttpRe.readyState == 4) {
if(xmlHttpRe.status == 200) {
document.Form1.textbox1.value=xmlHttpRe.responseText;
}else {
alert(“Không kết nối được với Server”);
}
}
}

Có 3 chổ cần lưu ý đối với đoạn code trên :

readyState : là trạng thái hiện tại của đối tượng xmlHttpRe, có 5 cấp độ :

0 : chưa khởi tạo

1 : vừa mới khởi tạo

2 : vừa gởi request đi

3 : đang xử lý Response nhận từ Server

4 : đã xử lý xong, lấy được responseText

status : trạng thái hiện hành của đối tượng

200 : sẳn sàng đáp ứng

404 : không tìm thấy trang

Open(method, url, đồng bộ hay không)

OK. Vậy là chúng ta xong Script xử lý Event cho client, bây giờ là phần hiển thị :

<html>
<head>
<title> Ví dụ Ajax</title>

</head>
<body>
<form name=”Form1“>
Lời chào :<input type=”text” name=”textbox” />
<input type=”button” onClick=”javascript:show() ;” value=”Hiện”/>
</form>
</body>
</html>

Code một đoạn mã hiển thị lời chào bên Servlet. Đơn giản thôi 😀

public class svGetText extends HttpServlet {
public void doPost(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
response.setContentType(“text/html;charset=UTF-8”);
PrintWriter out = response.getWriter();
out.println(“Xin chào, đây là ví dụ Ajax đầu tiên”);
}
public void doGet(HttpServletRequest request, HttpServletResponse response) throws IOException, ServletException {
doPost(request, response);
}
}

———————-

Các bạn cũng có thể sử dụng phương thứ POST thay vì GET trên Ajax, phần lớn người ta thường hay dùng GET khi viết các ứng dụng trên Ajax, nhưng trong một số trường hợp cần tính an toàn dữ liệu, người ta sẽ dùng POST.

Việc sử dụng Post theo mình thì có hơi rắc rối một tí, nghĩa là bạn phải cài đặt cái Request trước khi truyền đi, việc này được thực hiện bởi 3 dòng sau :
xmlHttpRe.setRequestHeader(“Content-type”, “application/x-www-form-urlencoded”);
xmlHttpRe.setRequestHeader(“Content-length”, params.length);
xmlHttpRe.setRequestHeader(“Connection”, “close”);

download mã nguồn tại đây : http://www.mediafire.com/?z6jmh3lat6rtn2b

Kỳ sau, mình sẽ so sánh kỹ 2 anh Post và Get này, giờ khuya rồi… đi ngủ 🙂

(minhman2006_2121@yahoo.com)

Advertisements

apQuiz 1.1

apQuiz phiên bản 1.1 có những cải tiến sau:

– Thêm giao diện,người dùng có thể tùy biến cho giáo trình của mình. Đây là giao diện mà mình mới thêm vào :

– Sửa lại một số lỗi nhỏ khi hiển thị

Download tại đây

– Cần có NetFramework để chạy được chương trình, xem và download tại đây

Giới thiệu apQuiz 1.0

Chào các bạn !

Sau khi Trắc nghiệm hóa học (TNHH) hoàn thành, mình đã nhận được rất nhiều sự góp ý, quan tâm, sẽ chia từ thầy cô, cũng như các bạn gần xa..

Mình rất vui, khi nhận được ý kiến của một số bạn nói TNHH là công cụ hổ trợ học tập tốt,  lúc trước nó có 32 đề thi, mỗi đề 50 câu, nhiều bạn đã giải gần hết 32 đề thi đó và muốn thêm đề thi vào ứng dụng, nhưng TNHH không hổ trợ tính năng này…

Thể theo yêu cầu của một số bạn, nay mình viết một ứng dụng mới, tên nó là apQuiz, nó có thể giúp các bạn tự tạo ra cho mình một cuốn “giáo trình điện tử” giống như TNHH, với  đầy đủ các mục : Lý Thuyết, Trắc Nghiệm, Video, Sổ Tay, và hơn thế nữa, các bạn còn có thể chia sẻ với nhau các Project (dự án) hay các sản phẩm mà các bạn làm ra, mình nghĩ mỗi bạn có một sở trường riêng, tuyệt vời biết bao, nếu bạn giỏi Toán làm nên một giáo trình về Toán, một bạn giỏi về Hóa, tạo nên một giáo trình học Hóa, chắc chắn sẽ hay và các bạn sẽ học được nhiều thứ từ sự hổ trợ lẫn nhau như vậy.

Nhiều người hỏi mình là tại sao các ứng dụng mình viết thường hay có các câu danh ngôn để ở cửa sổ chính…Thực ra mình làm vậy vì mình muốn dùng mấy câu danh ngôn đó xem như là lời nhắc nhở đối với người học, mà đầu tiên đó là cho thằng em mình… mình đã lựa các câu danh ngôn nói về học tập và xuất hiện một cách ngẫu nhiên, kèm với một ít âm thanh piano đơn giản, nhè nhàng… mình nghĩ điều đó sẽ giúp các bạn tịnh tâm hơn khi dùng…Chính vì điều đó nên một cuốn “giáo trình điện tử” bạn tạo ra bởi apQuiz, mặc định, sẽ luôn có các câu danh ngôn, luôn có nhạc nền (và tất nhiên, bạn được tùy chỉnh).

Mình đã mất rất nhiều thời gian, công sức để thực hiện nên sản phẩm này, và mình sẽ còn phát triển nó hơn nữa, mọi góp ý, thắc mắc, các bạn đừng ngần ngại trao đổi với mình tại Y!M : minhman2006_2121

Sau cùng, điều mình muốn chia sẻ với các bạn đó là : “ứng dụng chỉ là ứng dụng, phần mềm cũng chỉ là phần mềm, công cụ cũng chỉ là công cụ, sự thành công trong học tập của các bạn ngoài những yếu tố may mắn, sự hậu thuẩn, thì hết…90% là ở sự nổ lực của các bạn…”

Cảm ơn các bạn. Chúc các bạn học tốt…

——————————————

HƯỚNG DẪN SỬ DỤNG APQUIZ 1.0

Giao diện chính của apQuiz :

Tuy giao diện của apQuiz hoàn toàn là tiếng Việt, nhưng mình cũng xin nêu ra các bước cụ thể để các bạn dễ dàng tiếp cận hơn.

Các bước để tạo ra một giáo trình với apQuiz :

1. Vào Thư mục\Dự án mới (hoặc nhấn tổ hợp phím Ctrl + N ). Cửa sổ tương ứng hiện ra : các bạn nhập tên dự án, chọn nơi lưu, chọn các mục mà bạn muốn có trong ứng dụng của mình, nhấn “Xem trước” để biết trước được “mặt mũi” của sản phẩm sau khi hoàn thành sẽ như thế nào. Nhấn “Đồng ý” để tiến hành tạo mới, và sang bước kế tiếp.

2. Các bạn chọn mục mà mình muốn soạn thảo bằng cách click vào đây trong đó sẽ có các mục con, tương ứng với các cửa sổ soạn thảo :

+ Trắc nghiệm : apQuiz chỉ hổ trợ bạn nhập duy nhất là 50 câu, với tối đa là 50 đề thi, sau khi nhập đủ các đề thi mà mình muốn, bạn tiến hành thiết lập các đáp án đúng.Sau cùng nhấn “Save”

+ Lý thuyết : bạn điền đầy đủ tiêu đề và nội dung, nhấn “save” để chương trình ghi nhớ nội dung bạn vừa nhập, click vào biểu tượng để thêm một nội dung mới.

+ Video : mục này giúp bạn chèn video vào ứng dụng của mình, hổ trợ cho bạn các định dạng : mp4, wmv, avi, swf. Bạn có thể add, xóa, rename các video cần thiết.

Nhấn để xem trước ứng dụng của bạn ….

3. Thêm tiêu đề và phần about cho ứng dụng của bạn :

– Vào menu “Hoàn tất\Thiết lập” , tại đây, bạn có thể thay đổi nhạc nền, tạo, thay đổi tiêu đề và phần about cho ứng dụng.

Bấm nút “Xem thử” để xem trước ứng dụng của bạn…

4. Xuất bản dự án :

– Các bạn click vào biểu tượng để tiến hành xuất bản dự án, cửa sổ tương ứng hiện ra, bạn nhập tên tùy ý cho ứng dụng chính của mình, sau cùng nhấn “xuất bản”.

Lúc này, bạn có thể đem thư mục “Xuat Ban” nằm cùng với thư mục mà bạn tạo dự án, để đi chia sẽ với các bạn khác …

Các bạn có thể xem thêm video hướng dẫn tại đây

THÔNG TIN apQuiz :

Yêu cầu : Net Framework 3.5

Bạn phải cài Windows installer để chạy được các bộ cài Net Framework

Link download Windows installer 3.1

Link download Net Framework 3.5

—————

Download apQiz 1.0 tại đây

(minhman2006_2121@yahoo.com)

12h56′ thứ 7 ngày 21-3-2010

Vậy là mình học java đã được 3 tuần (6 buổi)…
Lúc trước vì nôn nóng muốn học thêm cái mới, nên mình chẳng thèm đăng ký khóa cơ bản, mà… đùng một cái – đăng ký lớp nâng cao luôn, việc học thì cũng không đến nỗi căng lắm – nhưng mình phải cố gắng thật nhiều, nếu không sẽ bị thụt lại ngay…
Vì mục tiêu SCJP nào, hãy cố lên !!!

…..
Việc học chính khóa của mình đã bắt đầu căng rồi đây, toàn mấy môn chuyên ngành dài ngoằn ngoặc – khiếp. Mấy cái đồ án cô cho về nhà cũng chưa đụng tới luôn, nhưng không sao, rồi mọi việc sẽ xong xuôi đâu đó thôi mà…
Chờ xem…

Máy tính mới !

Cảm giác thật sung sướng khi được ba sắm cho cái Máy Tính Mới để hổ trợ học Java….
bởi cái máy cũ rất cùi bắp, chạy cái Eclipse (chưa plug in) mà ì à, ì ạch, biên dịch không nổi – đứng luôn.

Nghe người dùng đồn win7, mình cũng xài thử thì thấy không ổn định mấy, vẫn chưa tương thích nhiều ứng dụng, nhất là việc đăng ký mấy file *.dll , *.ocx cũng rắc rối hơn winxp, do tính năng bảo mật của nó cao, nên mọi thứ đều phải được làm với quyền admin… Cũng may là nó còn có xpMode hổ trợ, chứ nếu không, chắc cài lại winxp quá !!!
———————–
Vậy là kết thúc khóa học java, kiến thức cũng cải thiện đôi chút, nhưng vẫn còn rất kém để thi chứng chỉ quốc tế, do đó phải cố gắng nữa mới được, mình không tin là mình không lấy được chứng chỉ này… mọi thứ đều có thể nếu mình có sự nổ lực !!
———————-
Bây giờ là 1h32′ am mà sao mắt mình vẫn trao tráo, chẳng thấy buồn ngủ gì cả, chắc thành thói quen mất rồi…
Buồn buồn viết cái entry này ! chẳng biết sao dạo này, mình viết blog khó hiểu ghê ! chắc đang có tâm trạng thật…

LỜI KHUYÊN CỦA CHA

1. Hãy gọi điện cho Mẹ.
2. Một ngày con nhớ dành lời khen tặng vài ba người.
3. Mỗi năm ít nhất một lần con hãy chờ xem mặt trời mọc.
4. Nhìn thẳng vào mắt mọi người.
5. Nói lời cảm ơn càng nhiều càng tốt.
6. Nói lời làm ơn càng nhiều càng hay.
7. Hãy sống dưới mức con kiếm được.
8. Đối xử với mọi người như con muốn họ đối xử với con như thế.
9. Kết thân với những người bạn mới nhưng hãy trân trọng những người bạn cũ.
10. Hãy giữ gìn những điều bí mật.
11. Dám chịu nhận những lầm lẫn của mình.
12. Con hãy can đảm. Nếu con không được can đảm lắm thì hãy tỏ ra can đảm. Người ta không phân biệt người can đảm với người tỏ ra can đảm.
13. Con hãy dành thì giờ làm việc thiện trong cộng đồng của con.
14. Đừng bao giờ lường gạc một ai.
15. Hãy học cách lắng nghe.
16. Cơ hội trong đời nhiều khi gõ cửa nhà con rất khẽ.
17. Đừng làm ai mất hi vọng. Nhiều người chỉ sống nhờ những hi vọng đấy con ạ.
18. Đừng cầu mong có của cải, mà hãy cầu mong có sự khôn ngoan, hiểu biết và lòng can đảm.
19. Đừng hành động khi con giận dữ.
20. Con phải giữ gìn tư thế đàng hoàng.
21. Muốn đến một nơi nào thì phải có mục đích và tự tin rồi hãy đến.
22. Đừng bao giờ trả công cho ai trước khi họ làm xong việc.
23. Đừng bao giờ ngồi lê đôi mách.
24. Hãy sẵn sang thua một trận đánh để dẫn đến thắng một cuộc chiến.
25. Cẩn thận với kẻ mà họ không còn gì để mất.
26. Khi gặp một nhiệm vụ khó khăn con hãy hành động như không thể nào bị thất bại.
27. Đừng giao du quá rộng.
28. Phải học cách trả lời “không” một cách dứt khoát.
29. Đừng mong cuộc đời đối xử song phẳng với con.
30. Đừng đánh giá thấp sức mạnh của sự tha thứ.
31. Con hãy thay từ ngữ “có vấn đề” bằng từ ngữ “có dịp may”.
32. Nếu con định dùng thứ gì trên 5 năm thì hãy sắm thứ tốt nhất có thể.
33. Con hãy mạnh dạn trong cuộc sống.
34. Khi con nhìn lại quãng đời đã qua hãy tiếc những điều chưa làm được chứ đừng nên tiếc những điều chưa làm xong.
35. Đừng quan tâm đến bè nhóm.
36. Những ý tưởng mới mẻ, cao thượng và có tác động đến cuộc sống luôn là ý tưởng của người biết làm việc.
37. Những nhạc sĩ biểu diễn bên đường thường có nhiều điều đáng trân trọng. Con hãy dừng lại lắng nghe và nhớ tặng gì đó cho họ.
38. Khi gặp vấn đề trầm trọng về sức khoẻ con hãy nhờ ít nhất là 3 vị thuốc khác nhau xem xét.
39. Hãy chiến đấu chống thói vô trât tự.
40. Gặp hàng hoá xấu hay sự phục vụ tồi con hãy báo ngay cho người có trách nhiệm để học nắm biết. Người quản lý tốt rất mong biết mọi điều.
41. Đừng tập thói trì hoãn công việc.
42. Làm ngay những điều gì cần làm đúng vào lúc phải làm.
43. Không ai chờ đến lúc hấp hối để nói “giá như tôi có thêm thời gian”.
44. Đừng sợ phải nói “tôi không biết”.
45. Đừng sợ phải nói “xin lỗi, rất tiếc”.
46. Hãy ghi sẵn những điều con muốn được trải qua trong đời. Luôn luôn mang theo trong túi áo những điều đó và luôn tìm cơ hội có thể được để thực hiện.
47. ……
(Sưu tầm)

Đây là ảnh chụp tại nhà vào dịp tết Canh Dần 2010 …

Photobucket

Photobucket

Photobucket

Photobucket

Chụp với mấy đứa em …

Photobucket