写这个只是完成使用js文件参数进行用户验证的处理的jsp 版,已经写过 asp.net php nodejs 以及纯js的,现在完善jsp的

使用的技术是比较简单的就是站点应用我们的js脚本,但是是带参数文件的,在我们的js存储的站点使用servlet 进行用户请求的参数的处理,

对于不同的用户显示不同的js脚本。实现如下:

1.引用js 的web 文件

  1. <html>
  2. <head>
  3. <script type="text/javascript" src="http://localhost:8080/mydemo/scripts/server.js?username=dalong111" ></script>
  4. <script>
  5. function demo()
  6. {
  7. var userdata=new user('dalogn eeeee',777);
  8. alert(userdata.say());
  9. }
  10. </script>
  11. </head>
  12. <body>
  13. <style>
  14. #div
  15. {
  16. margin-left:auto;
  17. margin-right:auto;
  18. width:90%;
  19. height:auto;
  20.  
  21. text-align:center;
  22. background-color:white;
  23.  
  24. }
  25. </style>
  26. <div id="div">
  27. this is a demo
  28. <div>
  29. <button onclick="userdemo()">click</button>
  30. </body>
  31.  
  32. </html>

就是一个很简单的html页面,之后调用我们传递的js 代码

2.创建jsp web站点

使用myeclipse 即可,比较简单

具体的文件介绍webroot 下的scripts 文件夹就是需要引用的文件。

包userservice 中是我们使用servlet 进行判断的代码

  1. package userservice;
  2.  
  3. import java.io.IOException;
  4. import java.io.PrintWriter;
  5.  
  6. import javax.servlet.ServletException;
  7. import javax.servlet.http.HttpServlet;
  8. import javax.servlet.http.HttpServletRequest;
  9. import javax.servlet.http.HttpServletResponse;
  10.  
  11. public class dalongservlet extends HttpServlet {
  12.  
  13. public void doGet(HttpServletRequest request, HttpServletResponse response)
  14. throws IOException, ServletException //重载doGet()方法
  15.  
  16. {
  17.  
  18. String tep=request.getQueryString();
  19. String username=request.getParameter("username");
  20.  
  21. PrintWriter out = response.getWriter();
  22. if(username.equals("dalong"))
  23. {
  24. out.println("function userdemo(){alert('"+username+"')}");
  25. }
  26. else
  27. {
  28. out.println("function userdemo(){alert('not validata user')}");
  29.  
  30. }
  31.  
  32. }
  33.  
  34. }

以上是处理的servlet代码 主要是判断用户名,并返回不同的js文件内容

3. web.xml 文件的配置

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <web-app version="3.0"
  3. xmlns="http://java.sun.com/xml/ns/javaee"
  4. xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  5. xsi:schemaLocation="http://java.sun.com/xml/ns/javaee
  6. http://java.sun.com/xml/ns/javaee/web-app_3_0.xsd">
  7. <display-name></display-name>
  8. <welcome-file-list>
  9. <welcome-file>index.jsp</welcome-file>
  10. </welcome-file-list>
  11. <servlet>
  12. <servlet-name>dalongdemo</servlet-name>
  13. <servlet-class>userservice.dalongservlet</servlet-class>
  14. </servlet>
  15. <servlet-mapping>
  16. <servlet-name>dalongdemo</servlet-name>
  17. <url-pattern>/</url-pattern>
  18. </servlet-mapping>
  19. </web-app>

4.进行测试

username为dalong的

username 为dalong11的

以上就是测试结果

5.总结

使用代码对于引用我们站点的文件进行控制可以方便对于我们的站点的资源的安全控制,使用js文件进行参数传递可以发挥

js脚本在web 开发中的巨大,提高系统的灵活性。

