6. 生成实体类
在项目名字上,点鼠标右键,选 “新建”,“通过数据库生成实体类”
在数据源项,选“新建数据源”
创建新的数据源时,输入 JNDI 名称:users (当然也可以给其他名字),数据库连接则选刚才我们新建的数据库 USERS.
现在,数据源和表都选好了,点一下表名 USER, 点“添加”
输入一个包名,例如 entity,然后点“创建持久性单元”
持久性单元名称用自动给出的即可,持久性提供器则选“OpenJPA”
注:前面设置OpenJPA 的 jar 为库,并在项目添加了这个库,这里才可选OpenJPA。
点“创建”,即可
现在,实体类 Users.java 就会自动生成。这个文件不需要做任何改动。
在项目的“配置文件”项下,可以见到自动生成的 persistence.xml,点一下这个文件,就会打开。去除已勾选的“在 ???模块中包含所有实体类”,然后点列出的实体类,点“添加类”。保存。
上图看到的“设计”概要,如果点一下“XML”,就是这样的:
7. 建立 访问数据库的 控制类
点项目名称,“新建”,“Java 类”
给个名字把,例如 Controller, 给个包名,例如 test
输入以下代码:
package test;
import java.util.ArrayList;
import java.util.List;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;
import org.zkoss.zul.Window;
public class Controller extends Window {
List users = new ArrayList();
public Controller() {
EntityManagerFactory emf;
emf = Persistence.createEntityManagerFactory("ZKJPA2PU");
EntityManager em = emf.createEntityManager();
javax.persistence.Query q = em.createQuery("select u from Users as u");
users = q.getResultList();
em.close();
}
public List getUsers() {
return users;
}
}
需要提示的是这一行:
emf = Persistence.createEntityManagerFactory("ZKJPA2PU");
这里使用了持久性单元的名字“ZKJPA2PU”,是从 persistence.xml 来的。如果在 persistence.xml 是用其他的名字,这里就需要相应修改。
8. 使用 ZK 缺省的 web.xml
从 zkoss.org 的文档,找到 web.xml 样板,见这里:
http://docs.zkoss.org/wiki/Developer_reference_Appendix_A._WEB-INF/web.xml_Sample_of_web.xml
把sample 内容复制下来。
点项目,“web页”,“WEB-INF”,点 “web.xml”,把原来的内容全部删除,贴上 zk 的 web.xml 样本内容,不需要做其他修改,保存即可。
9. 建立 index.zul
点项目,“新建”,“空文件”,给出文件名:index.zul,存放于 web 目录下
注:如果在这个目录下有 index.jsp 文件,要把它删除!
输入以下代码:
<?xml version="1.0" encoding="UTF-8" ?>
<?page id="indexZUL" title="Sample ZK with JPA + Derby" cacheable="false"
language="xul/html" zscriptLanguage="Java" contentType="text/html;charset=UTF-8"?>
<?init class="org.zkoss.zkplus.databind.AnnotateDataBinderInit"?>
<zk xmlns="http://www.zkoss.org/2005/zul"
xmlns:h="http://www.w3.org/1999/xhtml"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.zkoss.org/2005/zul http://www.zkoss.org/2005/zul/zul.xsd">
<window id="win" title="Sample ZK with JPA + Derby " border="normal" width="97%" height="95%"
mode="overlapped" position="center" use="test.Controller">
<listbox id="lb" width="800" height="300" >
<listhead sizable="true">
<listheader label="Name 姓名" sort="auto" width="150px"/>
<listheader label="LoginID 登录名" width="120px" />
<listheader label="Password 密码" width="120px" />
<listheader label="Age 年龄" sort="auto" width="100px"/>
</listhead>
<listitem forEach="${win.users}" value="${each}">
<listcell label="${each.name}"/>
<listcell label="${each.loginid}"/>
<listcell label="${each.password}"/>
<listcell label="${each.age}"/>
</listitem>
</listbox>
</window>
</zk>
保存。这里,Window 引用 test.Controller 就是我们建立的访问数据库的类,从这个类返回数据库记录为List,然后在zk 的listbox 显示。
10. 运行
NetBeans 点 运行,即可在新开的页面显示数据库的记录。
更多使用JPA对数据库记录的操作,可以学习这篇:
在Java SE环境下使用JPA1.0(Java EE 5.0 中的主要组成部分)
http://blog.csdn.net/kamhung/archive/2006/08/14/1064380.aspx
:-

- 大小: 38.4 KB

- 大小: 29.5 KB

- 大小: 30.2 KB

- 大小: 32.4 KB

- 大小: 47.9 KB

- 大小: 27.7 KB

- 大小: 23.2 KB

- 大小: 47 KB

- 大小: 58.1 KB

- 大小: 55.4 KB

- 大小: 23.6 KB

- 大小: 38.3 KB

- 大小: 54.2 KB

- 大小: 65.8 KB

- 大小: 38.8 KB

- 大小: 34.8 KB

