就在上周末,我们的第一个小项目(学生管理系统)终于结束了,回忆起这将就3周的经历,突然有了一种成就感,感觉在不知不觉中就学到了好多的东西。现在就把我在这次实践中的一些小小的心得写出来跟大家一起分享。
首先学到的是关于Servlet的学习,关于Servlet书本上的定义过于抽象,不好理解。但是我个人的理解是Servlet就是前台跟后台交互的一个平台,也就是有了Servlet就可以实现前台与后台的联系。以我项目中的文件名为例:前台(showStudentInfo.jsp)发送请求,然后程序会根据
<form action="../getStudentInfo" method="post">
进入web.xml中寻找下一步,在web.xml中有我们事先写好的Servlet
<servlet>
<servlet-name>getStudentInfo</servlet-name>
<servlet-class> cn.edu.bzu.servlet.admin.StudentInfoServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>getStudentInfo</servlet-name>
<url-pattern>/getStudentInfo</url-pattern>
</servlet-mapping>
通过这一步找到了我们写好的后台代码(StudentInfoServlet.jsp),将调用的结果过返回给前台页面(printInfo),这样就实现了前台与后台的交互,把信息在前台打印出来。
第二个我想说的就是在Servlet中的两个方法doPost()方法和doGet()方法
doPost()方法是从服务器端获得数据,是一种相对安全的获取方式,举一个简单的例子说明一下,就是在一用你的用户名和密码登陆的时候,你的信息是加密的,也就是说别人看不到你的密码等信息。附一个简单的例子:
<html>
<head></head>
<BODY>
<form action="aaa" method="post">
<INPUT TYPE="TEXT" name="stuName"/>
<input type="password" name="stuPass"/>
<input type="submit" value="提交"/>
</FORM>
</body>
</HTML>
这样在浏览器的地址栏显示的是:file:///C:/Users/hp/Desktop/aaa ps:我输入的用户名是abc,密码是123
但是在地址栏中并不显示这些信息。
下面在举一个doGe()t的方法:
<html>
<head></head>
<BODY>
<form action="aaa" method="get">
<INPUT TYPE="TEXT" name="stuName"/>
<input type="password" name="stuPass"/>
<input type="submit" value="提交"/>
</FORM>
</body>
</HTML>
浏览器的地址栏显示的是:file:///C:/Users/hp/Desktop/aaa?stuName=abc&stuPass=123 ps:用户名abc,密码123
这些信息在地址栏是显示的,所以说get这种是不安全的。