ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

工作常用方法:自己看的

2021-04-25 15:56:09  阅读:115  来源: 互联网

标签:常用 CTRL 对象 no 工作 json location 方法 页面


1.BeanUtils工具类

  • 使用:
    需要引入commons-beanutils-1.8.3.jar
  • 作用:
    将前端的数据表单进行封装到指定类型的bean中
Map<String, String[]> ma = req.getParameterMap();User user  = new User();;BeanUtils.populate(user,ma);

2.重定向和转发

  • 使用:
    借助于关于response
  • 作用:
    在后台满足某一条件后,进行重定向或者转发到其它页面
1.重定向	- response.sendRedirect("testRetrunString").
	 相当于return "redirect:testReturnModelAndView";2.转发	- request.getRequestDispatcher("/WEB-INF/pages/success.jsp").forward(request, response);
	 相当于return "forward:/WEB-INF/pages/success.jsp";

3.设置编码及响应结果

  • 使用:
    关于编码
  • 作用:
    使得前端后台数据一致
响应:
response.setCharacterEncoding("utf-8");response.setContentType("application/json;charset=utf -8");response.getWriter().write("json 串");接收:
req.setCharacterEncoding("utf-8");

4.前端数据获取

  • 使用:
    maven配置
		2.maven:			<dependency>
  				<groupId>javax.servletgroupId>
  				<artifactId>javax.servlet-apiartifactId>
  				<version>3.0.1version>
  				<scope>providedscope>
			 dependency>
			<dependency>
  				<groupId>javax.servlet.jspgroupId>
  				<artifactId>javax.servlet.jsp-apiartifactId>
			    <version>2.2.1version>
  				<scope>providedscope>
			 dependency>

  • 作用:
    将数据存在request域中,前端获取仅在jsp页面中
1.	后台:request.setAttribute("users",users);
	前端:${users}2. 	后台:
				ModelAndView mv = new ModelAndView();
				mv.addObject("username", "张三");
	前端:${username}

5.域对象

  • 在jsp页面中不需要创建,直接使用的对象
变量名真实类型作用
pageContextPageContext当前页面共享数据,还可以获取其他八个内置对象
requestHttpSerletRequest一次访问的多个资源(转发)
sessionHttpSession一次会话的多个请求间
applicationServletContext所有用户间共享数据
responseHttpServletResponse响应对象
pageObject当前页面(Servlet)的对象 this
outJspwriter输出对象,数据输出到页面上
configServletConfigServlet的配置对象
exceptionThrowable异常对象

6.刷新页面

  • 使用:
    js刷新页面

  • 作用:
    指令触法当前页面刷新及自动刷新

 - location.reload(x) :x可选参数, 默认为 false,从客户端缓存里取当前页。true, 则以 GET 方式,从服务端取最新的页面, 相当于客户端点击 F5("刷新")
 - location.replace(URL)  :方法通过指定URL替换当前缓存在历史里(客户端)的项目,因此当使用replace方法之后,你不能通过“前进”和“后退”来访问已经被替换的URL。注意:不要用 history.go(-1),或 history.back();来返回并刷新页面,这两种方法不会刷新页面。 - <meta http-equiv="refresh" content="20">  :其中20指每隔20秒刷新一次页面.(使用:页面自动刷新:把代码加入<head>区域中) - <meta http-equiv="refresh" content="20;url=http://www.jb51.net">  :其中20指隔20秒后跳转到http://www.jb51.net页面(使用:页面自动跳转:把代码加入<head>区域中) - <body οnlοad="opener.location.reload()"> 开窗时刷新
	使用:<script language="javascript">
				window.opener.document.location.reload()
		 </script>
 - <body onUnload="opener.location.reload()"> 关闭时刷新
 	使用:<script language="javascript">
				window.opener.document.location.reload()
		 </script>
 - Javascript刷新页面的几种方法:	1    history.go(0)
	2    location.reload()
	3    location=location	4    location.assign(location)
	5    document.execCommand('Refresh')
	6    window.navigate(location)
	7    location.replace(location)
	8    document.URL=location.href

