[一站式服务]Spring MVC实现简单CURD项目

前言


一个简单的网页CURD系统。用上了从来没用多的Spring MVC框架。一路走来。收获了非常多。在这里记录下来分享给大家!


流程

搭建spring 框架(MVC 上下文、监听器、设置过滤jsp和html、GBK编码、session时间、jsp配置标签)--->JdbcTemplate及数据库配置
--->tomcat部署项目--->编码(pojo、persistence、service、controller、jsp)

学习收获(走过的坑)

1. Tomcat Context配置[2]:使用配置文件部署项目失败(预备知识->了解tomcat 部署项目三种方式)
2. Controller中的错误信息无法在传递到前台弹出
//error.cardType从配置文件读取,通过RedirectAttribute传递
RedirectAttributes att-->att.addAttribute("errorMessage", resource.getMessage("error.cardType", new Object[] {},LocaleContextHolder.getLocale()));
//通过model传递到前台,两步缺一不可
model.addAttribute("errorMessage", request.getParameter("errorMessage"));

3. URI中含有中文,而web.xml已经对处理为GBK,但仍未乱码
考虑到别的项目也会用到tomcat安装文件夹/conf/server.xml中的URIEncoding的值
所以才去以下的方法处理:
首先控制台得到Request中的编码,这样能够针对做处理--->log.debug(request.getCharacterEncoding());
之后就好办了,用到java中主要的编码转换,就可以解决--->new String(str.getBytes("GBK"), "UTF-8")

4. SpringMVC @PathVariable中含有特殊字符(;\/'#%)不包含括号的处理
在前台能够处理的逻辑,尽量放在前台
JS推断是否包括特殊字符 [3]
@RequestMapping的REST风格[4]:说明了正則表達式
SpringMVC @PathVariable 中含有中文和点号[5]:配置文件是中文的情况

5. SpringMVC 正确显示自己定义的中文信息[6]

6. 做站点,非常easy忽视的问题--->404、500错误
-----------------------------2014年4月30日更新:关于ThreadPoolExecutor线程池中corePoolSize值得问题-----------------------------
7. Rules of a ThreadPoolExecutor pool size[17]:文章从两个角度讲述了ThreadPoolExecutor 中的线程数增长问题,值得一读
8. What is the difference between corePoolSize and maxPoolSize in the Spring ThreadPoolTaskExecutor[18]:当中比較不错的回答,corePoolSize不是越多越好,
要适度。并且在调整corePoolSize之前,先要确定程序本身是否有问题,corePoolSize的配置在客户现场方面不带有非常大的不确定性。你也不可能每次请求都改动corePoolSize的值
-----------------------------2014年5月4日更新:js得到前台中英文混合长度问题-----------------------------
9. Javascript中得到中英文混合字符串的长度[19]:解说了问题出现的原因及解决方法。

推荐看ISO/IEC 8859-1[20],当中有字符表

-----------------------------2014年5月9日更新:关于Tomcat 5.5 部署问题-----------------------------
10.  Tomcat 5.5默认不解析EL表达式的解决的方法[21]:因为系统之前是在Tomcat 6.0上測试通过。近期换称5.5,结果就悲剧了,出现{} --- %7B%7D的问题,一開始以为是URIEncoding的问题。最后实在没有办法就问了公司的大牛,原来是EL表达式的问题,看来还是没有看清楚问题的本质啊!要学会给问题定位!


-----------------------------2014年5月23日更新:-----------------------------

最佳实践

1.尽管项目是完毕了,可是仍然对spring MVC总体的认识不是非常清楚。推荐看( spring官方文档[1])
2. Spring MVC 教程,高速入门,深入分析[7],讲述了spring MVC中的各大要点,能够在看完基础之后。拿这个当手冊看。
3. 跟开涛学SpringMVC[8]:这个事学习spring mvc不错的系列,另外參考spring官方能够让你掌握这门技术
4. 基于spring3.0.5 mvc 简单用户管理实例[9]:博主推荐看spring官方文档
5. Spring 注解学习手札(二) 控制层梳理[10]:博主的文章会非常有调理,不错
6. Spring 3.x MVC 入门系列[11]:解说的非常透彻,尤其是配图非常好。非常清晰
7. Ajax无刷新表格行内编辑源代码带数据库[12]:实现行内编辑效果
8. Java servlet+Ajax 用户管理(全然无刷新增删改查及分页)[13]:不是不论什么时候都会用到ajax,页面中有非常多区域,仅仅须要刷新某个区域的时候,要用到。
9. jQuery Ajax 英文官方api[14]中文API[15]
10. jQuery Ajax 全解析[16]:详解了每一个函数。并配有实时样例解说。来加深理解

參考文献

转载于:https://www.cnblogs.com/ljbguanli/p/7093924.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值