JPA 学习篇(二)搭建最简单的应用环境
来源:互联网 发布:linux ftp 指定ip登录 编辑:程序博客网 时间:2024/05/20 21:21
单纯搭建一个JPA的项目很简单,下面笔者就搭建一个JPA 的javaSE项目。
【1. 新建一个JavaSE 项目】
【2. 引入项目相关jar 包】
【3. 创建persistence.xml 文件】JPA 规范要求在类路径META-INF 目录下放置persistence.xml 文件,文件名称是固定的
<persistence xmlns="http://java.sun.com/xml/ns/persistence"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://java.sun.com/xml/ns/persistence http://java.sun.com/xml/ns/persistence/persistence_2_0.xsd"version="2.0"><!-- 定义持久化单元, 指定名称:name, 并指定事务类型:transaction-type , 实体bean 的集合 事务类型:RESOURCE_LOCAL 本地事务 JTA: 全局事务,常用于应用服务器JBOSS,weblogic--><persistence-unit name="myJPA" transaction-type="RESOURCE_LOCAL"><!-- 指定javax.persistence.persistenceProvider 实现类 --> <provider>org.hibernate.ejb.HibernatePersistence</provider><properties><!-- 数据库驱动名 --><property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/><!-- 指定连接数据库的url --><property name="hibernate.connection.url" value="jdbc:mysql://localhost:3306/testjpa"/><!-- 指定连接数据库的方言 --><property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect" /><!-- 设置是否根据要求自动创建表 --><property name="hibernate.hbm2ddl.auto" value="update"/><!-- 指定用户名 和 密码 --><property name="hibernate.connection.username" value="root"/><property name="hibernate.connection.password" value="root"/><!-- 是否格式化输出查询语句--><property name="hibernate.show_sql" value="true" /> <property name="hibernate.format_sql" value="true"/></properties></persistence-unit></persistence>
【4. 创建log4j.xml 文件】 log4j.xml 文件必须是在类加载根路径下
<?xml version="1.0" encoding="UTF-8" ?><!DOCTYPE log4j:configuration SYSTEM "log4j.dtd"><log4j:configuration xmlns:log4j="http://jakarta.apache.org/log4j/"><appender name="STDOUT" class="org.apache.log4j.ConsoleAppender"><layout class="org.apache.log4j.PatternLayout"><param name="ConversionPattern" value="%-5p %d{MM-dd HH:mm:ss,SSS} %m (%F:%L) \n" /></layout></appender><logger name="java.sql"><level value="debug" /></logger><logger name="org.apache.ibatis"><level value="debug" /></logger><root><level value="debug" /><appender-ref ref="STDOUT" /></root></log4j:configuration>
【5.1 测试实体类:StudentEntity.java】
package org.zgf.jpa.entity;import javax.persistence.Column;import javax.persistence.Entity;import javax.persistence.GeneratedValue;import javax.persistence.GenerationType;import javax.persistence.Id;import javax.persistence.Table;@Entity@Table(name = "tb_student")public class StudentEntity {@Id@GeneratedValue(strategy = GenerationType.AUTO)@Column(name = "s_id")private Integer id;@Column(name = "s_name")private String name;@Column(name = "s_age")private int age;public StudentEntity() {}public StudentEntity(String name, int age) {this.name = name;this.age = age;}public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}@Overridepublic String toString() {return "StudentEntity [id=" + id + ", name=" + name + ", age=" + age + "]";}}
【5.2 测试类】
package org.zgf.jpa.entity;import javax.persistence.EntityManager;import javax.persistence.EntityManagerFactory;import javax.persistence.Persistence;public class TestStudentEntity {public static void main(String[] args) {StudentEntity student = new StudentEntity("zhangsan",20);//1. 创建EntityMangerFactory 工厂EntityManagerFactory entityManagerFactory = Persistence.createEntityManagerFactory("myJPA");;//2. 创建EntityManager 对象EntityManager entityManager = entityManagerFactory.createEntityManager();//3. 获取事务,并开启事务entityManager.getTransaction().begin();//4. 进行持久化操作entityManager.persist(student);//5. 提交事务entityManager.getTransaction().commit();//6. 关闭entityManager对象 和 entityManagerFactory 对象entityManager.close();entityManagerFactory.close();}}
【项目包结构图】
【注意】
1. persistence.xml 必须在META-INF 目录下
2. log4j.xml 必须在类加载根目录下
3. JPA 可以自动创建表,但是不能自动创建数据库
4. 注解使用的包都是 javax.persitence.*;包下的,千万别导错包 。
5. 源代码下载:D_JPA_01_环境搭建.zip
0 0
- JPA 学习篇(二)搭建最简单的应用环境
- OSG学习笔记一:搭建最简单的环境
- 搭建一个最简单的webscoket协议学习环境
- JPA 简单应用 学习
- JPA 简单应用 学习 .
- JPA环境的搭建
- JPA学习记录二(搭建一个JPA+hibernate实例)
- 最简单的AspectJ实验环境搭建
- 最简单的PHP开发环境搭建
- 最简单的android NDK环境搭建
- 最简单的安卓环境搭建
- 搭建最简单的jQuery环境
- 最简单的混合APP开发框架——搭建你的第一个Ionic应用(二)
- Spring security oauth2最简单入门环境搭建--二、干货
- Spring security oauth2最简单入门环境搭建--二、干货
- Spring security oauth2最简单入门环境搭建--二、干货
- Spring security oauth2最简单入门环境搭建--二、干货
- iBatis环境搭建示例:创建一个最简单的iBatis应用
- 静态内部类和非静态内部类的区别
- IIC总线冲突??SEN只要置1,立即出现总线冲突!??
- Android内存溢出的相关问题
- Permutations
- flex TitleWindow 仿QQ窗口鼠标移动效果
- JPA 学习篇(二)搭建最简单的应用环境
- 网站写异常日志
- 使用Git上传本地项目到http://git.oschina.net
- jquery 图片延迟加载的实现
- Spring缓存注解@Cache使用
- notifition播放自定义声音
- .NET连接SQL Server的问题处理
- ajax中get与post请求的区别
- mac下,vagrant桥接,选择“en0: 以太网”无法启动虚拟机解决方案