servlet:
public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { System.out.println("Hello AJAX!"); response.getWriter().print("Hello AJAX!!!"); } public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=utf-8"); request.setCharacterEncoding("UTF-8"); String username = request.getParameter("username");//获取请求参数 System.out.println("(POST:) Hello AJAX!" + username); response.getWriter().print("(POST:) Hello AJAX!!!" + username); }
public void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { request.setCharacterEncoding("utf-8"); response.setContentType("text/html;charset=utf-8"); /* * 1. 获取参数username * 2. 判断是否为itcast * 3. 如果是:响应1 * 4. 如果不是:响应0 */ String username = request.getParameter("username"); if(username.equalsIgnoreCase("itcast")) { response.getWriter().print("1"); } else { response.getWriter().print("0"); } }
1 52 53 54 5561演示用户名是否被注册
56
4:xml显示到jsp
1 public class BServlet extends HttpServlet { 2 public void doGet(HttpServletRequest request, HttpServletResponse response) 3 throws ServletException, IOException { 4 String xml = "" + 5 " ";11 12 response.setContentType("text/xml;charset=utf-8");13 response.getWriter().print(xml);14 }15 }" + 6 " " +10 "zhangSan " + 7 "18 " + 8 "male " + 9 "
联动:
cityservlet:
1 public class CityServlet extends HttpServlet { 2 3 public void doPost(HttpServletRequest request, HttpServletResponse response) 4 throws ServletException, IOException { 5 request.setCharacterEncoding("utf-8"); 6 response.setContentType("text/xml;charset=utf-8");//注意:发送xml这里要修改!!! 7 8 /* 9 * 获取省份名称,加载该省对应的元素!10 * 把元素转换成字符串发送给客户端11 */12 /*13 * 1. 获取省份的名称14 * 2. 使用省份名称查找到对应的 元素15 * 3. 把 元素转换成字符串,发送!16 */17 try {18 /*19 * 得到Document20 */21 SAXReader reader = new SAXReader();22 InputStream input = this.getClass().getResourceAsStream("/china.xml");23 Document doc = reader.read(input);24 25 /*26 * 获取参数27 */28 String pname = request.getParameter("pname");//获取省份名称29 Element proEle = (Element) doc.selectSingleNode("//province[@name='" + pname + "']");30 String xmlStr = proEle.asXML();//把元素转换成字符串31 response.getWriter().print(xmlStr);32 } catch(Exception e) {33 throw new RuntimeException(e);34 }35 }
provinceservlet:
1 public class ProvinceServlet extends HttpServlet { 2 3 public void doGet(HttpServletRequest request, HttpServletResponse response) 4 throws ServletException, IOException { 5 response.setContentType("text/html;charset=utf-8"); 6 /* 7 * 响应所有省份名称,使用逗号分隔! 8 */ 9 /*10 * 1. Document对象11 * * 创建解析器对象12 * * 调用解析器的读方法,传递一个流对象,得到Document13 */14 try {15 SAXReader reader = new SAXReader();16 InputStream input = this.getClass().getResourceAsStream("/china.xml");17 Document doc = reader.read(input);18 19 /*20 * 查询所有province的name属性,得到一堆的属性对象21 * 循环遍历,把所有的属性值连接成一个字符串,发送给客户端22 */23 ListarrList = doc.selectNodes("//province/@name");24 StringBuilder sb = new StringBuilder();25 for(int i = 0; i < arrList.size(); i++) {26 sb.append(arrList.get(i).getValue());//把每个属性的值存放到sb中。27 if(i < arrList.size() - 1) {28 sb.append(",");29 }30 }31 response.getWriter().print(sb);32 } catch(Exception e) {33 throw new RuntimeException(e);34 }35 }
jsp:
1 106 107 108 109省市联动
110 113 114 117