`
123003473
  • 浏览: 1064796 次
  • 性别: Icon_minigender_1
  • 来自: 南京
社区版块
存档分类
最新评论

springMVC+freemarker整合

 
阅读更多
springMVC整合大家都比较熟悉了吧主要有以下几个步骤:
在web.xml配置
<listener>
     <listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
//上面的listener主要是启动spring容器
<servlet>
     <servlet-name>spring</servlet-name>
     <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
     <load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
     <servlet-name>spring</servlet-name>
     <url-pattern>*.do</url-pattern>
</servlet-mapping>
//上面是定义一个servlet ,DispatcherServlet主要是启动mvc框架的。也就是以do结尾的请求都转发到这个dispatchServlet然后由他转发到相应的controller。

定义spring—servlet.xml(上面的DispatcherServlet名+servlet.xml)
        <!--注解说明-->
      <context:annotation-config />
       <!-- 把标记了@Controller注解的类转换为bean -->
      <context:component-scan base-package="com.Springmvc.control" />
  <!-- 启动Spring MVC的注解功能,完成请求和注解POJO的映射   请求映射-->
      <bean class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" /> 
    

<!-- freemarker的配置 -->
<bean id="freemarkerConfig"
  class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">
  <property name="templateLoaderPath" value="/WEB-INF/view/" />
  <property name="defaultEncoding" value="utf-8" />
  <property name="freemarkerSettings">
   <props>
    <prop key="template_update_delay">10</prop>
    <prop key="locale">zh_CN</prop>
    <prop key="datetime_format">yyyy-MM-dd</prop>
    <prop key="date_format">yyyy-MM-dd</prop>
    <prop key="number_format">#.##</prop>
   </props>
  </property>
</bean>
<!-- FreeMarker视图解析   如返回student。。在这里配置后缀名ftl和视图解析器。。-->
<bean id="viewResolver"
  class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">
 
  <property name="viewClass" value="org.springframework.web.servlet.view.freemarker.FreeMarkerView"></property>
 
  <property name="suffix" value=".ftl" />
  <property name="contentType" value="text/html;charset=utf-8" />
  <property name="exposeRequestAttributes" value="true" />
  <property name="exposeSessionAttributes" value="true" />
  <property name="exposeSpringMacroHelpers" value="true" />
</bean>
exposeRequestAttributes  exposeSessionAttributes两个属性都被设置为true。结果是请求和会话属性都被复制到模板的属性集中,可以使用FreeMarker的表达式语言来访问并显示。
使用这些宏,必须设置FreeMarkerViewResolver的exposeSpringMacroHelpers属性为true:
然后controller的的内容如下:
@Controller
@RequestMapping("addStudent.do")
public class StudentControl {
@Autowired
private StudentService studentService;
@RequestMapping(params = "method=add")
public String addStudent(HttpServletRequest request,ModelMap model,Student student) throws IOException, TemplateException {
  studentService.addStudent(student);
         List<Student> list = studentService.findStudentAll();
 
  model.addAttribute("studentlist", list);//request保存这个对象
  return "student";
}
在controller中保持了studentlist(存储在request中)

在freemarker中
      <table>
      <tr><td>index</td><td>username</td><td>password</td><td>id</td></tr>
      <#list studentlist as student>
       <tr><td>${student_index}</td><td>${student.user?if_exists}</td><td>${student.psw?if_exists}</td><td>${student.id?if_exists}</td</tr>
      </#list>
      </table>

即可输入studentlist 内容,注意如果数据库为空没有加?if_exits是不行的,

如果提交表单中有日期格式的话要做自己的属性编辑器
注解方法如下:
@InitBinder
public void initBinder(WebDataBinder binder, WebRequest request) {
        SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");
        dateFormat.setLenient(false);
        binder.registerCustomEditor(Date.class,
            new CustomDateEditor(dateFormat, false));//注册个人编辑器。
       // binder.registerCustomEditor(String.class, new StringTrimmerEditor(false));
    }

【转载地址】http://blog.sina.com.cn/s/blog_534f69a00100s069.html
分享到:
评论

相关推荐

    springMVC+freemarker整合实例

    **SpringMVC整合FreeMarker** 1. **环境配置** 首先,确保你已经安装了JDK、Maven或Gradle等构建工具,以及Tomcat或Jetty等Web服务器。在`pom.xml`(如果你使用的是Maven)或`build.gradle`(如果你使用的是Gradle...

    SpringMVC+Freemarker+Hibernate整合范例

    4. **整合流程**:在SpringMVC+Freemarker+Hibernate整合中,通常会首先配置Spring的ApplicationContext,包括DataSource、SessionFactory、HibernateTemplate或JPA的相关配置。接着,定义Controller,处理HTTP请求...

    【ssm框架】 spring+springMVC+mySQL+myBatis+freemarker+Maven小示例1

    SSM框架是Java web开发中常用的整合框架,由Spring、SpringMVC和MyBatis三个组件构成。这个项目示例提供了使用SSM框架构建Web应用的基础结构,让我们逐一解析其中涉及的技术点。 **Spring框架**:Spring是核心的...

    最新ssm:Spring + SpringMVC + Mybatis + FreeMarker 整合示例

    Spring + SpringMVC + Mybatis + FreeMarker 整合示例。所用jar包均是目前位置最新版本:201710最新版: spring mvc4.3.12 , mybatis: 3.4.5 , FreeMarker : 2.3.26。 有mysql数据库脚本。导入即可使用。有个简单的...

    maven+springmvc+mybatis+freemarker整合框架

    在“maven+springmvc+mybatis+freemarker”框架整合中,Maven负责管理项目依赖,确保所有组件正确无误地协同工作。 **SpringMVC** SpringMVC是Spring框架的一部分,用于构建Web应用的Model-View-Controller(MVC)...

    spring+springMVC+Hibernate整合

    5. **配置视图解析器**:根据项目需求,选择合适的视图解析器,如JSP、Thymeleaf或FreeMarker。设置视图解析规则,确保SpringMVC能够正确地找到并渲染视图。 6. **测试和部署**:完成上述配置后,进行单元测试和...

    springmvc+mybatis整合项目

    《SpringMVC与MyBatis整合详解》 在现代企业级Web开发中,SpringMVC和MyBatis是两个非常重要的技术组件。SpringMVC作为Spring框架的一部分,提供了强大的MVC(Model-View-Controller)架构支持,而MyBatis则是一个...

    springmvc+mybatis 和一个简单的freemarker代码生成工具

    在IT行业中,SpringMVC、MyBatis以及FreeMarker是三个非常重要的技术组件,它们各自在Web开发领域中扮演着不同的角色。SpringMVC作为Spring框架的一部分,是用于构建MVC(Model-View-Controller)架构的轻量级Web...

    springmvc+freemarker+shiro

    在IT行业中,SpringMVC、FreeMarker和Shiro是三个非常重要的框架,它们分别负责不同的功能领域。SpringMVC作为Spring框架的一部分,主要用于构建Web应用程序的模型-视图-控制器(MVC)架构;FreeMarker则是一个强大...

    springmvc+freemarker带sql的登录事例

    总之,这个"springmvc+freemarker带sql的登录事例"是一个基本的Web应用实践,涵盖了Spring MVC的请求处理、FreeMarker模板的使用以及与数据库的交互。通过这个实例,开发者可以学习到如何将这些组件整合起来,构建一...

    权限管理系统SpringMvc+Spring+Mybatis整合升级版

    此外,SpringMVC支持多种视图技术,如JSP、FreeMarker等,使开发者可以根据需求选择合适的展示方式。 Spring框架则提供了依赖注入(DI)和面向切面编程(AOP)等核心特性,使得代码更易于测试和维护。DI允许我们...

    SpringMVC+Hibernate+Spring整合实例

    总的来说,"SpringMVC+Hibernate+Spring整合实例"提供了一个全面的学习平台,帮助开发者深入理解Java企业级应用的开发模式和最佳实践。通过这个实例,你可以提升自己的技能,为未来的项目开发打下坚实的基础。

    基于SpringBoot+LayUI+Freemarker+Mybatis的通用后台管理系统源码.zip

    基于SpringBoot+LayUI+Freemarker+Mybatis的通用后台管理系统源码.zip 完整代码,可运行 。...SpringMVC+Spring+SpringBoot+LayUI+freemarker 运行环境 IDEA【或者Eclipse】 + Tomcat6以上 + Redis + MySQL5

    springmvc+mybatis+freemarker

    在这个项目中,`springmvc+mybatis+freemarker` 的组合提供了模型-视图-控制器(MVC)的设计模式,数据持久层的处理以及模板引擎的功能。 Spring MVC 是 Spring 框架的一部分,它为Web应用提供了一个分层架构。...

    springMvc+myBatis+freemarker+maven

    在"springMvc + myBatis + freemarker + maven"的组合项目中,开发者通常会做以下操作: 1. **配置Maven**:在pom.xml文件中,添加Spring MVC、MyBatis、Freemarker等相关依赖,确保项目可以正确构建并运行。 2. *...

    idea工具创建的Spring+SpringMVC+Hibernate+maven项目

    标题中的"idea工具创建的Spring+SpringMVC+Hibernate+maven项目"指的是使用IntelliJ IDEA这个集成开发环境(IDE)构建的一个Java Web项目,该项目整合了四个关键的技术框架:Spring、SpringMVC、Hibernate以及Maven...

    ssm(Spring+SpringMVC+MyBatis)整合框架

    SpringMVC通过DispatcherServlet作为前端控制器,将请求分发给处理器,并且支持多种视图技术,如JSP、FreeMarker等。 3. **MyBatis**:MyBatis是一个优秀的持久层框架,它支持自定义SQL、存储过程以及高级映射。...

    springmvc+spring+hibernate

    9. **视图层**:可以使用JSP、Thymeleaf、FreeMarker等技术来创建视图。在DispatcherServlet的配置中,设置视图解析器,比如使用InternalResourceViewResolver解析JSP。 10. **测试与部署**:编写JUnit测试用例,对...

    springMVC+ibatis+FreeMarker 连接 mycat 示例

    在这个"springMVC+ibatis+FreeMarker 连接 mycat 示例"中,我们将探讨如何整合这四大技术,构建一个高效、可扩展的应用。 首先,SpringMVC是Spring框架的一个模块,主要用于构建Web应用程序的模型-视图-控制器(MVC...

    maven多模块+springMVC+mybatis+freemarker+mysql

    【标题】"maven多模块+springMVC+mybatis+freemarker+mysql" 描述了一种基于Java技术栈的企业级应用开发架构。这个架构整合了多个关键组件,包括项目构建工具Maven、Web层框架Spring MVC、持久层框架MyBatis、模板...

Global site tag (gtag.js) - Google Analytics