【发布时间】:2014-05-26 11:07:59
【问题描述】:
我正在寻找一种为 jsp 页面创建模板的方法,该模板具有与 Java 中的泛型类类似的行为?
我现在拥有的:在我的视图文件夹(WEB-INF/view/jsp)中,我有一个目录列表,其中包含相同的四个文件,并接收他的功能名称(例如,新项目、更改项目、删除项目,列表)。
在每个组中,jsp 页面保存您从我的项目中的一个特定实体类中读取的数据。
例如,对于我的道课程,我有类似的东西:
泛型类
public class Dao<E> {
private final Class<E> entity;
@Autowired
protected SessionFactory sessionFactory;
protected Session getCurrentSession(){
return sessionFactory.getCurrentSession();
}
public Dao(Class<E> classe) {
this.entity = classe;
}
public boolean remove(E transientInstance) {
...
}
...
}
这样,每个 Dao 类都有一个类似这样的结构:
@Repository
public class FornecedorDao extends Dao<Fornecedor> {
public FornecedorDao() {
super(Fornecedor.class);
}
}
有什么可以完成类似于 jsp 页面的内容吗? (我更喜欢不需要向我的项目添加其他框架的解决方案,除了 Spring)。
更新
更好地解释每个文件夹中的每一页:
new_item.jsp -> 这只是我将数据提交到服务器的表单。表单的每个字段都是我的 Entity 类的属性。
change_item.jsp -> 与 new_item.jsp 相同,加上一个带有类的属性 id(主键)的隐藏字段。
remove_item.jsp -> 有一个只有一个字段的表单:一个隐藏的字段,其中包含要删除的元素的 id。
list.jsp -> 接收项目列表并生成一个表,其中每一列都是我的实体类的属性。
我希望完成的,例如,它是这样的:
在模板中,我将有表单或表格的 html 代码。此页面没有样式:jquery 代码读取它们,去除标题和正文内容,并将此数据添加到我的 jsp 页面dashboard.jsp 中的 div 中。在每个页面中,我喜欢只告诉我将使用的实体类的名称并赋予属性,并基于模板创建要传递到浏览器的页面。
【问题讨论】:
-
代码sn-p的目的是什么?是通过创建基类来解释您的意思还是与问题特别相关?
-
您希望共享 JSP 的哪一部分以及您希望更改什么?所有页面是否具有相同的外观和感觉,但它们在哪个“对象”类型上工作? (例如,一个编辑汽车列表,另一个编辑动物列表)
-
我添加了更多关于我想要的规格的信息。包含代码只是为了显示我对模板和每个派生页面的期望。