Servlet技术

Servlet技术

Servlet是用Java语言编写的服务器端程序,是由服务器端调用和执行的,按照Servlet自身规范编写的Java类。

Servlet的建立

MyEclipse新建Web项目,在src下新建一个包存放Srevle程序t类,右击包名,选择new一个Servlet,输入Servlet名称,点击next,弹出一个对话框,记住Servlet的映射地址,点击finish,就新建了Servlet程序的基本框架并自动修改web.xml。

使用

1.重写doGet()或doPost()方法,把想要实现的功能写入其中。
2.部署到服务器上,在浏览器地址栏输入:
http://localhost:8080/项目名/Servlet映射地址

示例

1.建立一个Servlet文件Accept.java和一个test.jsp文件,实现用Servlet实现获取表单数据的功能。
程序功能:利用Servlet的方式实现表单数据的获取。

Code

package servlet;

import java.io.IOException;
import java.io.PrintWriter;

import javax.servlet.ServletConfig;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class Accept extends HttpServlet {
    public String codeToString(String str){ //处理中文字符串的函数
        String s=str;
        try{
            byte tempB[]=s.getBytes("IOS-8859-1");
            s=new String(tempB);
            return s;
        }catch(Exception e){
            return s;
        }
    }
    public void init(ServletConfig config) throws ServletException {
        super.init(config);
    }

    public void doPost(HttpServletRequest request, HttpServletResponse response)
            throws ServletException, IOException {
         //设置mine
        response.setContentType("text/html;charset=UTF-8");
        request.setCharacterEncoding("UTF-8");
        PrintWriter out = response.getWriter();
        out.println("<HTML>");
        out.println("  <HEAD><TITLE>接受新用户注册</TITLE></HEAD>");
        out.println("  <BODY>");
        out.println("这是新用户所提交的数据:<br>");
        out.println("用户名是:"+codeToString(request.getParameter("username"))+"<br>");
        out.println("密码是:"+codeToString(request.getParameter("userpassword"))+"<br>");
        out.println("性别是:"+codeToString(request.getParameter("sex"))+"<br>");
        out.println("出生年月日是:"+request.getParameter("year")
        +request.getParameter("month")+request.getParameter("day")+"<br>");
        out.println("电子邮箱是:"+request.getParameter("email")+"<br>");
        out.println("家庭住址是:"+codeToString(request.getParameter("address"))+"<br>");
        out.println("  </BODY>");
        out.println("</HTML>");

    }
}
<%@ page contentType="text/html;charset=UTF-8"%>
 <script language="javascript">
 function on_submit(){  //验证数据的合法性
 if(form1.usrname.value==""){alert("用户不能为空,请输入用户名!");
         form1.username.focus();
         return false;
 }
 if(form1.userpassword.value==""){alert("用户密码不能为空,请输入密码!");
         form1.userpassword.focus();return false;
 }
 if(form1.reuserpassword.value==""){alert("用户确认密码不能为空,请输入密码!");
         form1.reuserpassword.focus();return false;
 }
 if(form1.userpassword.value!=form1.reuserpassword.value){
       alert("密码与确认密码不同");
       form1.userpassword.focus();
       return false;
 }
 if(form1.email.value.length!=0){
   for(i=0;i<form1.email.value.length;i++)
     if(form1.email.value.charAt(i)=="@") break;
     if(i==form1.email.value.length){alert("非法EMAIL地址!");
     form1.email.focus();return false;
     }
 }else{alert("请输入EMAIL!");
       form1.email.focus();
       return false;     
 }
 }
 </script>
 <html>
  <head>    
    <title>新用户注册</title>
  </head>
  <body> 
  <form method="POST" action="servlet/Accept" name="form1" onsubmit="return on_submit()">
       新用户注册<br>
       用户名(*):<input type="text" name="username" size="20"><br>
       密&nbsp;码:<input type="password" name="userpassword" size="20"><br>
       再输入一次密码(*):<input type="password" name="reuserpassword" size="20"><br>
       性别:<input type="radio" value="男" checked name="sex"><input type="radio" name="sex" value="女"><br>
       出生年月日:<input name="year" size="4" maxlength=4><select name="month">
       <option value="1" selected>1</option>
       <option value="2">2</option>
       <option value="3">3</option>
       <option value="4">4</option>
       <option value="5">5</option>
       <option value="6">6</option>
       <option value="7">7</option>
       <option value="8">8</option>
       <option value="9">9</option>
       <option value="10">10</option>
       <option value="11">11</option>
       <option value="12">12</option>
       </select><input name="day" size="3" maxlength=4><br>
       电子邮箱(*):<input name="email" maxlength=28><br>
       家庭住址:<input type="text" name="address" size="20"><br>
       <input type="submit" value="提交" name="B1">
       <input type="reset" value="重写" name="B2"><br>
  </form>
  </body>
</html>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值