采用 Spring + Hibernate + JSTL 开发web项目。
一个表 对应一个 PO,一个Validator,一个VO 和 一个表单(其实是两个,一个新增,一个编辑)
这些POs, VOs, Validators, Forms,全都依赖于表的数据
除了表的数据不一致外,其框架与操作惊人的一致
考虑,基于一个表,是否可以动态生成这些呢?
比如,一个客户表单:
其数据库建表SQL如下:
create table customer (id int identity not null, address varchar(100) null, age int not null, answer varchar(50) null, email varchar(50) null, gender varchar(8) null, intOptional int not null, password varchar(50) null, phone varchar(50) null, question varchar(100) null, realname varchar(20) null, registerTime datetime null, strOptional varchar(100) null, username varchar(50) null, status int not null, score int not null, sd int not null, role int not null, primary key (id));
对应的PO如下:
package net.kofsky.nmis.po;
import java.io.Serializable;
import java.sql.Timestamp;
/** *//**
* 用户信息
* @author kofsky
*
* @hibernate.class table="customer"
*
*/
public class Customer implements Serializable ...{
private static final long serialVersionUID = 1310607107787515532L;
/** *//**
* ID
*/
private int id;
/** *//**
* 用户登录姓名
*/
private String username;
/** *//**
* 用户真实姓名
*/
private String realname;
/** *//**
* 密码
*/
private String password;
/** *//**
* 性别
*/
private String gender;
/** *//**
* 年龄
*/
private int age;
/** *//**
* 联系电话
*/
private String phone;
/** *//**
* 联系地址
*/
private String address;
/** *//**
* email
*/
private String email;
/** *//**
* 密码提示问题
*/
private String question;
/** *//**
* 密码提示问题的答案
*/
private String answer;
/** *//**
* 用户注册时间
*/
private Timestamp registerTime;
/** *//**
* 用户的当前状态
*/
private int status;
/** *//**
* 用户积分
*/
private int score;
/** *//**
* 可选
*/
private String strOptional;
/** *//**
* 可选
*/
private int intOptional;
/** *//**
* 序列号:备用ID
*/
private int sd;
/** *//**
* 用户的角色
*/
private int role;
/** *//**
* @hibernate.id column="id" type="java.lang.Integer"
* generator-class="native"
*/
public int getId() ...{
return id;
}
public void setId(int id) ...{
this.id = id;
}
/** *//**
* @hibernate.property column="address" type="java.lang.String" length="100"
*/
public String getAddress() ...{
return address;
}
public void setAddress(String address) ...{
this.address = address;
}
/** *//**
* @hibernate.property column="age" type="java.lang.Integer" not-null="true"
*/
public int getAge() ...{
return age;
}
public void setAge(int age) ...{
this.age = age;
}
/** *//**
* @hibernate.property column="answer" type="java.lang.String" length="50"
*/
public String getAnswer() ...{
return answer;
}
public void setAnswer(String answer) ...{
this.answer = answer;
}
分享到:
相关推荐
Java Web前端开发技术是构建现代Web应用程序的关键组成部分,它涉及到一系列技术和工具的综合应用,用于创建用户友好的、交互式的Web界面。以下是对调查问卷中提及的一些关键知识点的详细解释: 1. **HTML**: ...
SSH是Spring、Struts和Hibernate三个开源框架的缩写,它们是Java Web开发中的常用组件。Spring框架负责管理应用程序的业务逻辑和依赖注入,提供事务管理等功能,增强了系统的灵活性和可测试性。Struts则是一个MVC...
首先,**Java Web**是Java技术在Web开发中的应用,包括Servlet、JSP(JavaServer Pages)、JSTL(JavaServer Pages Standard Tag Library)等组件。在这个项目中,Servlet可能是用于处理HTTP请求,JSP则用于生成动态...
2. **Servlet和JSP**:Servlet是Java Web开发中的基础组件,负责处理HTTP请求并生成响应。JSP(JavaServer Pages)则是一种动态网页技术,允许开发者在HTML页面中嵌入Java代码,简化视图层的开发。 3. **MVC模式**...
在这个"Java-WebSocket完整代码包"中,我们很可能找到了一个用Java编写的WebSocket服务器端实现。 WebSocket API设计的目标是简化实时通信,使得开发者不再需要通过HTTP请求来频繁刷新数据,而是可以创建一个持久的...
通过Jsoup,我们可以获取网页的DOM结构,并进行渲染前的预处理,例如删除脚本和样式元素,因为这些在图片中是不需要的: ```java Document doc = Jsoup.parse(response.getEntity().getContent(), "UTF-8", url); ...
- JSP(JavaServer Pages):JSP是一种动态网页技术,允许在HTML中嵌入Java代码,简化网页的动态内容生成。 - JDBC(Java Database Connectivity):Java数据库连接,用于在Java程序中访问数据库的标准API。 - ...
在Web开发领域,数据库的交互是至关重要的环节,特别是在用户认证和授权方面。在这个"Web开发+MySQL"的例子中,我们将探讨如何利用Servlet、JSP(JavaServer Pages)以及DAO(Data Access Object)模式来实现一个...
在这个"java代码实现word转换为pdf"的项目中,我们可以利用Java的API和第三方库来完成这个任务。以下是关于这个主题的详细知识点: 1. **Apache POI**: Apache POI 是一个开源项目,专门用于处理Microsoft Office...
- **概念**:`package` 是 Java 用来组织类和接口的方式,类似于文件系统中的目录结构。 - **使用**:在一个 Java 文件的开头声明包名,例如 `package com.example;`。同一个包内的类可以通过简单的类名访问,不同包...
在这种情况下,`WEB-INF`和`META-INF`目录是Java Web应用的标准目录结构,它们分别存放Web应用的配置和元数据。`imagessplit`可能是一个用于存储或处理图像的目录或文件,具体含义可能需要根据项目上下文来理解。 ...
### MyEclipse开发手册之Java篇 #### 一、概览与目标读者 《MyEclipse开发手册之Java篇》是一本专为Java EE开发者设计的实用指南,它旨在帮助开发者掌握MyEclipse这一强大的集成开发环境(IDE),并利用其进行高效...
随着互联网的发展,Java 成为了跨平台开发的主要工具之一,广泛应用于企业级应用、移动应用(特别是 Android 应用)、Web 开发等多个领域。 #### 1.4 Android与Java语言有什么关系? Android 操作系统主要使用 ...
Java能够很好地与现有技术栈进行整合,如在Web开发中,Java可以与Servlet、JSP和各种Web框架(例如Spring和Struts)相结合,构建动态的网站和应用。此外,Java还提供了一系列的工具和库来支持开发工作,比如Applet...
- **创建Java Web项目**:使用MyEclipse创建项目,配置项目的结构,包括源代码、资源文件和Web配置文件。 5. **实践与理论结合** - **实践活动**:学生需要实际操作JDK和Tomcat的安装配置,编写简单的JSP和...
在Java开发环境中,Eclipse是一个广泛使用的集成开发环境(IDE),尤其适合于Web服务的开发。本教程将详细讲解如何在Eclipse下使用Web服务,主要涉及的技术包括Java、Web服务(Webservice)、XFire框架以及Eclipse IDE...
标题提到的"B/S结构调用客户端默认打印机直接打印"是B/S架构中的一个功能需求,它涉及到了Web应用如何与用户的本地硬件资源——打印机进行通信。 当用户在客户端(通常是Web浏览器)上打开一个网页并点击“打印”...
这些问题覆盖了Java的基础知识、数据库、Web技术以及流行的SSH框架,并且包含了部分算法问题。这本书对于准备参加Java相关职位面试的读者来说是一本不可多得的复习资料。 该书的内容涵盖了Java编程的多个方面,比如...