1.展示如下表格的HTML代码:
A1 | A2 | C1 |
B1 | B2 | |
合计 | C2 |
<table border="1" width="150">
<tr>
<td>A1</td>
<td>A2</td>
<td rowspan="2">C1</td>
</tr>
<tr>
<td>B1</td>
<td>B2</td>
</tr>
<tr>
<td colspan="2">合计</td>
<td>C2</td>
</tr>
</table>
jsp表单method为GET方式和POST方式有什么区别?
(1)get和post的区别
<form name="regForm" action="动作" method="提交方式"></form>
- 1
- 2
get: 以明文的方式通过URL提交数据,数据在URL中可以看到。提交的数据最多不超过2KB。安全性较低但效率比post方式高,适合提交数据量不 大、安全性不高的数据。比如:搜索、查询等功能。
post: 将用户提交的信息封装在 HTML HEADER 内,适合提交数据量大、安全性高的用户信息。比如:注册、修改、上传等功能。
js的基础对象有哪些?Window和document的常用方法有哪些?
BOM对象(window:location地址、history历史、document文档、screen窗口、navigator帮助)包含了DOM对象(document)
Window对象
-常用方法:
alert(str)提示对话框,显示str字符串的内容
confirm(str)确定对话框,显示str字符串的内容
setTimeout()一次性定时器,clearTimeout()
setInterval()周期性定时器,clearInterval()
DOM概述
--js能够改变页面中的所有HTML元素
--js能够改变页面中的所有HTML属性
--js能够改变页面中的所有CSS样式
--js能够对页面中的所有事件作出反应
元素节点的内容:
-innerText
-innerHTML
节点属性:
getAttribute()
setAttribute()
removeAttribute()
-document.getElementById();通过指定ID返回元素节点
-document.getElementsByTagName();通过标签名称查询,返回所有元素
-document.getElementByName()通过name属性查询
详细描述SpringMVC中contoller、service、view(jsp)分别的作用是什么?
1)Controller层:负责具体业务模块流程的控制,即调用Service层的接口来控制业务流程。负责url映射(action)。
2)Dao层:负责数据持久化,与数据库进行联络的任务都封装在其中,Dao层的数据源以及相关的数据库连接参数都在Spring配置文件中进行配置。Dao接口中的方法都大同小异,因为对数据库的基本操作类似:insert、delete、update,select。 在Dao层定义的一些方法,在Service层并没有被使用的情况:Dao层的操作经过抽象后基本都是通用的,在Dao层完成相关方法的定义,有利于支持后期Service层的扩展。(与相应的mapper对应)
3)Entity层:java对象,与数据库表一一对应,是其对应的实现类。即一个Entity就是对应表中的一条记录。
4)Service层:建立在DAO层之上,Controller层之下。调用Dao层的接口,为Controller层提供接口。负责业务模块的逻辑应用设计,首先设计接口,再设计其实现的类。
5)View层:表示层,负责前端jsp页面表示。
面向接口编程。表示层调用控制层,控制层调用业务层,业务层调用数据访问层。
Dao层设计与设计的数据库表,和实现类(对应的Entity或者JavaBean)一一对应。
View层与Controller层结合紧密,需要二者结合协同开发。Service层、Dao层和其他层次耦合很低,完全可以单独开发。
- 把值从view(jsp)传给Controller有哪几种方法?各适用于什么情况?
MVC中的页面传值,通常指Controller和view之间的数据传递,经常用到的有几种方式,总结如下:
一、Controller----------->View
1、ViewData
获取或设置一个字典,其中包含在控制器和视图之间传递的数据。使用ViewData是采用键值对的形式,对所定义的数据进行传递。在View中会自动识别到拥有唯一键值的ViewData,并将数据显示出来。
例子:
1 2 3 4 5 6 7 8 9 10 |
|
视图中接收:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
|
2、ViewBag
获取视图包,允许自定义属性进行赋值,属于动态类型(dynamic),以ViewBag.属性=属性值得方式进行传值,其实这里跟ViewData的使用原理类似。
例子:
1 2 3 4 |
|
视图中接收
<h1>ViewBag.Title
</h1>
3、其他方式
在从controller向view传值时,除了以上两种方式外,还包括一些链接的方式,例如页面跳转的方式RedirectToAction,还有RenderAction等自动接收等方式。
二、从View-------->Controller
1、其实在这种情况下,通常会选择利用ajax来通过get或者post进行提交。如果采用最原始的JS来做,就要用到之前总结的ajax经典的五步工作法了,但是通常我们采用JQuery封装好的ajax提交方式。
即$.ajax({type,url,data,success:function(){})其中最常用的就是这几个参数属性了。
2、通过Get方式+路由配置+id值进行提交数据
1 2 |
|
JS:
1 2 3 4 5 6 7 |
|
三、Action---------->Action
前面两种传值方式都是在view和Controller之间进行数据传递,那么如果某一个业务需要用到后台的两个Action,并且需要再这两个Action之间进行数据传递,这时需要用到另一个概念TempData:获取要传递到视图的临时数据.使用时,需要注意TempData的生命周期,只在第一次请求Action时临时数据存在,之后自动变为NULL,具体的使用与ViewData相同,属于键值对的数据字典类。
1 2 3 4 5 6 7 8 9 10 |
|