- 大小: 76.2 KB
分享到:
相关推荐
本系统作为vue2初学者的入门系统,通过开发经典的《幼儿园幼儿信息管理系统》模拟项目,使vue2的初学者快速掌握从无到有的搭建一套vue3+element-plus前端+spring boot后端+mysql数据库的前后端分离的现代主流项目...
本系统作为vue3初学者的入门系统,通过开发经典的《学籍管理系统》模拟项目,使vue2的初学者快速掌握从无到有的搭建一套vue3+element-plus前端+spring boot后端+mysql数据库的前后端分离的现代主流项目架构。...
Java本科毕业设计-Springboot+Spring Data JPA 仓库管理系统,也可做期末大作业,课程设计。Java本科毕业设计-Springboot+Spring Data JPA 仓库管理系统,也可做期末大作业,课程设计。Java本科毕业设计-Springboot+...
本系统作为vue3初学者的入门系统,通过开发经典的《图书管理系统》模拟项目,使vue3的初学者快速掌握从无到有的搭建一套vue3+element-plus前端+spring boot后端+mysql数据库的前后端分离的现代主流项目架构。...
基于SpringBoot+SpringBoot Data Jpa+Mysql的CMS内容管理系统,以前实习那会儿构思的项目,大多功能已完成,当时约定给朋友开发的,但是那会儿我公司又加班忙的要死,后面就没开发完,那会儿属于半成品,现在基本...
毕设项目-基于springboot+jpa实现java后台api接口点餐系统源码.zip毕设项目-基于springboot+jpa实现java后台api接口点餐系统源码.zip毕设项目-基于springboot+jpa实现java后台api接口点餐系统源码.zip毕设项目-基于...
2. **配置文件**:application.properties或application.yml,用于配置Spring Boot、JPA和Shiro的相关参数。 3. **Shiro配置**:定义安全规则,如Realm(认证和授权的实现)、过滤器链等。 4. **JPA实体类**:映射到...
毕设项目-基于springboot+jpa+Erupt框架开发的综合签到打卡系统源码(支持人脸识别).zip毕设项目-基于springboot+jpa+Erupt框架开发的综合签到打卡系统源码(支持人脸识别).zip毕设项目-基于springboot+jpa+Erupt框架...
springboot + spring data jpa + layui 数据库文件(可选) 链接:https://pan.baidu.com/s/1aLSSLfGBL1hhityifeyh6A 提取码:4zpr 依赖包文件(可选) maven搭建 链接:...
JPA(Java Persistence API)是Java平台上的ORM(对象关系映射)标准,它允许开发者用Java对象来操作数据库记录,而无需关心底层SQL语句。Spring Data JPA是Spring对JPA的扩展,提供了更高级别的抽象,如自动化的...
【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、电子信息等专业的课程设计、...基于LayUI+Spring Boot+MySQL+JPA+Shiro的科研信息管理系统源码+项目说明+数据库.zip
2. **SpringJPA**: SpringJPA是Spring框架的一部分,它为Java Persistence API (JPA) 提供了一个简单的抽象层。JPA允许开发者以面向对象的方式处理数据库操作,减少了对SQL的直接依赖。在本系统中,SpringJPA被...
2. **Repository接口**:Spring Data JPA允许我们创建一个接口,继承自`JpaRepository`或`CrudRepository`,通过简单的声明方法就可以实现对数据库的CRUD操作。例如,`UserRepository`可能会包含`findAll()`, `save...
有关JSF、EJB、JPA访问数据库的方法。
轻量级的Guice2.0代替了Spring,速度更快,项目体积更小,Hibernate3.2与JPA的结合使用代替了传统的配置文件,使Hibernate的开发更简单,本项目基本上是零配置开发,由于我只能上传小于15M的文件,故JAR被我删除了,...
基于SpringBoot+Thymeleaf+JPA的博客系统 基于SpringBoot+Thymeleaf+JPA的博客系统 基于SpringBoot+Thymeleaf+JPA的博客系统 基于SpringBoot+Thymeleaf+JPA的博客系统 基于SpringBoot+Thymeleaf+JPA的博客系统 基于...
当EJB需要操作数据库时,可以通过JPA的API进行,如创建新的拍卖记录,更新最高价,查询用户信息等。 4. **数据库**:存储拍卖系统的所有数据,包括拍卖品详情、用户信息、出价记录等,通过JPA的映射与Java对象进行...
2、该资源包括项目的全部源码,下载可以直接使用! 3、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末大作业和毕设项目,作为参考资料学习借鉴。 4、本资源作为“参考资料”如果需要实现其他功能,...
在现代Java Web开发中,"Maven整合Spring+SpringMVC+Hibernate+SpringDataJPA"是一个常见的架构组合,被广泛应用于构建企业级应用程序。这个组合通常被称为"SSM",其中"M"代表Maven,"S"代表Spring,包括Spring核心...
总的来说,"hibernate-annotation3.4.0 + hibernate-distribution3.3.2 + slf4j-1.5.8.rar"的组合,为开发者提供了高效、灵活的数据库操作工具和日志记录机制,是构建企业级Java应用的有力支撑。在具体项目中,还...