SpringMVC知识点汇总

1.${SESSION_USER_V2}

会从大到小查找作用域中的attribute
          PageContext                          PageScope
          servletRequest                       RequestScope
          httpSession                         SessionScope
          Application/servletContext        ApplicationScope   
          
          
2.${param.name}

实际上是相当于request.getParameter("name")方法

3.空连接

href="#"方法:

其实也是空连接的意思,但是点击之后会自动跳转到页面的最上面,因为用了这个方法就相当于点击了一个锚记,但是这个锚记又没写ID,所以就默认跳转到页面顶部。

href="javascript:void(0);"方法:
void是一个操作符,这个操作符指定要计算一个表达式但是不返回值。如果在void中写入0(void(0)),则什么也不执行,从而也就形成了一个空链接。

#与javascript:void(0)的区别:
所以,#与javascript:void(0)的区别也很明显,#方法会跳转到页面的顶部,并且在页面URL后面会出现#,而javascript:void(0)方法不会,所以如果是空连接的话,还是推荐javascript:void(0)。

4.添加删除样式

$(function(){
    $("#myArticle").click(function(){
        $("#allArticle").removeClass("current");
        $("#myArticle").addClass("current");//最好不要用Attr()和removeAttr(),因为css样式会继承
    })    
    $("#allArticle").click(function(){
        $("#myArticle").removeClass("current");
        $("#allArticle").addClass("current");//
    })    
    
})

5.SpringMVC获取session
直接在方法上使用 HttpSession即可注入

或者注入HttpServletRequest--->再获取Session

6.拦截器配置
applicationContext.xml
 <mvc:interceptors>
        <mvc:interceptor>
            <mvc:mapping path="/comment*"/>
            <mvc:mapping path="/article/add"/>
           <mvc:mapping path="/article/myArticle"/>
            <bean class="com.dooioo.samples.blog.inteceptor.LoginInteceptor" />
        </mvc:interceptor>
    </mvc:interceptors>
    
7. context root设置问题

比如我们的项目名称是myApp(即myApp文件夹下有WEB-INFO文件夹),发布在本机80端口,且context-root设置为myApp,
则访问默认欢迎页面时的url是:http://localhost:80/myApp。如果context-root设置成/,则url会变成:http://localhost:80/

1.在新建web项目时,仔细观察会有输入框提示输入context-root,如果希望url是后者的样子,则context-root框中只输入"/"即可,否则输入你想要的目录名称;

2.如果您使用eclipse开发,则在项目上右击,然后选择属性,再选择Web Project Settings,然后修改

context-root内容;若您使用myEclipse开发,则右击项目-->“Properties”-->“MyEclipse”-->“Web”,看到了吧“Context Root”选项卡里的“Web Context-root”,修改之;

8.修改eclipse虚拟机内存
-vmargs
-Dosgi.requiredJavaVersion=1.6
-Xms256m
-Xmx1024m  堆内存
-XX:PermSize=512M    非堆内存
-XX:MaxPermSize=1024M

9.Target runtime Apache Tomcat v6.0 is not defined.
项目文件夹下
.settings\org.eclipse.wst.common.project.facet.core.xml文件中
<?xml version="1.0" encoding="UTF-8"?>
<faceted-project>
  <runtime name="Apache Tomcat v6.0"/>
  <fixed facet="java"/>
  <fixed facet="jst.web"/>
  <fixed facet="wst.jsdt.web"/>
  <installed facet="java" version="1.6"/>
  <installed facet="jst.web" version="2.5"/>
  <installed facet="wst.jsdt.web" version="1.0"/>
</faceted-project>
删除掉 <runtime name="Apache Tomcat v6.0"/>

10. Server Tomcat v7.0 Server at localhost was unable to start within 45 seconds. If the server requires more time, try increasing the timeout in the server editor.

11. ibatis中sql语句中#与$的区别

1.#是把传入的数据当作字符串,如#user_id_list#传入的是1,2,则sql语句生成是这样,in (‘1,2‘) ,当然不可以

2.$传入的数据直接生成在sql里,如#user_id_list#传入的是1,2,则sql语句生成是这样,in(1,2) 这就对了.

3.#方式能够很大程度防止sql注入

4.$方式无法方式sql注入

5.$方式一般用于传入数据库对象,例如传入表名

直观的说
#str# 出来的效果是  ‘str‘
$str$ 出来的效果是  str

另外  ##只能用在特定的几个地方 $$可以用在任何地方  比如 order by $str$

你甚至可以直接写  $str$  把 order by 这个字串放在str里传进来

12. model.addAttribute(article)

