一步一步实现Spring4 + Hibernate4 + Freemarker2 的注解驱动开发(四.页面及小结)

本文详细介绍了如何利用Freemarker2.3在网站管理系统中实现站点的创建、管理和编辑功能。包括页面设计、数据展示、表单填写以及数据库操作的关键步骤,以及在开发过程中遇到并解决的技术问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

WEB页面写了两个简单的应用了Freemarker 2.3的HTML片段,可以完成该功能的显示

site.html部分代码

<h5>
	<a href="/admin/site/add">创建站点</a>
</h5>

<div class="table_box">
	<table class="list">
		<tbody>
			<tr>
				<th width="4%">id</th>
				<th width="35%">名称</th>
				<th width="12%">操作</th>
			</tr>

			<#list sites as site>
			<tr>
				<td style="text-align: left;">${site.id}</td>
				<td style="text-align: left;">${site.name}</td>
				<td style="text-align: left;">  <a
					href="/admin/site/delete/${site.id}">删除</a>   <a
					href="/admin/site/edit/${site.id}">修改</a>
				</td>
			</tr>
			</#list>
		</tbody>
	</table>
</div>

add.html 代码

<h5>站点管理 ---> 创建站点</h5>

<div class="form_box">
	<form name="site" action="/admin/site/save" method="post">
		<#include "/admin/site/_form.html" />
	</form>
</div>

_form.html代码

<fieldset class="solid">
	<input type="hidden" name="id" value="<#if site??>${(site.id)!}<#else>99</#if>" />
	 
	<div>
		<label>名称</label>
		<input type="text" name="name" value="${(site.name)!}" />${nameMsg!}
	</div>
	<div>
		<label>URL</label>
		<input type="text" name="url" value="${(site.url)!}" />${urlMsg!}
	</div>
	<div>
		<label>说明</label>
		<textarea name="comment" cols="50" rows="5">${(site.comment)!}</textarea>${contentMsg!}
	</div>
	<div>
		<label> </label>
		<input value="提交" type="submit">
	</div>
</fieldset>



以下为项目中web页面的文件结构



这个应用需要lib目录如下


小结,说一些写这个简单流程过程中遇到的一些问题

1. Hibernate 执行数据库操作时,currentSession为null, 原因两个,一是hibernate的配置需要放在web.xml的

context-param中配置,二是Service的方法必须有事物描述

2.页面中应用静态资源找不到的问题,通过将image,js,css等资源的目录配置mvc:resources解决

3.自增主键,新增报类型不匹配问题,这个问题实际上是页面向Controller传递数据时,由于id为空,被当做字符串“”,通过在新增页面中给id赋个任意整数值可以解决,该值不会被作为主键插入数据库中

4.页面路径问题,页面中的根路径其实是指向配置中指定的freemarker模板根目录

5.实体类中enum字段的处理,通过对该字段增加注解@Enumerated(EnumType.STRING)解决

都是些小问题。

在搭建这个示例项目过程中,参考查阅了一些网上资料。以上是自己做的整个流程的一个记录。

《完》





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值