Java servlet
Servlet(Server Applet),全称Java Servlet,未有中文译文。是用Java编写的服务器端程序。其主要功能在于交互式地浏览和修改数据,生成动态Web内容。狭义的Servlet是指Java语言实现的一个接口,广义的Servlet是指任何实现了这个Servlet接口的类,一般情况下,人们将Servlet理解为后者。
Servlet运行于支持Java的应用服务器中。从原理上讲,Servlet可以响应任何类型的请求,但绝大多数情况下Servlet只用来扩展基于HTTP协议的Web服务器。
最早支持Servlet标准的是JavaSoft的Java Web Server,此后,一些其它的基于Java的Web服务器开始支持标准的Servlet。
package service; import java.util.Date; import java.util.List; import entity.Bankcard; import test.BankcardDAO; //业务逻辑 public class BankcardService { //验证登录方式 public Bankcard Login(String cardid, String password) { Bankcard rtn = null; // 得到卡信息 Bankcard bc = new BankcardDAO().getBankcard(cardid); if (bc != null) { // 验证数据有效性 if (bc.getState().equals("1") && bc.getPassword().equals(password)) { rtn = bc; } } return rtn; } //添加数据的方法 public boolean addBankcard(Bankcard bc) { boolean rtn=false; //生成cardid String cardid=((int)(Math.random()*1000000)+"000000").substring(0, 6); bc.setBalance(0); bc.setTime(new Date()); bc.setState("1"); //调用dao,保存数据 rtn=new BankcardDAO().insertBankcard(bc)==1; return rtn; } public List<Bankcard> getAllBankcard() { return new BankcardDAO().getAll(); } //删除 public void removeBankcard(String cardid) { //过滤不能删除的数据 if(!cardid.equals("123456")) { new BankcardDAO().deleteBankcard(cardid); } } }
二、Servlet的运行过程
Servlet程序是由WEB服务器调用,web服务器收到客户端的Servlet访问请求后:
①Web服务器首先检查是否已经装载并创建了该Servlet的实例对象。如果是,则直接执行第④步,否则,执行第②步。
②装载并创建该Servlet的一个实例对象。
③调用Servlet实例对象的init()方法。
④创建一个用于封装HTTP请求消息的HttpServletRequest对象和一个代表HTTP响应消息的HttpServletResponse对象,然后调用Servlet的service()方法并将请求和响应对象作为参数传递进去。
⑤WEB应用程序被停止或重新启动之前,Servlet引擎将卸载Servlet,并在卸载之前调用Servlet的destroy()方法。