默认key为article的类型

13.springmvc的controller默认是单例的

可以加上@Scope("prototype")变为多实例的

14.<jsp:param>标签

<jsp:param>操作被用于以"名-值"对的形式为其他标签提供附加信息。
它可以和<jsp:include>,<jsp:forward>,<jsp:plugin>一起使用。

例1:实现 includeaction.jsp中展示come.jsp页面,值由主页面传入。

includeaction.jsp代码

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=GB18030">
    <title>Include</title>
</head>
<body>
    <%double i = Math.random();%>
    <jsp:include page="come.jsp">//加载come.jsp
        <jsp:param name="number" value="<%=i%>" />//传递参数
    </jsp:include>
</body>
</html>

在come.jsp代码

<html>
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=GB18030">
    <title>come</title>
</head>
<body bgcolor=cyan>
  <Font Size=3>
  <%//获得includeAction.jsp传来的值:
    String str = request.getParameter("number");
    double n = Double.parseDouble(str);
   %>
    The value form includeAction is:<br> <%=n%>
</Font>
</body>
</html>


15. return false
取消元素的默认行为

16.Ibatis中SqlMapClientTemplate和SqlMapClient的区别
SqlMapClientTemplate是org.springframework.orm.ibatis下的
而SqlMapClient是ibatis的
SqlMapClientTemplate是SqlMapClient的封装类.
SqlMapClient中包含着session的管理.
SqlMapClientTemplate用于session的封装,以及异常的捕捉.
所以按照以上的推断来说.应该尽量使用SqlMapClientTemplate.
保证session以及Exception的正常以及统一.
参考文章:
http://blog.csdn.net/wxwzy738/article/details/16953609

17.there is no statement named xxx in this SqlMap
sqlmap文件定义了namespace属性,就需要这样写:(你的namespace).(定义的statement的id),如果把namespace属性漏了,就被报此异常

<sqlMap namespace="Category">
    <typeAlias alias="category" type="com.dooioo.samples.blog.model.Category"/>

    <select id="query" resultClass="category">
        select * from category where status != -1
    </select>

     <insert id="insert" parameterClass="category">
     insert into category(name) values (#name#)
     </insert>
     
     <update id="delete" parameterClass="int" >
     update category set status=-1 where id=#id#
     </update>
     
   <select id="queryForPaginate2" parameterClass="category" resultClass="category">
        mst_sp_pageshowex4 ‘$columns$ ‘,‘$table$‘,‘$where$‘,‘$orderBy$‘,$pageSize$,$pageNo$
    </select>

    <select id="count2" parameterClass="category" resultClass="integer">
        sp_pagecount ‘$table$‘,‘$where$‘
    </select>

</sqlMap>

18. ibatis upadte delete insert 返回作用的行数

com.dooioo.web.converter.DyMappingJacksonHttpMessageConverter

19.HTTP400\HTTP500

HTTP400    错误的请求
HTTP500   内部服务器错误!

404请求 404状态码是一种http状态码,其意思是: 所请求的页面不存在或已被删除!
通俗的讲就是当用户输入了错误的链接时,返回的页面。

[email protected] Article article, BindingResult result
(BindingResult result必须紧跟在@ModelAttribute后面)

21 @ModelAttribute和@Valid区别

@ModelAttribute is used to map/bind a a method parameter or method return type to a named model attribute. See @ModelAttributes JavaDoc. This is a Spring annotation.

@Valid is an annotation that marks an object for JSR-303 bean validation. See @Valids JavaDoc. It is part of JavaEE 6, but I think Hibernate has an earlier implementation that most people use instead.

The advantage of using @ModelAttribute is that you can map a form‘s inputs to a bean. The advantage of @Valid is that you can utilize JSR-303 bean validation to ensure that the bean that is made is validated against some set of rules.

Yes you can use @ModelAttribute and @Valid together.

JSR 303 – Bean Validation 是一个数据验证的规范

22.sqlserve服务器密码登录

http://blog.csdn.net/jufeng9318/article/details/8203780

23.EL表达式加三元表达式

<input id ="keyword" type="text" name="keyword"  value="${ keyword !=null ? keyword : ‘输入问题关键词,如:产品线、技术分享等…‘ }" >
 

24. web.xml启动顺序
 1.context-param
 2.listener
 3.filter
 4.servlet

时间: 2024-11-05 19:29:14

SpringMVC知识点汇总的相关文章

跟我学SpringMVC目录汇总贴、PDF下载、源码下载

跟我学SpringMVC目录汇总贴.PDF下载.源码下载 http://jinnianshilongnian.iteye.com/blog/1752171 跟开涛学SpringMVC 在线版目录 第一章 Web MVC简介 第二章 Spring MVC入门 第三章 DispatcherServlet详解 第四章 Controller接口控制器详解(1) 第四章 Controller接口控制器详解(2) 第四章 Controller接口控制器详解(3) 第四章 Controller接口控制器详解(

赵雅智:js知识点汇总

赵雅智:js知识点汇总,布布扣,bubuko.com

CodeIgniter框架——知识点汇总

NO1.学习要点: 一.CodeIgniter 框架的简介 二.CodeIgniter 框架的安装 三.CodeIgniter 框架的目录结构分析 四.CodeIgniter 框架是如何工作的? 五.CodeIgniter 框架中的控制器.视图.模型及数据库操作 六.CodeIgniter 框架中辅助函数.类库.适配器的学习 七.…… NO2. 一.CodeIgniter 是什么? 1.CodeIgniter 是一个应用程序框架 CodeIgniter 是一个为用 PHP 编写网络应用程序的人员

《正则表达式》知识点汇总摘录

开园一个月了,但一直没有抽出多少时间,就算有时间,也不知道怎么组织语言记(不是写,是记,写是一个创造的过程,像我这等程序猿,猿嘴吐不出象牙!)点东西!翻翻过去手头整理的一些知识点杂记,然后再结合网上的一些,今天对正则表达式在做一个个人的知识汇总摘录吧!程序员都是共产主义者,一点不假!大部分时候我们只是互联网的搬运工,堆砌者(扯远了,当然成为互联网创造者一直使我们的目标!). 正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符.及这些特定字符的组合,组成一个"规则字符串&quo

SpringMVC注解汇总(二)-请求映射规则

接上一节SpringMVC注解汇总-定义 讲到Httpy请求信息 URL路径映射 1)普通URL路径映射 @RequestMapping(value={"/test1", "/user/create"}): 多个URL路径可以映射到同一个处理器的功能处理方法. 2)URI模板模式映射@RequestMapping(value="/users/{userId}"): {×××}占位符, 请求的URL可以是 "/users/123456&q

