继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

【九月打卡】第10天 Java主流框架入门-Spring MVC

锦书难书Q
关注TA
已关注
手记 63
粉丝 0
获赞 8

课程名称:Java工程师2022版

课程章节:SpringMVC入门与数据绑定

课程内容

①SpringMVC整合FreeMarker:在pom.xml中引入依赖,启动FreeMarker模板引擎,最后配置FreeMarker

课程收获

       学习了在SpringMVC中整合FreeMarker的方法

1. 在pom.xml中引入依赖,启动FreeMarker模板引擎:

<dependency>
    <
groupId>org.freemarker</groupId>
    <
artifactId>freemarker</artifactId>
    <
version>2.3.31</version>
</
dependency>
<
dependency>
    <
groupId>org.springframework</groupId>
    <
artifactId>spring-context-support</artifactId>
    <
version>5.2.21.RELEASE</version>
</
dependency>

http://img2.sycdn.imooc.com/6321c85000011ef519201030.jpg

2. 启动FreeMarker模板引擎:

<bean id="ViewResolver"class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver">

<!-- 设置响应输出,并解决中文乱码 -->
    <
property name="contentType" value="text/html;charset=UTF-8"/>

<!-- 指定Freemarker模板文件扩展名 -->
    <
property name="suffix" value=".ftl"/>
</
bean>

3. 配置FreeMarker(applicationContext.xml):

<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer">

    <!--设置模板保存的目录-->
    <
property name="templateLoaderPath" value="/WEB-INF/ftl"/>
    <!--其他模板引擎设置-->
    <
property name="freemarkerSettings">
        <
props>
          <!--设置Freemarker脚本与数据渲染时使用的字符集-->
            <
prop key="defaultEncoding">UTF-8</prop>
        </
props>
    </
property>
</
bean>


FreeMarker的使用:

       为完成7.2节作业,使用SpringMVC与FreeMarker对数据进行展示,使用SpringJDBC从数据库中获取数据

http://img2.sycdn.imooc.com/6321c818000126af07860600.jpg

<table cellpadding="10" border="1px solid red">
    <
tr style="color:purple; font-size: 18px" align="center" >
        <
td>编号</td>
        <
td>城市</td>
        <
td>价格</td>
        <
td>名称</td>
        <
td>到达日期</td>
        <
td>离开日期</td>
    </
tr>
   
<#list hotelList as hotel>
       
<tr>
            <
td>${hotel.getOrderNo()}</td>
            <
td>${hotel.getCity()}</td>
            <
td>${hotel.getPrice()}</td>
            <
td>${hotel.getHotelName()}</td>
            <
td>${hotel.getArriveDate()}</td>
            <
td>${hotel.getLeaveDate()}</td>
        </
tr>
   
</#list>
</table>


其中,关于FreeMarker对List进行遍历,要点如下:

       1. 标签使用<#list> 与平时标签有异,在名字前需要加入’#’且识别大小写

       2. 代码中“hotelList”为Controller中添加到ModelAndView对象中的列表

       3. FreeMarker语法强调在#list标签中加入 as 关键字,而后面的hotel为hotelList中的每一个Hotel 类似 for(Hotel hotel : hotelList)

       4. 使用EL表达式进行输出


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP