`
atgoingguoat
  • 浏览: 196756 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

freemark java 一个简单例子

阅读更多

freemarker-2.3.8.jar

struts2-core-2.0.11.2.jar

 

我也是初学者,不知道有些地方对不对。乱写。呵呵。

工程 MyEclipse6 目录结构如图。有些东西可以不要的。

 

先写JSP代码吧。这是前端的。

 

<%@ page language="java"  pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
   
    <title>用户登录</title>
	<meta http-equiv="pragma" content="no-cache">
	<meta http-equiv="cache-control" content="no-cache">
	<meta http-equiv="expires" content="0">    
	<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
	<meta http-equiv="description" content="This is my page">
	
  </head>
  
  <body>
   	<s:form action="userLogin">
   		用户名称:<s:textfield name="username"/><br>
   		用户密码:<s:textfield name="password"/>
   		<s:submit value="登录" />
   	</s:form>
   	
  </body>
</html>

  再就是配置文件了。

先当然写 web.wml 配置文件。

如下:

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4" 
	xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee 
	http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
  <!-- 配置过滤器,来启动struts2 ,它会自动读取你的 STRUTS2的配置文件。 struts.xml  -->
  <filter>
  	<filter-name>struts2</filter-name>
  	<filter-class>org.apache.struts2.dispatcher.FilterDispatcher</filter-class>
     
  </filter>
  
  <filter-mapping>
  	<filter-name>struts2</filter-name>
  	<url-pattern>/*</url-pattern>
  </filter-mapping>
  <!--  这个有没有用,我也不太清楚。看其它网友都写了。我也就加上了。  -->
  <servlet>
        <servlet-name>JspSupportServlet</servlet-name>
        <servlet-class>
            org.apache.struts2.views.JspSupportServlet
        </servlet-class>
        <load-on-startup>1</load-on-startup>
   </servlet>

</web-app>

 

再看struts2 的配置文件。 具说 struts1 与 struts2 配置有些区别,因为本人没有用过 struts1 也有也知道有哪些区别。struts的一些配置说明,如果你不了解,还是要了解一下它的意思。后面我再写下。

 

见代码。

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">
<!-- 实际上它就是个过滤器  -->
    <struts>
    	<package name="struts" extends="struts-default">
    		<action name="userLogin" class="com.test.action.LoginAction" method="userLogin">
    			<result name="success" type="freemarker">
    				/WEB-INF/templates/user.ftl
    			</result>
    		</action>
    	</package>
    </struts>

 type="freemarker" 这个,如果用 freemark ,这个一定要写,不然报错。最初我也是报错,在网上找了好久,才知道自己少了个 type 呵呵。

 

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`

上面说到 ftl ,那再就把 ftl 配置文件送上吧。

代码很简单。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
 <head>
 <title>freemark end</title>
 </head>
    <body>
    username:<@s.property value="username"/>
    <br/>
    password:<@s.property value="password"/>
    登录!
    </body>
</html>

 

还有个 struts2环境的配置文件。

freemarker.properties

default_encoding=gbk

也可是utf-8 , 但 gb2312 我就没用过了。

 

分享到:
评论