软考网络工程师易混淆的知识点汇总

网络工程师考试是全国计算机技术与软件水平考试的一项中级资格考试,通过考试的合格人员能根据应用部门的要求进行网络系统的规划.设计和网络设备的软硬件安装调试工作,能进行网络系统的运行.维护和管理,能高效.可靠.安全地管理网络资源,作为网络专业人员对系统开发进行技术支持和指导,具有工程师的实际工作能力和业务水平,能指导网络管理员从事网络系统的构建和管理工作.网络工程师考试是软考的一大热门,怎样才能顺利通过考试是广大考生都想知道的,下面希赛软考学院为您带来网络工程师备考锦囊之应战篇,专业老师整理的网络工

推荐系统知识点汇总

整理归纳一下<推荐系统实践>和<推荐系统导论>两本书的知识点,文中排版格式可能会有点乱,如有问题请指正.OK,闲话不说,先上2张图 对推荐系统的建模数据进行分析,代表型数据:1)无上下文的隐形反馈数据:2) 无上下文的显性反馈数据:3) 有上下文的隐形反馈数据:4)有小上下文的显性反馈数据,其中显性的反馈数据就是用户对物品的评分,而隐形的就是用户对物品的浏览,时长等数据(不同的领域,用户对物品的行为种类不一样),像我之前的做的都全是用有上下文的隐形反馈,都是通过点击.登陆.时长归纳

python全栈开发 * 10知识点汇总 * 180612

10 函数进阶 知识点汇总 一.动态参数 形参的第三种1.动态接收位置传参 表达:*args (在参数位置编写 * 表?接收任意内容) (1)动态位置参数def eat(*args): print(args)eat("水果","蔬菜","肉",)# # 结果以元祖的形式呈现. : ('水果', '蔬菜', '肉') (2) 位置参数,动态位置参数: 动态参数必须在位置参数后?def eat(a,b,*args): print(a,b,args)e

离散知识点汇总

离散知识点汇总 += %02d #include<string.h> a[i],a[100] += 这表示把左边的数加上/减去右边的数的和/差赋值给左边的数 %02d %d:即为普通的输出. %2d:按宽度为2输出,右对齐方式输出.若不够两位,左边补空格. %02d:同样宽度为2,右对齐方式.位数不够,左边补0 %.2d:从执行效果来看,与%02d一样 #include<string.h> C语言标准库中一个常用的头文件,在使用到字符数组时需要使用.string .h 头文件定义了