![](https://app.yinxiang.com/shard/s42/res/890fb32c-dfbd-4125-bcc5-7e641b8c9198/1.png)
1.为什么这么配置,这个配置主要是作用是什么,主要的是针对什么
mybatis之xml映射配置
![](https://app.yinxiang.com/shard/s42/res/b16cedaa-0424-44ab-9a83-1b1a704647c4/3.png)
![](https://app.yinxiang.com/shard/s42/res/582f3b02-3922-4124-b60a-44bb0d97f5bd/2.png)
sql语句当中 Example_Where_Clause 这个仅仅是一段sql语句吗?
<trim 标签在此处的用法和表达的意义
test="condition.userId" 这个标签是怎么来的,代表什么?
![](https://app.yinxiang.com/shard/s42/res/8bbc88a9-daa4-4998-a338-af8bb684a155/3.png)
红色粗线为什么这么写,有什么意义?
![](https://app.yinxiang.com/shard/s42/res/2de9bdef-c6b2-4b04-b76d-26d2d7726edf/4.png)
这种<trim 标签的用法有什么作用,相当于sql的那一句话?
![](https://app.yinxiang.com/shard/s42/res/91132acb-886d-4abb-8084-9b916c993460/4.png)
第一个红线框是查询语句
id:是标注此seletct的标识, resultMap是调用resultMap的id标签标识,parameterTyep是传入的参数类型
第二个红线框是什么意思??
distinct是独特的不同的就是唯一的意思。
![](https://app.yinxiang.com/shard/s42/res/499a6bd1-e48a-409c-a0e6-1fa6da47ecff/5.png)
<selectKey>这个标签主要是插入的时候设置主键的应用。
select replace (uuid(),'-','') 是生成唯一的uuid编码
![](https://app.yinxiang.com/shard/s42/res/23e70c15-5e74-474d-b33e-71b237875b7f/6.png)
转换成sql语句应该是什么样子呢?为什么是a.xxx呢?这个a是别名吗?又是从何得到这个别名呢?
仔细看 FROM base_modules a,这个就是定义此数据库的别名为a
![](https://app.yinxiang.com/shard/s42/res/be37dbf4-df0e-4da7-89b5-25752da250ae/7.png)
这个是什么意思呢?为什么写成${condition.dynamicSql} 其中这个condition是什么,dynamicSql是什么意思?为什么不写成#{conditon.dynamicSql}?
![](https://app.yinxiang.com/shard/s42/res/892d898f-fa75-46a2-8a92-4076b3ab6605/1.png)
这个resultMap是什么意思呢?
resultMap是导入 resultMap的id标签的唯一标识。但是resultMap不能和resultType同时使用。
下面是web.xml的配置问题了。
![](https://app.yinxiang.com/shard/s42/res/06b7d0b7-96ae-4196-a615-2cb7a4206a53/1.png)
标注1:这个是个欢迎界面,当用户访问网站的时候,第一个登陆的看到的是此页面。就是views下的首页面
标注2: 那个action就是com.netbirdtech.framework.dispatcher.ActionController 别名(听着好听,书写方便简单)。实际上执行的时候,凡是action类型的东西都到com.netbirdtech.framework.dispatcher.ActionController去执行。什么是action类型呢?
标注3就是了。
标注3: 就是说凡是在路径下出现***.action的都是action的类型
标注4: 和标注2一样
标注5:
context-param元素用来设定web站台的环境参数,他包含两个子元素
param-name和param-value.
<param-name>参数名称</param-value>
设定Context名称
<param-value>值</param-value>
设定Context名称的值
<display-name>站台名称</display-name> 定义站台的名称
<description>站台描述</description> 对站台做出描述
范例:
<context-param>
<param-name>param_name</param-name>
<param-value>param_value</param-value>
</context-param>
此所设定的参数,在JSP网页中可以使用下列方法来取得:
${initParam.param_name}
若在Servlet可以使用下列方法来获得
String param_name=getServletContext().getInitParamter("param_name");
![](https://app.yinxiang.com/shard/s42/res/953cf817-f7d6-42df-a8b2-b6ffb3fe43a6/2.png)
标注9:
在web.xml中设置session-config如下:
<session-config>
<session-timeout>2</session-timeout>
</session-config>
即客户端连续两次与服务器交互间隔时间最长为2分钟,2分钟后session.getAttribute()获取的值为空
API信息:
session.getCreationTime() 获取session的创建时间
session.getLastAccessedTime() 获取上次与服务器交互时间
session.getMaxInactiveInterval() 获取session最大的不活动的间隔时间,以秒为单位120秒
在Java Web开发中,Session为我们提供了很多方便,Session是由浏览器和服务器之间维护的。Session超时理解为:浏览器和服务器之间创建了 一个Session,由于客户端长时间(休眠时间)没有与服务器交互,服务器将此Session销毁,客户端再一次与服务器交互时之前的Session就 不存在了。
设置Session超时时间方式:
范例:在web.xml中设置session-config如下:
<session-config>
<session-timeout>2</session-timeout>
</session-config>
即客户端连续两次与服务器交互间隔时间最长为2分钟,2分钟后session.getAttribute()获取的值为空
API信息:
session.getCreationTime() 获取session的创建时间
session.getLastAccessedTime() 获取上次与服务器交互时间
session.getMaxInactiveInterval() 获取session最大的不活动的间隔时间,以秒为单位120秒