当前位置: 首页 > wzjs >正文

做网站的标性网站如何优化推广

做网站的标性,网站如何优化推广,南京做网站的网络公司,校园网站模板以下是 Spring MVC 与 FreeMarker 整合的详细步骤&#xff0c;包含配置和代码示例&#xff1a; 1. 添加依赖 在 pom.xml 中引入 Spring MVC 和 FreeMarker 的依赖&#xff08;以 Maven 为例&#xff09;&#xff1a; <!-- Spring Web MVC --> <dependency><gr…

以下是 Spring MVC 与 FreeMarker 整合的详细步骤,包含配置和代码示例:


1. 添加依赖

pom.xml 中引入 Spring MVC 和 FreeMarker 的依赖(以 Maven 为例):

<!-- Spring Web MVC -->
<dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc</artifactId><version>5.3.23</version>
</dependency><!-- FreeMarker 模板引擎 -->
<dependency><groupId>org.freemarker</groupId><artifactId>freemarker</artifactId><version>2.3.32</version>
</dependency>

2. 配置 Spring MVC 和 FreeMarker

方式一:XML 配置

spring-mvc-servlet.xml 中配置视图解析器和 FreeMarker:

<!-- 配置 FreeMarker 的模板加载器和编码 -->
<bean id="freemarkerConfig" class="org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer"><property name="templateLoaderPath" value="/WEB-INF/views/" /> <!-- 模板路径 --><property name="defaultEncoding" value="UTF-8" /> <!-- 编码 -->
</bean><!-- 配置视图解析器 -->
<bean class="org.springframework.web.servlet.view.freemarker.FreeMarkerViewResolver"><property name="prefix" value="" /> <!-- 模板路径前缀(与 FreeMarkerConfigurer 一致) --><property name="suffix" value=".ftl" /> <!-- 模板后缀 --><property name="contentType" value="text/html;charset=UTF-8" /> <!-- 内容类型 -->
</bean>
方式二:Java 配置

通过 Java 配置类完成整合:

@Configuration
@EnableWebMvc
@ComponentScan(basePackages = "com.example.controller")
public class WebConfig implements WebMvcConfigurer {@Beanpublic FreeMarkerConfigurer freemarkerConfig() {FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();configurer.setTemplateLoaderPath("/WEB-INF/views/"); // 模板路径configurer.setDefaultEncoding("UTF-8"); // 编码return configurer;}@Beanpublic ViewResolver viewResolver() {FreeMarkerViewResolver resolver = new FreeMarkerViewResolver();resolver.setPrefix(""); // 模板路径前缀resolver.setSuffix(".ftl"); // 模板后缀resolver.setContentType("text/html;charset=UTF-8"); // 内容类型return resolver;}
}

3. 创建 FreeMarker 模板文件

/WEB-INF/views/ 目录下创建 .ftl 文件(如 hello.ftl):

<!DOCTYPE html>
<html>
<head><title>Hello FreeMarker</title>
</head>
<body><h1>${message}</h1> <!-- 显示从 Controller 传递的数据 -->
</body>
</html>

4. 编写 Controller

创建一个 Controller 返回视图名称和模型数据:

@Controller
public class HelloController {@RequestMapping("/hello")public ModelAndView hello() {ModelAndView mav = new ModelAndView("hello"); // 视图名称(对应 hello.ftl)mav.addObject("message", "Hello, FreeMarker with Spring MVC!"); // 传递数据return mav;}
}

5. 配置 web.xml

确保 DispatcherServlet 已正确配置:

<servlet><servlet-name>spring-mvc</servlet-name><servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class><init-param><param-name>contextConfigLocation</param-name><param-value>/WEB-INF/spring-mvc-servlet.xml</param-value> <!-- XML 配置路径 --></init-param><load-on-startup>1</load-on-startup>
</servlet><servlet-mapping><servlet-name>spring-mvc</servlet-name><url-pattern>/</url-pattern>
</servlet-mapping>

6. 测试

启动应用,访问 http://localhost:8080/your-app-context/hello,页面应显示:

Hello, FreeMarker with Spring MVC!

常见问题与解决

  1. 模板文件找不到

    • 检查 templateLoaderPath 是否配置正确(注意末尾的 /)。
    • 确保模板文件位于 /WEB-INF/views/ 目录下。
  2. 中文乱码

    • FreeMarkerConfigurerViewResolver 中设置 defaultEncodingcontentTypeUTF-8
  3. 静态资源访问

    • 如果静态资源(CSS/JS)无法加载,在 web.xml 中配置默认 Servlet 处理:
      <servlet-mapping><servlet-name>default</servlet-name><url-pattern>/static/*</url-pattern>
      </servlet-mapping>
      

高级配置

  • 自定义 FreeMarker 设置
    freemarkerConfig 中设置变量或共享函数:

    @Bean
    public FreeMarkerConfigurer freemarkerConfig() {FreeMarkerConfigurer configurer = new FreeMarkerConfigurer();configurer.setTemplateLoaderPath("/WEB-INF/views/");Properties settings = new Properties();settings.put("datetime_format", "yyyy-MM-dd HH:mm:ss"); // 设置日期格式configurer.setFreemarkerSettings(settings);return configurer;
    }
    
  • 在模板中使用 Spring 标签
    .ftl 文件中引入 Spring 标签库:

    <#import "spring.ftl" as spring>
    <@spring.message "welcome.message"/>
    

通过以上步骤,即可完成 Spring MVC 与 FreeMarker 的无缝整合,实现动态模板渲染。

http://www.dtcms.com/wzjs/165959.html

相关文章:

  • 有什么平台可以发广告郑州seo外包阿亮
  • 网站建设分金手指专业五百度一下官方网站
  • 网站菜单分类怎么做整合营销经典案例
  • 香港 网站 空间申请表千锋教育的口碑怎么样
  • 婚恋网站模板seo的作用主要有
  • android wap网站长尾词挖掘
  • 南宁制作企业服装搜索引擎优化的报告
  • 意大利室内设计网站国内最新新闻事件
  • 网站本地被劫要怎么做搜索网
  • 首页%3e新闻%3e正文 网站怎么做常见搜索引擎有哪些
  • java接单做任务的网站重庆高端品牌网站建设
  • 网站建设教程讲解杭州seo网站推广
  • 中山市建设局网站窗口电话号码网上店铺的推广方法有哪些
  • 湖南网站建设找拉米拉北京优化seo排名优化
  • 网站建设的swot分析包头网站建设推广
  • 网站建设教程搭建深圳市企业网站seo
  • 网站域名解析失败深圳海外推广
  • 建网站需要身份证吗淘宝关键词查询工具哪个好
  • 表白网站是怎么做的如何让关键词排名靠前
  • html做网站的代码上海seo优化公司
  • 网站建设需要学编程吗5118站长工具箱
  • 深圳微商城网站制作价格seo和sem的区别是什么?
  • 知名网站建设商家百度排行
  • 软件商店下载官网站内优化主要从哪些方面进行
  • 关于做代购网站的纳税知识网上的推广公司
  • 网站建设 技术方案高端网站设计
  • 网站开发转包协议百度知道下载
  • 西安免费做网站公司磁力搜索器 磁力猫在线
  • 设计网站室内百度官方网页
  • 学做网站是什么seo外链建设的方法有