已阅读5页,还剩10页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
用了大半年的 Spring MVC3 0 用着感觉不错 简单写一个搭建 Spring MVC3 0 的流程 以 Spring3 0 5 为列 数据库交互使用 spring JDBC Template 附件有项目 没有 jar 包 整个项目架构如下图所示 1 去官网下载 3 0 5 所有 jar 包 所需 jar 包 见附件图片 每个 jar 包得用处如下 org springframework aop 3 0 0 RELEASE Spring 的面向切面编程 提供 AOP 面向切面编程 实现 org springframework asm 3 0 0 RELEASE Spring 独立的 asm 程序 相遇 Spring2 5 6 的时候需要 asmJar 包 3 0 开始提供他自己独立的 asmJar org springframework aspects 3 0 0 RELEASE Spring 提供对 AspectJ 框架的 整合 org springframework beans 3 0 0 RELEASE SpringIoC 依赖注入 的基础实 现 org springframework context support 3 0 0 RELEASE Spring context 的扩展支持 用于 MVC 方面 org springframework context 3 0 0 RELEASE Spring 提供在基础 IoC 功能上 的扩展服务 此外还提供许多企业级服务的支持 如邮件服务 任务调度 JNDI 定位 EJB 集成 远程访问 缓存以及各种视图层框架的封装等 org springframework core 3 0 0 RELEASE Spring3 0 的核心工具包 org springframework expression 3 0 0 RELEASE Spring 表达式语言 org springframework instrument tomcat 3 0 0 RELEASE Spring3 0 对 Tomcat 的连接 池的集成 org springframework instrument 3 0 0 RELEASE Spring3 0 对服务器的代理接 口 org springframework jdbc 3 0 0 RELEASE 对 JDBC 的简单封装 org springframework jms 3 0 0 RELEASE 为简化 JMS API 的使用而作的 简单封装 org springframework orm 3 0 0 RELEASE 整合第三方的 ORM 框架 如 hibernate ibatis jdo 以及 spring 的 JPA 实现 org springframework oxm 3 0 0 RELEASE Spring 对 Object XMl 的映射支 持 可以让 Java 与 XML 之间来回切换 org springframework test 3 0 0 RELEASE 对 Junit 等测试框架的简单封装 org springframework transaction 3 0 0 RELEASE 为 JDBC Hibernate JDO JPA 等提供的一致的声明式和编程式事务管理 org springframework web portlet 3 0 0 RELEASE SpringMVC 的增强 org springframework web servlet 3 0 0 RELEASE 对 JEE6 0 Servlet3 0 的支持 org springframework web struts 3 0 0 RELEASE 整合 Struts 的时候的支持 org springframework web 3 0 0 RELEASE SpringWeb 下的工具包 2 借鉴 spring 官网写法 建立一个 src resources Source Folder 再新建目录 META INF 存放 springmvc servlet xml 和 jdbc context xml 文件 事务和数据库连接池的管理 以 及 database properties 和 log4j properties JDBC context xml 文件 Xml 代码 1 2 16 17 18 19 20 21 22 23 24 25 26 27 28 最大空闲时间 超过空闲时间的连接将被丢弃 29 需要注意 mysql 默认的连接时长为 8 小时 28800 可在 my ini 中 添加 wait timeout 30 单位秒 设置连接超时 这里设置 c3p0 的超时必须 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 springmvc servlet xml 文件 Xml 代码 1 2 13 14 15 16 17 23 24 25 26 27 28 29 30 31 32 33 34 全局配置 35 36 37 38 39 40 41 42 43 44 45 46 47 48 3 修改 web xml 文件如下 Xml 代码 1 2 contextConfigLocation 3 classpath META INF jdbc context xml 4 5 6 7 org springframework web context ContextLoaderListener 8 9 10 11 spring mvc 12 org springframework web servlet DispatcherServlet 13 14 contextConfigLocation 15 classpath META INF springmvc servlet xml 16 17 1 18 19 20 21 spring mvc 22 23 24 25 26 encodingFilter 27 org springframework web filter CharacterEncodingFilter 28 29 30 31 encodingFilter 32 33 4 从 springmvc servlet xml 中可以知道 我把 jsp 页面放在 WEB INF views 目录中 静 态文件 图片 js css 等 放在 Resources 目录中 便于管理 5 以上配置文件基本完成 下面开始代码编写 首先说几个常用的注解 Java 代码 1 Autowired 自动注入 根据类型注入 Autowired 可以对成员变量 方法以及 构造函数进行注释 而 Qualifier 的标注对象是成员变量 方 法入参 构造函数入参 2 Resource 自动注入 根据名称注入 可写参数 name 3 Controller 表示控制器 4 Service 表示业务处理层 一般在 serviceImpl 5 Repository 表示持久层 一般在 daoImpl 6 Component 当你的类不清楚是哪一层的时候使用该注解 7 ResponseBody 异步返回数据类型为 json 8 RequestMapping 路径 请求类型等设置 9 InitBinder 数据绑定 注解的详细介绍 也可以参考 首先写一个 BaseController 可做一些数据绑定之类的全局操作 如 把日期字符串转 换为 Date 日期 Java 代码 1 Controller 2 public class BaseController 3 4 InitBinder 5 protected void ininBinder WebDataBinder binder 6 SimpleDateFormat sdf new SimpleDateFormat yyyy MM dd 7 binder registerCustomEditor Date class new CustomDateEdi tor sdf true 8 9 然后写一个拦截器 拦截器有两种实现方式 1 继承 HandlerInterceptorAdapter 类 2 实现 HandlerInterceptor 接口 Java 代码 1 2 自定义拦截器 3 author tushen 4 date Nov 5 2011 5 6 public class MyInterceptor extends HandlerInterceptorAdapter 7 8 9 最后执行 可用于释放资源 10 11 Override 12 public void afterCompletion HttpServletRequest request 13 HttpServletResponse response Object handler Excepti on ex 14 throws Exception 15 TODO Auto generated method stub 16 super afterCompletion request response handler ex 17 18 19 20 显示视图前执行 21 22 Override 23 public void postHandle HttpServletRequest request 24 HttpServletResponse response Object handler 25 ModelAndView modelAndView throws Exception 26 27 System out println request getContentType request getCharacterEncoding request getContextPath 28 System out println MyInterceptor postHandle viewName modelAndView getViewName 29 super postHandle request response handler modelAndView 30 31 32 33 Controller 之前执行 34 35 Override 36 public boolean preHandle HttpServletRequest request 37 HttpServletResponse response Object handler throws Exception 38 39 String url request getRequestURI 40 41 System out println MyInterceptor preHandle url 42 43 return super preHandle request response handler 44 45 在 Util 包中 DBUtil java 中实现 Spring JDBC Template 的封装 操作数据库 写一个 DaoException 继承 spring 的运行时异常类 NestedRuntimeException 在数据库操作异常 时抛出该异常 在 controller 层进行处理 写一个抽象的 BaseDao 接口和 BaseDaoImpl 实现类 让所有模块共享使用 详见附 件 Java 代码 1 2 3 4 package com aokunsang dao 5 6 import java io Serializable 7 import java util List 8 import java util Map 9 10 11 author tushen 12 date Nov 5 2011 13 14 public interface BaseDao 15 16 17 保存或者更新实体 18 param sql 19 param entry 20 21 void saveOrUpdateObject String sql T entry 22 23 24 查询实体列表 25 param sql 26 param className 27 param obj 28 return 29 30 List getObjList String sql Class className Object objs 31 32 33 查询实体 34 param 35 param sql 36 param objs 37 return 38 39 T getObject String sql Class claz z Object objs 40 41 42 查询一个 Map 集合 43 param sql 44 param objs 45 return 46 47 Map find String sql Object objs 48 49 50 批量操作 51 param sql 52 param objLs 53 54 void batchOperate String sql List objLs 55 56 57 判断实体是否存在 58 param sql 59 param obj 60 return 61 62 int isExis
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 客户档案深度挖掘需求分析方案
- 康复理疗师岗位技能培训手册
- 腰椎间盘突出理疗康复流程
- 美容养颜抗衰老食补调理方案
- 食用菌段木储藏与防潮管理规范
- 客户问诊记录填写手册
- 鹅鸭散养环境控制技术标准
- 奶牛高产挤奶标准化操作标准
- 生猪全价饲料配制执行标准
- 敲带脉经络疏通理疗方案
- 设备管道保温
- T-CERS 0026-2024 能源企业可持续发展(ESG)披露指标体系和评价导则
- 樊昌信通信原理课后答案
- FMEA手册新中文版(第五版)
- GB/T 44748.1-2024筛分试验第1部分:使用金属丝编织网和金属穿孔板试验筛的方法
- 《中国大学介绍》课件
- 超星网课《国际学术论文写作与发表》答案
- 2024新人教版英语七年级上单词默写单(小学部分)
- 中国海洋石油集团有限公司招聘笔试题库2024
- 小学数学1-6年级公式大全(打印版)
- 2024年四川南充中考物理真题及答案
评论
0/150
提交评论