STS的maven 文本项目添加和修改回显时生成静态页面

下面是我个人的一个小总结,有看不明白的地方请大家记得留言
<修改回显>
一.首先复制修改页面 达到以下格式 ck.jsp

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
<script type="text/javascript">
</script>
</head>
<body>
<form>
  ID:<input type="text" name="tid" readonly="readonly" value="${tree.tid }"><br>
    名称:<input type="text" name="tree_name" value="${tree.tree_name }"><br>
    数量:<input type="text" name="buy_num" value="${tree.buy_num}"><br>
    单价:<input type="text" name="unit_price" value="${tree.unit_price }"><br>
    种类:<input type="text" name="kname" value="${tree.kname }">
</form>
</body>
</html>

二.在webapp下创建静态页面文件夹page,模板templates,将ck.jsp复制到文件夹templates下,更改后缀为ck.ftl
三.之前写的修改回显查询sql语句没有查下拉框kname,因为是ajax动态获取的,所以需要修改捞数据的查询语句
利用联查----

 <select id="getTree" resultType="com.my.bean.Tree">
   select t.*,k.kname from tree t left join kind k on t.kid=k.kid where t.tid=#{tid}
 </select>

进入list页面–>添加按钮

<input type="button" value="生成静态页面" onclick="jt(${tree.tid})">

function jt(tid){
 $.post(
"jt",
  {tid:tid},
  function(obj){
  if(obj){
    alert("生成静态页面成功");
    location.href="list.do";
   }else{
    alert("生成静态页面失败");
   }
   },
  "json"
  );
  }
  

进入controller页面

@SuppressWarnings("resource")
 @RequestMapping("/jt")
 @ResponseBody
 public boolean jt(int tid,HttpServletRequest request) throws IOException, TemplateException {
  //生成静态页面
  Configuration config = new Configuration(Configuration.VERSION_2_3_27);
  //指定目录  path 就是webapp路径
  String path = request.getSession().getServletContext().getRealPath("/");
  config.setDirectoryForTemplateLoading(new File(path+"/templates"));
  //数据模型
  Map map = new HashMap();
  map.put("tree", ts.getTree(tid));
  //获取模板
  Template t1 = config.getTemplate("ck.ftl");
  //指定输出流
  FileWriter out = new FileWriter(path+"/page/"+tid+".html");
  //执行
  t1.process(map, out);
  out.close();
  return true;
  }

进入list页面 添加按钮

<input type="button" value="查看静态页面" onclick="ck(${tree.tid})">
//直接跳转静态页面
function ck(tid){
 location.href="page/"+tid+".html";
}

<添加操作>
进入list页面 添加按钮

<input type="button" value="查看添加时静态页面" onclick="addck('${u.name}')">//英文和汉字传参的时候要加单引号
function addck(name){
 location.href="page/"+name+".html";
}

templates中添加add.ftl

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<marquee>添加页面</marquee>
 <form>
 <table>
 <tr><td width="100">用户名:</td><td width="200"><input type="text" name="uname" value="${users.uname }"></td></tr><br>
  <tr><td width="100">姓名:</td><td width="200"><input type="text" name="name" value="${users.name }"></td></tr><br>
  <tr><td width="100">身份证号:</td><td width="200"><input type="text" name="identity" value="${users.identity }"></td></tr><br>
  <tr><td width="100">是否有效:</td><td width="200"><input type="text" name="enabled" value="${users.enabled }"></td></tr><br>
  <tr><td width="100">性别:</td><td width="200"><input type="text" name="sex" value="${userex.sex }"></td></tr><br>
  <tr><td width="100">出声年月:</td><td width="200"><input type="text" name="brith" onclick="WdatePicker()" value="${userex.brith }"></td></tr><br>
  <tr><td width="100">邮箱:</td><td width="200"><input type="text" name="email" value="${userex.email }"></td></tr><br>
  <tr><td width="100">手机号:</td><td width="200"><input type="text" name="phone" value="${userex.phone }"></td></tr><br>
   </table>
 </form>

进入controller的添加分支

@SuppressWarnings("resource")
 @RequestMapping("/add")
 @ResponseBody
 public boolean add(UserAll u,HttpServletRequest request) throws IOException, TemplateException {
 Users users = u.getiUsers();
  //生成静态页面
  Configuration config = new Configuration(Configuration.VERSION_2_3_27);
  //指定目录
  String path = request.getSession().getServletContext().getRealPath("/");
  config.setDirectoryForTemplateLoading(new File(path+"/templates"));
  //数据模型
  Map map = new HashMap();
  int i =us.addusers(users);
  Integer _uid = users.getUid();
  UserEx userex = u.getiUserEx(_uid);
  int j = us.adduserEx(userex);
  map.put("users",us.getUsers(users.getUid()));
  map.put("userex",us.getUserEx(userex.getUid()));
  //获取模板
  Template t1 = config.getTemplate("add.ftl");
  //指定输出流
  FileWriter out = new FileWriter(path+"/page/"+u.getName()+".html");
  //执行
  t1.process(map, out);
  out.close();
  return true;
  }
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值