工作常用方法:自己看的

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配置
<%@taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
		2.maven:
			<dependency>
  				<groupId>javax.servlet</groupId>
  				<artifactId>javax.servlet-api</artifactId>
  				<version>3.0.1</version>
  				<scope>provided</scope>
			 </dependency>
			<dependency>
  				<groupId>javax.servlet.jsp</groupId>
  				<artifactId>javax.servlet.jsp-api</artifactId>
			    <version>2.2.1</version>
  				<scope>provided</scope>
			 </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为允许;
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 《计算机视觉 : 一种现代方法 第二版 pdf》是一本介绍计算机视觉领域基础理论和方法的书籍。计算机视觉是一门研究如何让计算机能够“看”的学科,它使用计算机科学和人工智能的方法来解决从图像或视频中获取、处理和理解信息的问题。 这本书是计算机视觉领域的经典教材之一,第二版对第一版进行了更新和扩充。书中首先介绍了计算机视觉的基本概念和应用领域,包括图像处理、模式识别和三维重建等。接着,书籍详细阐述了计算机视觉中的各种算法和技术,包括图像特征提取、目标检测与跟踪、图像分割和图像匹配等。 此外,该书还介绍了计算机视觉中的一些高级主题,如深度学习在计算机视觉中的应用、立体视觉和物体识别等。书中的内容深入浅出,既易于理解又具有一定的深度,适合作为计算机视觉领域的入门教材或用于相关专业人员的学习和研究参考。 《计算机视觉 : 一种现代方法 第二版 pdf》的特点包括内容详尽全面、理论与实践相结合、案例丰富。读者通过学习该书,可以获得对计算机视觉领域的全面了解,掌握计算机视觉的基本原理和常用技术,为进一步深入研究和应用提供基础。 最后,这本书广泛应用于计算机科学、人工智能、机器学习、图像处理等相关专业的教学和研究领域。无论是学生、研究人员还是从业人员,都可以通过阅读该书来提高对计算机视觉的认识和应用能力。 ### 回答2: 《计算机视觉:一种现代方法第二版》是由David A. Forsyth和Jean Ponce合著的计算机视觉领域的经典教材。该书详细介绍了计算机视觉的基础理论、算法和相关应用,旨在帮助读者深入理解计算机视觉的概念和实践。 该书共分为16个章节,内容包括图像处理、图像特征、几何与相机模型、图像检索、物体识别与跟踪等方面。通过对这些章节的学习,读者可以系统地了解计算机视觉的基本原理和技术,从而为实际应用提供参考。 其中,该书第二版相较于第一版进行了重大更新和改进。新版书中包含了最新的理论和算法,如深度学习、卷积神经网络等,以及一些实际应用案例,如人脸识别、自动驾驶等。此外,书中还涵盖了现代计算机视觉领域的前沿研究和挑战,引导读者深入思考和探索未来发展方向。 《计算机视觉:一种现代方法第二版》以其系统性、全面性和权威性而受到广大学习者和研究者的欢迎。读者不仅可以通过该书学习计算机视觉的基本概念和技术,还可以通过练习题和实践项目提升自己的实际操作能力。年轻的研究者可以通过深入研读此书,拓展自己的研究领域;工程师和开发者可以将书中的理论和技术应用于实际项目中,提升工作效率和质量。 总之,《计算机视觉:一种现代方法第二版》是一本权威、实用的计算机视觉教材,对于想要深入学习和应用计算机视觉的读者而言,具有极高的参考价值。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值