相关推荐

    freemark使用的简单demo

    在这个例子中,我们创建了一个简单的模板,向其中传入了用户姓名。运行这个程序,Freemarker会生成一个包含问候语的HTML页面。这是Freemarker的基本用法,实际应用中,你可以根据需要构建更复杂的模板和数据模型,以...

    java freemark导出word

    FreeMarker是一个纯Java库,不依赖任何外部库,因此在Java环境中非常适合用于生成各种类型的数据报告或文档。 在Java中,FreeMarker与Apache POI库结合可以实现Word文档的生成。Apache POI是一个流行的开源库,专门...

    freemark例子

    FreeMarker 是一个强大的模板引擎,常用于Java应用中的视图层渲染。在本文中,我们将深入探讨FreeMarker的几个核心概念以及如何使用它们。 1. **Sequence(序列)**: Sequence对应于Java中的列表(List)或数组,...

    Freemark模板使用

    模板文件`hello.ftl`位于`WebRoot/templates`目录下,这是一个简单的HTML文件,其中包含Freemark的语法。`&lt;h1&gt;`标签展示了`user`变量的值,`&lt;#list&gt;`标签则遍历`userList`并输出每个用户的`userName`和`age`。 为了...

    Java html转word 使用FreeMarker

    FreeMarker是一个开源的Java库,主要用于生成动态生成的Web页面或其他类型的文本输出,如电子邮件、XML文档等。它的核心功能是解析模板文件,并结合数据模型生成目标输出。在HTML到Word的转换过程中,FreeMarker能够...

    freemark简单使用源码

    数据模型通常是一个Java的Map或者自定义的Java对象。例如,你可以创建一个Map并放入一些键值对,这些键将在模板中作为变量使用: ```java Map, Object&gt; dataModel = new HashMap(); dataModel.put("name", ...

    Struts2+Freemark

    在"Struts2+Freemark 做到一个例子"中,你可能会看到以下的实践步骤: 1. 创建Action类并实现相关业务逻辑。 2. 编写FreeMarker模板文件(通常以`.ftl`为扩展名),定义视图布局和数据展示方式。 3. 在Struts2配置...

    freemark 资料学习

    Freemarker模板需要一个数据模型,通常由Java对象提供。这些对象的属性可以在模板中访问,如`${user.name}`表示获取`user`对象的`name`属性。 3. 控制结构: Freemarker支持条件语句(如`&lt;#if&gt;`, `&lt;#else&gt;`, `...

    freemarker 手册

    在实际应用中,FreeMarker的使用流程通常是这样的:设计者创建一个HTML模板,包含一些特定的FreeMarker指令,然后程序员提供数据模型。当模板和数据模型结合时,FreeMarker会根据模板中的指令和表达式,将数据填充到...

    java freemark发送模板邮件

    要将FreeMarker模板与JavaMail结合,首先需要创建一个FreeMarker模板文件(如`.ftl`),然后在Java代码中加载该模板,用数据模型填充,最后将生成的字符串作为邮件内容。 4. **设置邮件参数**: 在Java中,需要...

    freemark 自定义标签 总结

    模板定义则是在`.ftl`文件中使用`&lt;#assign...&gt;`创建一个变量,然后将其关联到Java类实例。 3. **使用自定义标签** 在`.ftl`文件中,可以通过`&lt;@myTag...&gt;`调用自定义标签,其中`myTag`是Java类的别名。标签的参数...

    Java项目Freemark生成静态页面及语法

    一个简单的Freemarker模板可能如下所示: ```html ${title} &lt;h1&gt;Welcome, ${user}! &lt;p&gt;This is an example of Freemarker template. ``` 在这个例子中,`${title}`和`${user}`是变量,它们将在运行时由...

    FreeMark全部资料(14个文档)

    FreeMark是一个强大的、开源的模板引擎,主要用于生成HTML或者其他任何基于文本的格式。它被广泛应用于Web应用开发中,特别是与Java平台结合时,能够帮助开发者将内容与表现分离,提高代码的可维护性和可扩展性。这...

    freemark小例子仅供参考学习

    本篇文章将详细解析`freemark小例子仅供参考学习`这个主题,旨在帮助初学者理解FreeMarker的核心概念并提供实践指导。 1. **FreeMarker基础概念** - **模板语言**:FreeMarker使用简单的文本模板语言,允许开发者...

    java利用freemarker生成[参照].pdf

    以下是一个简单的示例,展示了如何使用FreeMarker生成PDF文档的主要步骤:\n\n1. 创建`Configuration`实例,设置默认编码为UTF-8。\n2. 创建一个`Map`对象,用于存储要插入到模板中的数据。这些键值对需要与模板中的...

    java带格式导出WORD文档

    下面是一个简单的示例代码片段,用于演示如何使用Java和FreeMarker生成Word文档: ```java // 导入所需的库 import freemarker.template.Configuration; import freemarker.template.Template; import freemarker....

    freemark实例

    2. **变量和表达式**:在模板中,`${...}`用来表示一个变量或表达式,它会替换为对应的值。例如,`${user.name}`会输出用户对象的name属性值。 3. **指令**:以`&lt;#...&gt;`包裹的语句是FreeMarker的指令,它们用于控制...

    freemark学习文档

    Freemarker是一个用Java编写的模板引擎,它基于模板来生成文本输出。Freemarker通常被用于生成Web页面,但它同样适用于生成任何文本文件,如XML或电子邮件。本学习文档主要涵盖Freemarker的一些基础概念以及常用命令...

    java使用freemarker模板技术导出word

    例如,一个简单的 FreeMarker 模板可能如下所示: ```html &lt;!DOCTYPE html&gt; &lt;title&gt;Generated Document ${title} ${content} ``` 在这个例子中,`${title}` 和 `${content}` 将分别被 Java 中对应的数据...

Global site tag (gtag.js) - Google Analytics