7.常用的小方法

  • 1.比较验证码时,不考虑大小写
    Object.equalsIgnoreCase(Object)
    8.在前端复选框多条被选中提交
 //选中删除
        //加载完成页面后
        window.onload=function () {
            //获取id对象
            var delSelected = document.getElementById(delSelected);
            //给对象绑定单击事件
            delSelected.onclick=function () {
                //获取from表单id对象
             var deleteChoose =  document.getElementById("deleteChoose");
                //提交表单
             deleteChoose.submit();
            }
            
            //全选
			    //获取表头对象
        var all=  document.getElementById("allChoose").onclick=function (){
                //获取单个对象
                var  ids = document.getElementsByName("id");
                for (var i = 0; i <ids.length ; i++) {
                    //将表头的状态与单个对象的状态一致
                    //all也可以用this表示
                    ids[i].checked= all.checked                }
            }
        }

9.为什么要加上时间戳

浏览器中存在缓存
缓存是先看请求地址是不是一样,地址一样就取出缓存内容
加new Date().getTime(),每次请求地址就不一样。保证了不从缓存里面取
new Date().getTime() 表示当前时间毫秒值

10.idea关于重构的快捷键

重命名文件、方法、属性等(rename):SHIFT+F6
提取当前选择为变量(extract variable):CTRL+ALT+V
提取当前选择为属性(extract field):CTRL+ALT+F
提取当前选择为常量(extract constant):CTRL+ALT+C
提取当前选择为方法(extract method):CTRL+ALT+M
提取当前选择为方法参数(extract parameter):CTRL+ALT+P
重构类、方法(change signarture):CTRL+F6
提取代码块至if、try等结构中(surround with):CTRL+ALT+T
创建模块文件等(new):CTRL+ALT+N
创建测试用例(test):CTRL+SHIFT+T
重构菜单(refactor for this):CTRL+T

11.json转换

  • 前端
1.jQuery插件支持的转换方式:jsonstr :表示json字符串 $.parseJSON( jsonstr ); //将json字符串转换为js对象2.JSON.stringify(obj)将JSON转为字符串3.JSON.parse(string)将字符串转为JSON格式	
4.eval('(' + jsonstr + ')'); //可以将json字符串转换成json对象,注意需要在json字符外包裹一对小括号 (不推荐使用)	  

  • 后台
1. 把java 对象列表转换为json对象数组,并转为字符串
    JSONArray array = JSONArray.fromObject(list);
    String jsonstr = array.toString();2. 把java对象转换成json对象,并转化为字符串
  	JSONObject object = JSONObject.fromObject(user);
 	 String jsonstr = object .toString();3.把JSON字符串转换为JAVA 对象数组
 	 JSONArray json = JSONArray.fromObject(userStr);//userStr是json字符串
 	 List<User> users= (List<User>)JSONArray.toCollection(json, User.class);4.把JSON字符串转换为JAVA 对象
  JSONObject jsonobject = JSONObject.fromObject(jsonStr);  User user= (User)JSONObject.toBean(object,User.class);

12.window.open

window.open 是 javaScript 打开新窗口的方法
window.open 基本语法: window.open(pageURL,name,parameters);具体示例window.open('page.html', 'newwindow', 'height=100, width=400, top=0, left=0, toolbar=no, menubar=no, scrollbars=no, resizable=no, location=no, status=no')相关参数说明
window.open 弹出新窗口的命令;
 'page.html' 弹出窗口的文件名;
  'newwindow' 弹出窗口的名字(不是文件名),非必须,可用空''代替;
  height=100 窗口高度;
  width=400 窗口宽度;
  top=0 窗口距离屏幕上方的象素值;
  left=0 窗口距离屏幕左侧的象素值;
  toolbar=no 是否显示工具栏,yes为显示;
  menubar,scrollbars 表示菜单栏和滚动栏。
  resizable=no 是否允许改变窗口大小,yes为允许;
  location=no 是否显示地址栏,yes为允许;
  status=no 是否显示状态栏内的信息(通常是文件已经打开),yes为允许;

               

标签:常用,CTRL,对象,no,工作,json,location,方法,页面
来源: https://blog.51cto.com/u_15180480/2731715

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有