Java Web程序设计教程习题答案 作者 范立锋 林果园 第7章习题答案

上传人:w****i 文档编号:94401807 上传时间:2019-08-06 格式:DOC 页数:8 大小:422.50KB
返回 下载 相关 举报
Java Web程序设计教程习题答案 作者 范立锋 林果园 第7章习题答案_第1页
第1页 / 共8页
Java Web程序设计教程习题答案 作者 范立锋 林果园 第7章习题答案_第2页
第2页 / 共8页
Java Web程序设计教程习题答案 作者 范立锋 林果园 第7章习题答案_第3页
第3页 / 共8页
Java Web程序设计教程习题答案 作者 范立锋 林果园 第7章习题答案_第4页
第4页 / 共8页
Java Web程序设计教程习题答案 作者 范立锋 林果园 第7章习题答案_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《Java Web程序设计教程习题答案 作者 范立锋 林果园 第7章习题答案》由会员分享,可在线阅读,更多相关《Java Web程序设计教程习题答案 作者 范立锋 林果园 第7章习题答案(8页珍藏版)》请在金锄头文库上搜索。

1、第7章 Struts 2中应用模板语言 习题答案第7章 Struts 2中应用模板语言习题答案1Velocity中属性引用的赋值方式都有哪些?。答案:Velocity中属性引用的赋值方式有两种:l 使用Hashtable对象赋值。l 使用方法赋值。2简述几种Velocity的指令及其用法。答案:下面是几种常见的Velocity指令:l set指令:给引用赋值。l 使if/elseif/else指令:类似于Java语言中的ifelseifelse指令,可进行条件控制。l set指令:给引用赋值。l foreach指令:进行遍历循环。l macro指令:用来定义宏。3简述FreeMarker的宏指

2、令及其用法?答案:在FreeMarker中,宏是一个用户自定义指令,定义完宏后就可以在模板中用来使用宏。宏是使用macro指令来定义的。例如使用下面的代码定义宏:书的名字:$bookname使用下面的代码在模板中使用宏:书的名字:$bookname4在FreeMarker中如何格式化数字?答案:在FreeMarker中可使用#expre;format这种形式格式化数字,其中的format使用mN或MN表示,mN代表小数部分最小N位,MN代表小数部分最大N位。5使用Velocity模板在控制台输出一本图书的相关信息。实例内容:在控制台输出图书的id、图书的名称、图书的作者、图书的价格、图书的出版

3、社、图书的 出版日期,要求使用方法赋值的方式给各个属性赋值。答案:(1)创建一个Java工程,名称为booksys,导入工程所需的jar文件velocity-dep-1.5.jar。(2)在工程下创建模板文件showBookInfo.vm,该模板文件可输出图书的相关信息,模板文件的代码如下:图书id: $book.bookid图书名称:$book.bookname图书作者:$book.bookauthor图书价格:$book.bookprice出版社: $book.bookcencern出版日期:$book.bookdate(3)在工程的sunyang包下创建一个类Book.java,该类为一

4、个JavaBean,代表图书的相关信息。类Book的代码如下:public class Book private int bookid; /id号private String bookname; /书名private String bookauthor; /作者private double bookprice; /价格private String bookcencern; /出版社private String bookdate; /出版日期public int getBookid() return bookid;public void setBookid(int bookid) this.bo

5、okid = bookid;public String getBookname() return bookname;public void setBookname(String bookname) this.bookname = bookname;public String getBookauthor() return bookauthor;public void setBookauthor(String bookauthor) this.bookauthor = bookauthor;public double getBookprice() return bookprice;public v

6、oid setBookprice(double bookprice) this.bookprice = bookprice;public String getBookcencern() return bookcencern;public void setBookcencern(String bookcencern) this.bookcencern = bookcencern;public String getBookdate() return bookdate;public void setBookdate(String bookdate) this.bookdate = bookdate;

7、(4)在工程的sunyang包下创建一个类BookVelocity.java,该类用来给模板提供值。类BookVelocity的代码如下:import java.io.StringWriter;import org.apache.velocity.VelocityContext;import org.apache.velocity.app.Velocity;public class BookVelocitypublic static void main(String args) try Velocity.init();/初始化Velocity引擎 catch (Exception e) e.p

8、rintStackTrace();VelocityContext context = new VelocityContext();/ 初始化Velocity上下文Book book=new Book();/给Book属性赋值 book.setBookid(200803);book.setBookname(JSP教程);book.setBookauthor(sunyang);book.setBookprice(53.2);book.setBookcencern(XX出版社);book.setBookdate(2008-02-03);context.put(book, book);/将Book对象

9、放入Velocity上下文中StringWriter writer = new StringWriter();try /把模板和上下文结合起来Velocity.mergeTemplate(showBookInfo.vm, GBk, context, writer); catch (Exception e) e.printStackTrace();System.out.println(writer.toString();/控制台上输出(4)运行程序,控制台上的输出结果如下图所示:6使用FreeMarker编写一个用户登录实例。实例内容:当用户在登录页面中没有输入任何信息就登录时,提示用户需要输入

10、用户名和密码方可登录,若用户输入错误的用户名或密码,提示用户输入的用户名或密码错误,若用户输入正确的用户名和密码,登录成功,页面跳转到欢迎用户登录页面。(1)创建一个Web工程,名称为login,导入工程所需的jar文件,(2)在WebRoot下新建一个文件夹freemarker,在freemarker创建模板文件login.ftl、welcome.ftl和error.ftl,其中login.ftl为用户登录页面,welcome.ftl为欢迎页面,error.ftl为登录失败页面。login.ftl的代码如下: 登录页面用户登录用户名密码welcome.ftl的代码如下: 欢迎页面欢迎你:$u

11、sernameerror.ftl的代码如下: 失败页面$message(3)在工程的sunyang包下创建一个Servlet类LoginFreeMarker.java,该Servlet类用来进行用户登录判断,若用户登录成功,页面则转向欢迎页面,否则转向登录失败页面,类 LoginFreeMarker的代码如下:import java.io.IOException;import java.io.Writer;import java.util.HashMap;import java.util.Map;import javax.servlet.ServletException;import java

12、x.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import freemarker.template.Configuration;import freemarker.template.Template;import freemarker.template.TemplateException;public class LoginFreeMarker extends HttpServlet private Configuration configuration;/初始化FreeMarker配置 public void init() configuration = new Configuration();/ 创建Configuration实例configuration.setServletContextForTemplateLoading(getServletContext(),freemarker);/ 指定模板的位置在freemarker目录下protected void doGet(HttpServlet

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号