`

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的表达式语言来访问并显示。

使用这些宏,必须设置FreeMarkerViewResolverexposeSpringMacroHelpers属性为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));
 }
 

 

分享到:
评论

相关推荐

    Maven+SpringMVC+Freemarker Demo

    **Maven+SpringMVC+Freemarker Demo详解** 在Web开发中,Maven、SpringMVC和Freemarker是三个关键的组件,它们分别负责构建管理、业务逻辑处理和视图展示。这个"Maven+SpringMVC+Freemarker Demo"是一个基础的Web...

    maven+springmvc+spring+hibernate+freemarker

    maven管理项目+springmvc+spring+hibernate+freemarker 集成框架。其中注解格式清晰,hibernate进行了代码封装,对开发效率有了提高,对异常进行了封装。freemarker也有优化,参考common包下。对日期工具类有各种...

    SpringMVC+Freemarker+Hibernate整合范例

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

    SpringBoot+SpringMVC+Freemarker实现单个上传和多个文件上传

    SpringBoot版本的SpringMVC+Freemarker上传案例,地址是localhost:8888/photo/index进入上传页面,默认是三个文件,自己可以屏蔽两个文件就是单个文件的状态了,首先在电脑的D盘新建一个upload的文件夹,...

    springmvc+freemarker+easyUi 框架

    在 "springmvc+freemarker+easyUi" 的集成应用中,Spring MVC 处理用户的请求,调用业务逻辑,将处理结果封装为模型数据。这些数据随后被传递给 Freemarker 模板,Freemarker 根据模板规则将数据渲染成HTML。最后,...

    springmvc+freemarker+shiro

    在这个"springmvc+freemarker+shiro"的小Demo中,开发者可能已经展示了如何将这三个组件集成到一个项目中。SpringMVC处理HTTP请求,调用业务逻辑,然后将数据传递给FreeMarker模板进行渲染。同时,Shiro负责用户的...

    springMvc+freemarker

    在这个"springMvc+freemarker"的项目中,我们可以看到作者用Spring MVC与FreeMarker模板引擎集成创建了一个示例应用。 首先,Spring MVC框架的主要组件包括DispatcherServlet、Controller、Model、View和...

    springMVC+freemarker整合实例

    SpringMVC和FreeMarker是两种在Java Web开发中广泛使用的技术。SpringMVC是一个轻量级的、基于组件的Web应用框架,它负责处理HTTP请求并分发到对应的控制器进行处理。而FreeMarker则是一个模板引擎,用于动态生成...

    手动创建 SpringMvc +SpringDataJpa+Hibernate+ freemarker mavenProject+ 环境切换 webDemo

    在本项目中,我们主要探讨如何手动构建一个基于SpringMVC、Spring Data JPA、Hibernate以及FreeMarker模板引擎的Maven工程,同时实现环境切换功能。这个基础框架为日常开发工作提供了必要的支持。 首先,SpringMVC...

    大型商城网站springmvc+freemarker+velocity+ibatis

    标题 "大型商城网站springmvc+freemarker+velocity+ibatis" 暗示了这是一个基于SpringMVC、Freemarker、Velocity和iBatis框架构建的电子商务平台。这个项目可能是一个B2C(Business-to-Consumer)类型的商城,允许...

    springmvc+freemarker带sql的登录事例

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

    maven+springMvc+freemarker

    `Maven`、`Spring MVC`和`FreeMarker`是Java开发领域中常用的三个工具,它们各自扮演着关键角色,共同构建了一个强大的开发框架。下面我们将深入探讨这三个技术及其在实际项目中的应用。 **Maven** Maven是一个项目...

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

    在SpringMVC中,Freemarker模板文件与Java对象结合,生成最终的视图响应。 **Maven**:Maven是项目管理和综合工具,它定义了项目构建的生命周期,管理项目的依赖关系。在这个小示例中,Maven将帮助我们构建项目,...

    springmvc+freemarker

    总结来说,"springmvc+freemarker"的组合是构建现代Java Web应用的高效方式。Spring MVC提供强大的请求处理能力,Freemarker提供简洁的模板语法生成动态内容,而MyBatis则简化了数据库操作。这三者结合,能够帮助...

    springMVC+freemarker框架

    **SpringMVC与FreeMarker框架详解** SpringMVC和FreeMarker是Java Web开发中的两个重要组件,它们在构建高效、可维护的Web应用程序中扮演着关键角色。SpringMVC是Spring框架的一部分,主要负责处理HTTP请求和响应,...

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

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

    SpringMVC+Hibernate+Freemarker 干净的框架

    SpringMVC、Hibernate和Freemarker是Java Web开发中三个重要的技术组件,它们共同构建了一个高效、灵活且可维护的Web应用框架。SpringMVC作为Spring框架的一部分,负责处理HTTP请求和响应,提供模型-视图-控制器...

    dubbo+zookeeper+SpringMVC+Spring+Mybatis+Freemarker集成

    本项目“dubbo+zookeeper+SpringMVC+Spring+Mybatis+Freemarker集成”正是一个典型的分布式服务架构,它结合了多个核心技术,旨在提供高效、可扩展的业务处理能力。 首先,Dubbo是一个由阿里巴巴开源的高性能Java ...

    springmvc+mybatis+redis+shiro+bootstrap+freemarker+jsp+logback框架

    springmvc+mybatis+redis+shiro+bootstrap+freemarker+jsp+logback框架,几乎集合了所有企业开发技术,可以下载下来直接使用,任务调度,登陆拦截应有尽有

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

    在实际操作中,你可能还会接触到JDBC、模板引擎(如Thymeleaf或FreeMarker)、单元测试和集成测试等概念。 在压缩包文件"Ksoftware"中,你可能会找到以下文件和目录: - `pom.xml`:Maven的项目对象模型文件,包含...

Global site tag (gtag.js) - Google Analytics