jsp servlet 进行基于js的用户验证的更多相关文章

  1. 基于jsp+servlet图书管理系统之后台用户信息修改操作

    上一篇的博客写的是查询操作,且附有源码和数据库,这篇博客写的是修改操作,附有从头至尾写的代码(详细的注释)和数据库! 此次修改操作的源码和数据库:http://download.csdn.net/de ...

  2. 基于jsp+servlet图书管理系统之后台用户信息删除操作

    上一篇的博客写的是修改操作,且附有源码和数据库,这篇博客写的是删除操作,附有从头至尾写的代码(详细的注释)和数据库! 此次删除操作的源码和数据库:http://download.csdn.net/de ...

  3. 基于jsp+servlet图书管理系统之后台用户信息插入操作

    前奏: 刚开始接触博客园写博客,就是写写平时学的基础知识,慢慢发现大神写的博客思路很清晰,知识很丰富,非常又价值,反思自己写的,顿时感觉非常low,有相当长一段时间没有分享自己的知识.于是静下心来钻研 ...

  4. 基于jsp+servlet图书管理系统之后台用户信息查询操作

    上一篇的博客写的是插入操作,且附有源码和数据库,这篇博客写的是查询操作,附有从头至尾写的代码(详细的注释)和数据库! 此次查询操作的源码和数据库:http://download.csdn.net/de ...

  5. 基于JS的文本验证

    1,不能为空 <input type="text" onblur="if(this.value.replace(/^ +| +$/g,'')=='')alert(' ...

  6. 基于JS的身份证验证(完整版)

    var Wi = [ 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2, 1 ]; // 加权因子 var ValideCode = [ 1, 0 ...

  7. 基于cookie实现用户验证

    #!/usr/bin/env python import tornado.ioloop import tornado.web class IndexHander(tornado.web.Request ...

  8. python_tornado_session用户验证

    什么是session? -- Django中带有session,tornado中自己写 -- 逻辑整理 用户请求过来,验证通过,随机生成一个字符串当作value返回给浏览器, 在服务器中用户信息与随机 ...

  9. 基于jsp+servlet图书管理系统之后台万能模板

    前奏: 刚开始接触博客园写博客,就是写写平时学的基础知识,慢慢发现大神写的博客思路很清晰,知识很丰富,非常又价值,反思自己写的,顿时感觉非常low,有相当长一段时间没有分享自己的知识.于是静下心来钻研 ...

随机推荐

  1. (GoRails) 用app/decorators来取代app/helpers; delegate()方法

    视频:https://gorails.com/episodes/decorators-from-scratch?autoplay=1 装饰设置风格:把Model层变的干净,但不使用app/helper ...

  2. 百度定位SDK

    按照官网要求配置SHA1和包名生成ak秘钥 生成秘钥命令: keytool -list -v -keystore debug.keystore 密码:原始密码为android 添加libs文件夹并在g ...

  3. Pavel and barbecue CodeForces - 756A (排列,水题)

    大意: 给定排列p, 0/1序列b, 有n个烤串, 每秒钟第i串会移动到$p_i$, 若$p_i$为1则翻面, 可以修改b和p, 求最少修改次数使得每串在每个位置正反都被烤过. 显然只需要将置换群合并 ...

  4. array_unshift

    <!DOCTYPE html> <html> <body> <?php $a=array(0=>"red",1=>" ...

  5. Error: [ng:areq] Argument 'LoginCtrl' is not a function, got undefined

  6. splunk中mongodb作用——存用户相关数据如会话、搜索结果等

    About the app key value store The app key value store (or KV store) provides a way to save and retri ...

  7. spring cloud 学习(一)初学SpringCloud

    初学SpringCloud 前言 在SpringBoot的坑还没填完的情况下,我又迫不及待地开新坑了.主要是寒假即将结束了,到时又得忙于各种各样的事情……留个坑给自己应该就会惦记着它,再慢慢地补上…… ...

  8. Rotate Array 旋转数组 JS 版本解法

    Given an array, rotate the array to the right by k steps, where k is non-negative. 给定一个数组,并且给定一个非负数的 ...

  9. PHP:第四章——PHP数组添加,删除,插入,分割,合并,及运算符

    <pre> <?php header("Content-Type:text/html;charset=utf-8"); /*知识点一:赋值运算符 = 代码示例:数 ...

  10. onmouseover和onmouseout的bug

    脑子不好用了,一点东西要看几遍才能记住,学过的东西也要好几遍,悲哀. 习惯了jquery的hover,或者看过hover源码,或者是正美的<框架设计>,onmouseover和onmous ...