# TmodWithSpringMVC **Repository Path**: staring/TmodWithSpringMVC- ## Basic Information - **Project Name**: TmodWithSpringMVC - **Description**: 1.供初学者学习TmodJs案例 2.结合SpringMVC学习 3.后期采用myBaits - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2016-07-13 - **Last Updated**: 2020-12-18 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README #学习TmodJs结合SpringMVC ------------------------------ ##一、了解TmodJs基础语法 * TmodJS 默认采用 simple 语法,它非常易于读写。 ###表达式 * {{ 与 }} 符号包裹起来的语句则为模板的逻辑表达式。 * 输出表达式: {{content}} 不编码输出:{{#content}} * 模板包含表达式 * {{include 'template_name'}} 用于嵌入子模板 * 子模板共享当前数据 {{include 'template_name' news_list}} ###遍历表达式 无论数组或者对象都可以用 each 进行遍历,此处使用li标签,但由于markdownpad版本问题未显示。
 
   {{each list}}
         
  • {{$index}} - {{$value.user}}
  • {{/each}}
    ###include 路径规范约定 1. 路径不能带后缀名 2. 路径不能够进行字符串运算 3. 路径不能使用变量代替 4. 必须使用以.开头的相对路径 ##二、实际操作 * 1.打开Eclipse,新建一个Maven项目。 * 2.做好规划,细分模块.如图1所示 ![](http://i.imgur.com/mmsuuBN.png) * 3.开始编辑对应的模块 * 4.index.html作为索引页面,可看源码。 * 5.运用tmod对模板页面进行编译,方法如下: * a. 打开dos运行界面,并确保安装tmodjs插件. * b. 通过dos界面,进入到项目文件夹里,进行编译。编译方法:tmod 路径 * 6.将编译好的项目发布到Tomcat上,若加载正常则可看到页面。 ##三、SpringMVC学习及Demo实现 ###Springmvc框架原理 ![](http://i.imgur.com/HpkMf5m.png) 《跟开涛学SpringMVC》里面有张图挺好的,感觉很详细. ![](http://i.imgur.com/QXMKHgl.jpg) 步骤:
    1.发起请求到前端控制器(DispatcherServlet)
    2.前端控制器请求处理器映射器(HandlerMapping)查找Handler(可根据xml配置、注解进行查找)
    3.处理器映射器(HandlerMapping)向前端控制器返回Handler
    4.前端控制器调用处理器适配器(HandlerAdapter)执行Handler
    5.处理器适配器(HandlerAdapter)去执行Handler
    6.Handler执行完,给适配器返回ModelAndView(Springmvc框架的一个底层对象)
    7.处理器适配器(HandlerAdapter)向前端控制器返回ModelAndView
    8.前端控制器(DispatcherServlet)请求视图解析器(ViewResolver)进行视图解析,根据逻辑视图名解析成真正的视图(jsp)
    9.视图解析器(ViewResolver)向前端控制器(DispatcherServlet)返回View
    10.前端控制器进行视图渲染,即将模型数据(在ModelAndView对象中)填充到request域
    11.前端控制器向用户响应结果
    ###Springmvc程序小试牛刀 ------------------------ ###一、准备开发环境和运行环境: * 开发工具:eclipse * 运行环境:tomcat7 * 工程:创建maven动态web工程 * spring框架下载: * spring-framework-4.2.4.RELEASE-with-docs.zip * 依赖jar包: * 1、 Spring框架jar包: 为了简单,将spring-framework-34.2.4.RELEASE-with-docs.zip/dist/下的所有jar包拷贝到项目的WEB-INF/lib目录下; * 2、 Spring框架依赖的jar包: * 需要添加Apache commons logging日志,此处使用的是commons.logging-1.1.1.jar; * 需要添加jstl标签库支持,此处使用的是jstl-1.1.2.jar和standard-1.1.2.jar; ###二、前端控制器的配置 新建Maven动态web工程后,在web.xml中添加如源码中配置: load-on-startup:表示启动容器时初始化该Servlet; url-pattern:表示哪些请求交给Spring Web MVC处理, “/” 是用来定义默认servlet映射的。也可以如“*.html”表示拦截所有以html为扩展名的请求。 因此请求已交给Spring Web MVC框架处理,因此我们需要配置Spring的配置文件,默认DispatcherServlet会加载WEB-INF/[DispatcherServlet的Servlet名字]-servlet.xml配置文件。本示例为WEB-INF/ chapter2-servlet.xml。 ###三、在Spring配置文件中配置HandlerMapping、HandlerAdapter 具体配置在WEB-INF/ chapter2-servlet.xml文件中: BeanNameUrlHandlerMapping:表示将请求的URL和Bean名字映射,如URL为 “上下文/hello”,则Spring配置文件必须有一个名字为“/hello”的Bean,上下文默认忽略。 SimpleControllerHandlerAdapter:表示所有实现了org.springframework.web.servlet.mvc.Controller接口的Bean可以作为Spring Web MVC中的处理器。如果需要其他类型的处理器可以通过实现HadlerAdapter来解决。 ###四、在Spring配置文件中配置ViewResolver 已在WEB-INF/ chapter2-servlet.xml文件中配置好 ###五、开发处理器/页面控制器 org.springframework.web.servlet.mvc.Controller:页面控制器/处理器必须实现Controller接口,注意别选错了;后边我们会学习其他的处理器实现方式; public ModelAndView handleRequest(HttpServletRequest req, HttpServletResponse resp) :功能处理方法,实现相应的功能处理,比如收集参数、验证参数、绑定参数到命令对象、将命令对象传入业务对象进行业务处理、最后返回ModelAndView对象; ModelAndView:包含了视图要实现的模型数据和逻辑视图名;“mv.addObject("message", "Hello World!"); ”表示添加模型数据,此处可以是任意POJO对象;“mv.setViewName("hello");”表示设置逻辑视图名为“hello”,视图解析器会将其解析为具体的视图,如前边的视图解析器InternalResourceVi。wResolver会将其解析为“WEB-INF/jsp/hello.jsp”。 ###六、开发视图页面 创建 /WEB-INF/jsp/hello.jsp视图页面,如源码所示。 ${message}:表示显示由HelloWorldController处理器传过来的模型数据。 ###七、启动服务器运行测试 通过请求:http://localhost:8080/TmodWithSpringMVC/hello,如果页面输出“Hello World! ”就表明我们成功了! ##SpringMVC结合myBatis实现用户CRUD功能 ###主要是要学会结合Entity和Mapper.xml